@charset "UTF-8";
/*
 * Theme Name: Ongakunomori
*/
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html {
  font-size: 16px;
  line-height: 2;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, Meiryo, sans-serif;
  color: #603813;
}
img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
a {
  color: inherit;
}
a:hover {
  text-decoration: underline;
}
.container {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.container.container--header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.container.container--footer {
  position: relative;
  top: -50px;
}
.container.container--mainMessage {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin: 40px auto;
  z-index: 2;
}
.container.container--section1 {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  margin-bottom: 40px;
}
.container.container--calendar {
  position: relative;
}
.container.container--news {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.container.container--section4 {
  background: rgba(255, 255, 255, 0.7);
  padding: 50px 25px;
}
.container.container--relative {
  position: relative;
}
.container.container--full {
  max-width: 100%;
}
.header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: solid 1px #d4dcd6;
  z-index: 999;
  background: #fff;
}
.header:before {
  content: "";
  display: block;
  width: 100%;
  height: 6px;
  background: #d4dcd6;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.75s ease;
}
.header__utility {
  margin: 0;
}
.header__utility > ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
}
.header__utility > ul > li {
  margin-left: 20px;
}
.header__utility > ul > li > a {
  display: block;
  text-decoration: none;
  color: #fff;
}
.header__utility > ul > li > a > img {
  display: block;
  max-height: 26px;
  transition: all 0.75s ease;
}
.header__contact {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 45px;
  width: 100%;
  line-height: 1;
  background: green;
  font-size: 1.125em;
  transition: all 0.75s ease;
}
.header__contact img {
  height: 1em;
  margin-right: 10px;
}
.header__logo {
  margin: 0;
  padding-bottom: 8px;
  width: 120px;
  transition: all 0.75s ease;
}
.header__logo * {
  display: block;
}
.header__logo a {
  width: fit-content;
}
.header__logo__image {
  height: 140px;
  width: 120px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  transition: all 0.75s ease;
  background-image: url("img/logo-header.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: contain;
}
.header__menu {
  width: calc(87% - 120px);
}
.header__menu > ul {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  list-style: none;
}
.header__menuItem {
  width: fit-content;
  line-height: 1;
  text-align: center;
  margin: 15px 0 0;
  padding-bottom: 16px;
  white-space: nowrap;
  font-size: 1.08em;
  font-weight: bolder;
  line-height: 1.2;
  transition: all 0.75s ease;
}
.header__menuItem a {
  display: block;
  text-decoration: none;
  color: inherit;
  position: relative;
}
.header__menuItem a:hover {
  text-decoration: none;
}
.header__menuItem svg {
  display: block;
  margin: 0 auto 10px;
}
.header__menuItem.header__menuItem--about .st0 {
  fill: #489d52;
}
.header__menuItem.header__menuItem--about .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--about a:hover {
  color: #489d52;
}
.header__menuItem.header__menuItem--about .header__childMenu {
  border-color: #489d52;
}
.header__menuItem.header__menuItem--info .st0 {
  fill: #aac757;
}
.header__menuItem.header__menuItem--info .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--info .st2 {
  fill: none;
  stroke: #aac757;
  stroke-width: 0.8987;
  stroke-miterlimit: 10;
}
.header__menuItem.header__menuItem--info .st3 {
  fill: none;
  stroke: #aac757;
  stroke-width: 1.2513;
  stroke-miterlimit: 10;
}
.header__menuItem.header__menuItem--info a:hover {
  color: #aac757;
}
.header__menuItem.header__menuItem--info .header__childMenu {
  border-color: #aac757;
}
.header__menuItem.header__menuItem--activity .st0 {
  fill: #7399bf;
}
.header__menuItem.header__menuItem--activity .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--activity a:hover {
  color: #7399bf;
}
.header__menuItem.header__menuItem--activity .header__childMenu {
  border-color: #7399bf;
}
.header__menuItem.header__menuItem--group .st0 {
  fill: #e38e40;
}
.header__menuItem.header__menuItem--group .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--group a:hover {
  color: #e38e40;
}
.header__menuItem.header__menuItem--group .header__childMenu {
  border-color: #e38e40;
}
.header__menuItem.header__menuItem--gallery .st0 {
  fill: #b2789a;
}
.header__menuItem.header__menuItem--gallery .st1 {
  opacity: 0.7;
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--gallery .st2 {
  opacity: 0.9;
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--gallery a:hover {
  color: #b2789a;
}
.header__menuItem.header__menuItem--gallery .header__childMenu {
  border-color: #b2789a;
}
.header__menuItem.header__menuItem--calendar .st0 {
  fill: #ce624a;
}
.header__menuItem.header__menuItem--calendar .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--calendar a:hover {
  color: #ce624a;
}
.header__menuItem.header__menuItem--calendar .header__childMenu {
  border-color: #ce624a;
}
.header__menuItem.header__menuItem--sales .st0 {
  fill: #d4dcd6;
}
.header__menuItem.header__menuItem--sales .st1 {
  fill: #FFFFFF;
}
.header__menuItem.header__menuItem--sales .st2 {
  fill: none;
  stroke: #d4dcd6;
  stroke-width: 2.6663;
  stroke-miterlimit: 10;
}
.header__menuItem.header__menuItem--sales .st3 {
  fill: none;
  stroke: #d4dcd6;
  stroke-width: 0.2497;
  stroke-miterlimit: 10;
}
.header__menuItem.header__menuItem--sales a:hover {
  color: #d4dcd6;
}
.header__menuItem.header__menuItem--sales .header__childMenu {
  border-color: #d4dcd6;
}
.header__menuItem.header__menuItem--hasChildren > a:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 3px;
  border-left: none;
  border-top: none;
}
@media all and (min-width: 481px) {
  .header__menuItem.header__menuItem--hasChildren:hover .header__childMenu {
    display: block;
  }
}
.header__childMenu {
  display: none;
}
@media screen and (min-width: 481px) {
  .header__childMenu {
    position: absolute;
    top: 100%;
    border-top-style: solid;
    border-top-width: 3px;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    padding: 0px 20px;
    background: #fff;
    border-bottom: solid 1px #eee;
  }
  .header__childMenu > ul {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    list-style: none;
    padding: 40px 0;
    max-width: 1000px;
    margin: 0 auto;
  }
  .header__childMenu > ul > li {
    position: relative;
    width: calc(25% - 30px);
    margin: 0 15px;
  }
  .header__childMenu__thumbnail {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 10px;
    margin-bottom: 10px;
  }
  .header__childMenu__title {
    text-align: left;
    white-space: normal;
    padding-left: 1em;
    text-indent: -1em;
  }
  .header__childMenu__title:before {
    display: inline-block;
    content: "";
    width: 14px;
    height: 14px;
    margin-right: 2px;
    background: url("img/header-childmenu-yajirushi.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
}
.header__mobileUtility {
  display: none;
}
button[name="toggleChildMenu"] {
  display: none;
}
button[name="mobileMenu"] {
  display: none;
}
.breadcrumbs {
  white-space: nowrap;
  overflow: hidden;
  position: relative;
  text-overflow: ellipsis;
  padding: 5px 0;
}
.breadcrumbs > span {
  display: inline-block;
}
.breadcrumbs > span:after {
  content: ">";
  display: inline-block;
  margin: 0 1em;
}
.breadcrumbs > span:last-child:after {
  display: none;
}
.toppage__mainVisual {
  position: relative;
  z-index: 1;
}
.toppage__mainVisual__catch {
  width: 50%;
  max-width: 325px;
}
.toppage__mainVisual .main-slide {
  height: 0;
  width: 100%;
  padding-bottom: 40%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.toppage__kaiin_bosyu {
  position: sticky;
  top: 300px;
  left: 0;
  height: 0;
  width: 100%;
  z-index: 99;
}
.toppage__kaiin_bosyu > a {
  background-image: url(img/kaiin-bosyu.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top left;
  position: absolute;
  height: 180px;
  width: 180px;
  top: -50px;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 100%;
}
.toppage__kaiin_bosyu > a > img {
  display: block;
}
.toppage__informationWrap {
  border: solid 2px #bbb;
  padding: 15px 18px;
  margin: 40px 0;
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
}
.toppage__information {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  position: relative;
}
.toppage__information__heading {
  font-size: 1em;
  color: #d34c04;
  margin-right: 2rem;
  white-space: nowrap;
}
.toppage__information__date {
  font-size: 0.84em;
  margin-right: 0.5rem;
}
.toppage__information__title {
  font-weight: bolder;
}
.toppage__information__title:hover {
  text-decoration: underline;
}
.toppage__section1 {
  padding: 80px 0px;
  margin: -60px 0 0;
  position: relative;
  z-index: 1;
  background-image: url(img/top-section1-bg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
}
.toppage__section1__heading {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url("img/top-section1-heading.png");
  width: 260px;
  height: 300px;
  background-position: top left;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 100px;
}
.toppage__section1__content {
  padding: 20px 0;
}
.toppage__section1__content > ol {
  font-weight: bold;
  font-size: 1.08em;
}
.toppage__section1__content > ol ol {
  font-weight: normal;
  list-style: none;
  counter-reset: number 0;
}
.toppage__section1__content > ol ol > li:before {
  counter-increment: number 1;
  content: counter(number) " ";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7em;
  margin-right: 0.5em;
  line-height: 1;
  padding: 0.1em;
  width: 1em;
  height: 1em;
  background: #fff;
  border: solid 1px;
  border-radius: 1em;
}
.toppage__section2 {
  margin-top: -90px;
  position: relative;
  z-index: 2;
}
.toppage__section2__heading {
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
  background-image: url(img/top-section2-heading.png);
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: left bottom;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  height: 90px;
}
.toppage__section2__calendar {
  position: absolute;
  top: -70px;
  right: 0;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  width: 250px;
  height: 40px;
  background-image: url(img/button-calendar.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.toppage__section2__newsWrap {
  background-color: #d6e9ca;
  background-image: url("img/top-section2-bg.png");
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: contain;
  padding: 50px 15px;
}
.toppage__section2__more {
  text-align: center;
  margin: 60px auto 30px;
}
.toppage__section3 {
  margin: 70px auto 100px;
}
.toppage__section3__heading {
  width: 100%;
  max-width: 640px;
  height: 60px;
  margin: auto;
  background-image: url("img/top-section3-heading.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 100%;
  position: relative;
  margin-bottom: 40px;
}
.toppage__section3__heading:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 180px;
  height: 100%;
  background: url("img/top-section3-heading-bg.png") no-repeat;
  background-size: contain;
  background-position: center right;
}
.toppage__section3__caption {
  font-size: 1.08em;
  text-align: center;
  margin: 40px auto 60px;
  max-width: 1000px;
}
.toppage__section3__content {
  position: relative;
  width: 100%;
  margin-bottom: 50px;
  display: flex;
  align-items: flex-start;
  z-index: 1;
  overflow: hidden;
}
.toppage__section3__content__image {
  position: relative;
  z-index: 1;
  width: 55%;
}
.toppage__section3__content__image:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  border: solid 30px #fff;
  opacity: 0.5;
  box-sizing: border-box;
}
.toppage__section3__content__image img {
  display: block;
}
.toppage__section3__content__caption {
  position: relative;
}
.toppage__section3__content__caption:after {
  content: "";
  width: 40px;
  height: 0;
  position: absolute;
  bottom: -1px;
  left: 0;
  border-bottom: solid 2px #ce624a;
}
.toppage__section3__content__heading {
  font-size: 2.4em;
  position: relative;
  line-height: 1.5;
  margin: 40px auto 20px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.toppage__section3__content__heading:after {
  content: "";
  height: 40px;
  width: 40px;
  display: inline-block;
  position: relative;
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 40px;
  transform: scale(2);
}
.toppage__section3__content__heading.toppage__section3__content__heading--1:after {
  background-image: url(img/top-section3-badge-chorus.png);
}
.toppage__section3__content__heading.toppage__section3__content__heading--2:after {
  background-image: url(img/top-section3-badge-nature.png);
}
.toppage__section3__content__heading.toppage__section3__content__heading--3:after {
  background-image: url(img/top-section3-badge-nature.png);
}
.toppage__section3__content__heading.toppage__section3__content__heading--4:after {
  background-image: url(img/top-section3-badge-globals.png);
}
.toppage__section3__content__heading.toppage__section3__content__heading--5:after {
  background-image: url(img/top-section3-badge-ojizosan.png);
}
.toppage__section3__content__heading.toppage__section3__content__heading--6:after {
  background-image: url(img/top-section3-badge-chorus.png);
}
.toppage__section3__content__text {
  width: 45%;
  max-width: 430px;
  margin-top: 70px;
  position: relative;
}
.toppage__section3__content__text.toppage__section3__content__text--5 {
  max-width: 640px;
}
.toppage__section3__content:after {
  background-image: url(img/top-section3-content-bg.png);
  background-size: cover;
  content: "";
  position: absolute;
  top: 100px;
  width: 100vw;
  height: 100%;
  z-index: -1;
  pointer-events: none;
}
.toppage__section3__content:nth-child(odd) {
  justify-content: flex-start;
  padding-bottom: 130px;
}
.toppage__section3__content:nth-child(odd) .toppage__section3__content__image {
  order: 1;
}
.toppage__section3__content:nth-child(odd) .toppage__section3__content__text {
  order: 2;
  padding-left: 100px;
}
.toppage__section3__content:nth-child(odd):after {
  right: -15vw;
}
.toppage__section3__content:nth-child(4n+1):after {
  left: -15vw;
}
.toppage__section3__content:nth-child(even) {
  justify-content: flex-end;
  margin-top: -130px;
}
.toppage__section3__content:nth-child(even) .toppage__section3__content__image {
  order: 2;
}
.toppage__section3__content:nth-child(even) .toppage__section3__content__text {
  order: 1;
  padding-right: 60px;
  margin-top: 48px;
}
.toppage__section3__content:nth-child(even):after {
  display: none;
}
.toppage__section3__content .moreLink {
  margin: 40px auto;
}
.toppage__section3__content__daninbosyu {
  position: absolute;
  bottom: 30px;
  right: -40px;
  width: 140px;
  z-index: 2;
}
.toppage__section3__content__daninbosyu img {
  display: block;
}
.toppage__section4 {
  background: #fdebd1;
  padding: 25px 15px;
}
.toppage__section4__heading {
  text-align: center;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url(img/top-section4-heading.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 380px;
  height: 60px;
  max-width: 100%;
  margin: 0px auto 50px;
  position: relative;
}
.toppage__section4__heading:after {
  content: "";
  display: inline-block;
  width: 40px;
  border-bottom: solid 2px #ce624a;
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
}
.toppage__section4__buttons {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 100%;
  list-style: none;
}
.toppage__section4__buttons > li {
  width: calc(25% - 15px);
  margin-right: 20px;
  text-align: center;
}
.toppage__section4__buttons > li:last-child {
  margin-right: 0;
}
.toppage__section4__button {
  height: 120px;
  background: #eee;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-size: 1.5em;
  font-weight: bolder;
  line-height: 1.5;
  text-decoration: none;
  color: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 4px #ddd;
}
.toppage__section4__button.toppage__section4__button--1 {
  background-color: #e38e40;
}
.toppage__section4__button.toppage__section4__button--2 {
  background-color: #aac757;
}
.toppage__section4__button.toppage__section4__button--3 {
  background-color: #7399bf;
}
.toppage__section4__button.toppage__section4__button--4 {
  background-color: #b2789a;
}
.toppage__section5 {
  background: #ede9e9;
  margin: 250px auto 100px;
}
.toppage__section5__movie {
  position: relative;
  top: -100px;
  max-width: 790px;
  background: #fff;
  padding: 10px;
  box-shadow: 0 3px 5px #ddd;
  width: 100%;
}
.toppage__section5__movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}
.toppage__section5__text {
  position: absolute;
  top: 80px;
  right: 0;
  z-index: 2;
  background: #fff;
  width: 70%;
  max-width: 360px;
  padding: 50px 25px;
  text-align: center;
}
.toppage__section5__text .moreLink {
  margin-top: 40px;
}
.toppage__section5__text .moreLink:after {
  content: "";
  width: 0;
  height: 0;
  display: inline-block;
  border: solid 7px;
  border-left-width: 10px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-right: none;
  margin-left: 5px;
  vertical-align: baseline;
}
.toppage__section5__heading {
  background-image: url(img/top-section5-heading.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  width: 260px;
  height: 75px;
  margin: 0 auto 40px;
  position: relative;
}
.toppage__section5__heading:after {
  content: "";
  width: 40px;
  position: absolute;
  bottom: 0;
  left: 50%;
  border-bottom: solid 2px #ce624a;
  transform: translateX(-50%);
}
.toppage__section5__gallery {
  margin: 50px auto;
}
.toppage__section5__gallery .gallery-slide-linkArea {
  display: block;
  width: calc(100% - 20px);
  position: relative;
  margin: auto;
  text-decoration: none;
  font-size: 1.08em;
}
.toppage__section5__gallery .gallery-slide-linkArea:after {
  content: "＋";
  position: absolute;
  bottom: 2em;
  right: 0.5em;
  background: #fff;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 1.24em;
}
.toppage__section5__gallery .gallery-slide-image {
  width: 100%;
  padding-bottom: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.toppage__section5__gallery .gallery-slide-caption {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 1.4em;
  line-height: 1.4;
  margin-top: 0.5em;
}
.toppage__section5__gallery .moreLink {
  margin: 50px auto;
}
.toppage__section5__galleryMore {
  text-align: center;
}
.toppage__section6 {
  background-image: url(img/top-section6-bg.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 40px 0;
}
.toppage__section6 nav {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
}
.toppage__section6__linkItem {
  width: calc(33.33% - 60px);
  margin: 0 30px 60px;
  display: block;
  text-align: center;
  font-size: 1.7em;
  font-weight: bolder;
  text-decoration: none;
}
.toppage__section6__linkItem:hover {
  text-decoration: none;
}
.toppage__section6__linkItem:hover .yajirushi {
  transform: translate(-20%, 40%);
}
.toppage__section6__linkItem__imageWrap {
  position: relative;
  margin-bottom: 20px;
}
.toppage__section6__linkItem__imageWrap > img {
  display: block;
  margin: auto;
  width: 100%;
  border: solid 10px #d6e9ca;
  border-radius: 300px;
  position: relative;
  z-index: 1;
}
.toppage__section6__linkItem__imageWrap .yajirushi {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 40%);
  z-index: 2;
}
.youtubeWrap {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}
.archiveArticle {
  width: calc(25% - 20px);
  margin: 0 10px;
  background: #fff;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  transition: top 0.5s ease;
  top: 0;
}
.archiveArticle:hover {
  top: -10px;
}
.archiveArticle__image {
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 82%;
  position: relative;
  z-index: 1;
}
.archiveArticle__image > a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}
.archiveArticle__image.archiveArticle__image--gallery {
  padding-bottom: 75%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.archiveArticle__image.archiveArticle__image--gallery:after {
  content: "＋";
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  position: absolute;
  bottom: 0.5em;
  right: 0.5em;
  z-index: 2;
  background: #fff;
  line-height: 1;
  padding: 0.24em;
  font-size: 1.24em;
}
.archiveArticle__text {
  position: relative;
  z-index: 2;
}
.archiveArticle__category {
  display: flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  background: #489d52;
  line-height: 1;
  padding: 5px;
  font-size: 14px;
  text-decoration: none;
  color: #fff;
  margin-top: -24px;
}
.archiveArticle__date {
  font-size: 0.84em;
  padding: 0 10px;
  line-height: 1;
  margin: 5px auto 10px;
}
.archiveArticle__date.archiveArticle__date--gallery {
  padding: 0;
  font-size: inherit;
  margin: 5px auto;
}
.archiveArticle__title {
  line-height: 1.5;
  margin: 10px auto 20px;
  padding: 0 10px;
}
.archiveArticle__title > a {
  text-decoration: none;
  color: #489d52;
}
.archiveArticle__title > a:hover {
  text-decoration: underline;
}
.archiveArticle__caption a {
  text-decoration: none;
}
.archiveArticle__caption.archiveArticle__caption--gallery {
  margin: 5px auto;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  white-space: normal;
  -webkit-box-orient: vertical;
}
.archiveArticle.archiveArticle--toppage:nth-child(4n+2),
.archiveArticle.archiveArticle--toppage:nth-child(4n+3) {
  margin-top: 50px;
}
.archiveArticle.archiveArticle--archive {
  box-shadow: 0 3px 5px #bbb;
  margin-bottom: 40px;
}
.archiveArticle.archiveArticle--gallery {
  border-radius: 0;
  margin-bottom: 40px;
}
.slick-slide:focus {
  outline: none;
}
.moreLink {
  line-height: 1;
  text-decoration: none;
  padding: 10px;
  text-align: center;
  width: 230px;
  display: inline-block;
  font-weight: bolder;
  font-size: 1.08em;
  box-shadow: 0 1px 3px #bbb;
  transition: all 0.35s ease;
}
.moreLink:hover {
  text-decoration: none;
}
.moreLink.moreLink--wc {
  background: #fff;
}
.moreLink.moreLink--wc:hover {
  background: #603813;
  color: #fff;
}
.moreLink.moreLink--cw {
  background: #603813;
  color: #fff;
}
.moreLink.moreLink--cw:hover {
  color: #603813;
  background: #fff;
}
.moreLink.moreLink--archive {
  margin: auto;
  display: block;
  border: solid 1px #603813;
}
.archiveWrap,
.singleWrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 140px;
}
.archiveContentWrap {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: calc(100% - 280px);
  margin: 0px auto 20px;
}
.archiveContentWrap.archiveContentWrap--fullwidth {
  width: 100%;
}
.archiveContentWrap.archiveContentWrap--calendarpage {
  justify-content: space-between;
}
@media all and (min-width: 481px) {
  .archiveContentWrap.archiveContentWrap--column2 .archiveArticle {
    width: calc(50% - 30px);
    margin-left: 15px;
    margin-right: 15px;
  }
  .archiveContentWrap.archiveContentWrap--postgallery {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
  .archiveContentWrap.archiveContentWrap--column3 .archiveArticle {
    width: calc(33.33% - 20px);
  }
}
.postWrap {
  width: calc(100% - 280px);
}
.singleWrap .sidebar {
  margin-top: 100px;
}
.post-title {
  text-align: center;
  position: relative;
  margin-bottom: 2em;
}
.post-title:after {
  content: "";
  width: 60px;
  height: 3px;
  background: #489d52;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.post-title.post-title--single {
  margin: 0 auto 10px;
  text-align: left;
  font-size: 1.5em;
  border-bottom: solid 1px;
}
.post-title.post-title--single:after {
  display: none;
}
.post-utility {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.post-categories {
  margin-bottom: -10px;
}
.post-categories > li {
  display: inline-block;
  list-style: none;
  margin-right: 10px;
  margin-bottom: 10px;
}
.post-categories > li > a {
  display: block;
  text-decoration: none;
  background: #489d52;
  color: #fff;
  padding: 6px 10px;
  line-height: 1;
  min-width: 80px;
  text-align: center;
}
.post-date.post-date--gallery {
  width: 100%;
  text-align: right;
}
.sidebar {
  width: 100%;
  max-width: 240px;
  font-size: 1.16em;
  margin-bottom: 40px;
  margin-right: 40px;
  position: relative;
}
.sidebar h3 {
  font-size: 1em;
  background: #603813;
  color: #fff;
  padding: 8px;
  line-height: 1;
}
.sidebar .catList {
  list-style: none;
  margin-bottom: 1em;
}
.sidebar .catList > li > ul {
  list-style: none;
  font-size: 0.96em;
}
.sidebar .catList > li > ul > li ul {
  padding-left: 1em;
  list-style: none;
}
.sidebar .catList > li > ul > li > a {
  display: block;
  border-top: dotted 1px;
}
.sidebar .catList > li > ul > li > ul > li > a:before {
  content: "・";
  display: inline-block;
  text-indent: -1em;
}
.sidebar .catList a {
  display: block;
  text-decoration: none;
}
.sidebar .catList > li > a {
  display: block;
  border-top: dotted 1px;
}
.sidebar .catList > li > a:before {
  content: "●";
  display: inline-block;
  transform: scale(1.2);
  width: 1em;
  text-align: center;
}
.sidebar .catList.catList--yearly > li > a {
  text-decoration: none;
}
.sidebar .catList.catList--yearly > li > a:after {
  content: "年";
}
.sidebar .children {
  font-size: 0.94em;
}
.sidebar__mobileToggleMenu {
  display: none;
}
.calendar__item {
  text-align: center;
  margin-bottom: 20px;
}
.calendar__item__image {
  display: block;
  margin-bottom: 20px;
}
.calendar__item__image > img {
  display: block;
  width: 100%;
}
.calendar__item__title {
  font-weight: bolder;
  width: 100%;
}
.calendar__item.calendar__item--medium {
  border: solid 1px;
  padding: 15px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column-reverse;
  width: calc(50% - 15px);
}
.calendar__item.calendar__item--large {
  width: 100%;
  font-size: 1.08em;
  font-weight: bolder;
  margin-bottom: 30px;
}
.calendar__item.calendar__item--large .calendar__item__title {
  margin-bottom: 20px;
}
.calendar__item.calendar__item--large .calendar__item__image {
  margin-bottom: 0;
  border: solid 1px;
}
.calendar__item.calendar__item--large .calendar__item__image > img {
  display: block;
  width: 100%;
  padding: 15px;
}
.calendar__item.calendar__item--archive {
  width: calc(33.33% - 20px);
  margin: 0 20px 20px 0;
  border: solid 1px;
  padding: 20px 0 0;
}
.wp-pagenavi {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  margin: 40px auto;
}
.wp-pagenavi > * {
  min-width: 2em;
  margin-left: 5px;
  margin-right: 5px;
  text-align: center;
  border-color: inherit!important;
}
.wp-pagenavi .pages {
  display: none;
}
.wp-pagenavi > a:hover {
  color: #fff;
  background: #603813;
}
.pagenation {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  margin: 60px auto;
}
.pagenation__prev,
.pagenation__next {
  width: 50%;
  display: block;
  align-items: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  padding: 0 1em;
}
.pagenation__prev a,
.pagenation__next a {
  width: auto;
}
.pagenation__next {
  text-align: right;
}
.pagenation__next a {
  margin-right: 5px;
}
.pagenation__next a:after {
  content: "»";
  position: absolute;
  top: 0;
  right: 8px;
}
.pagenation__prev {
  text-align: left;
}
.pagenation__prev a {
  margin-left: 5px;
}
.pagenation__prev a:after {
  content: "«";
  position: absolute;
  top: 0;
  left: 8px;
}
@media screen and (min-width: 481px) {
  .scrolled .header {
    background: rgba(255, 255, 255, 0.9);
  }
  .scrolled .header:before {
    height: 3px;
  }
  .scrolled .header__utility > ul > li > a > img {
    max-height: 18px;
  }
  .scrolled .header__contact {
    font-size: 0.92em;
    padding: 8px 30px;
  }
  .scrolled .header__logo {
    width: 200px;
    margin-right: 40px;
  }
  .scrolled .header__logo__image {
    width: 180px;
    height: 50px;
    background-image: url("img/logo-header-sp.svg");
  }
  .scrolled .header__menu {
    width: calc(100% - 200px);
  }
  .scrolled .header__menuItem {
    font-size: 0.92em;
  }
  .scrolled .header__menuItem svg {
    display: none;
  }
}
.yajirushi {
  background: url("img/yajirushi.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-color: #00802b;
  display: block;
  height: 44px;
  width: 44px;
  border-radius: 44px;
  line-height: 1;
  position: relative;
  left: 0;
  transform: translate(0%, 0%);
  transition: all 0.5s ease;
}
.yajirushi.yajirushi--kaiinbosyu {
  background-image: url(img/yajirushi-orange.svg);
  background-color: #fdd862;
  width: 36px;
  height: 36px;
  position: absolute;
  top: 48%;
  left: 68%;
  z-index: 2;
}
.yajirushi.yajirushi--daninbosyu {
  position: absolute;
  bottom: 5px;
  right: 5px;
  left: unset;
  z-index: 3;
  background-color: yellow;
  background-image: url(img/yajirushi-green.svg);
  width: 36px;
  height: 36px;
}
a:hover .yajirushi {
  transform: translate(30%, 0%);
}
.breadclumbs {
  margin: 40px auto;
}
.main {
  margin: 80px auto;
}
.main.main--toppage {
  margin-top: 0;
}
#sitemap_list {
  padding-left: 2em;
}
#sitemap_list ul {
  padding-left: 1em;
}
.footer {
  background: url("img/footer-bg.svg");
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: top center;
  margin-top: 100px;
}
.footer__logo {
  display: block;
  width: 150px;
  margin: auto;
}
.footer__logo img {
  width: 100%;
  height: auto;
}
.footer__contact {
  text-align: center;
  margin-bottom: 60px;
}
.footer__contact > a {
  display: inline-block;
  padding: 18px 40px;
  font-size: 1.25em;
  font-weight: bolder;
  text-decoration: none;
  line-height: 1;
  background: rgba(255, 255, 255, 0.9);
  margin: 10px auto;
  position: relative;
  border-radius: 50px;
}
.footer__contact > a .yajirushi {
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translate(-50%, -50%);
}
.footer__contact > a:hover .yajirushi {
  transform: translate(-25%, -50%);
}
.footer__address {
  text-align: center;
  color: #fff;
  line-height: 1.5;
  position: relative;
  top: 25px;
}
.footer__address a {
  text-decoration: none;
}
.footer__link {
  text-align: center;
  font-size: 0.92em;
}
.footer__link a {
  display: block;
  text-decoration: none;
  margin: 0 auto;
  color: #fff;
  width: fit-content;
}
.copyright {
  text-align: center;
}
.copyright a {
  text-decoration: none;
}
@media all and (max-width: 1000px) {
  .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media all and (max-width: 768px) and (min-width: 481px) {
  html {
    zoom: 0.7;
  }
  .toppage__kaiin_bosyu {
    top: 1100px;
  }
  .toppage__section1 {
    background-size: auto 80%;
  }
  .toppage__section3__content:after {
    width: 100%;
  }
  .toppage__section3__content:nth-child(odd):after {
    right: -50px;
  }
  .toppage__section3__content__image {
    width: 52%;
  }
  .toppage__section3__content__text {
    width: 48%;
    max-width: 470px;
  }
  .toppage__section3__content:nth-child(odd) .toppage__section3__content__text {
    padding-left: 50px;
  }
  .toppage__section3__content:nth-child(4n+1):after {
    left: -50px;
  }
  .toppage__section3__content__heading {
    font-size: 2.08em;
  }
  .toppage__section4__button {
    font-size: 1.32em;
  }
}
@media screen and (max-width: 480px) {
  html {
    zoom: 1;
  }
  .container {
    padding-left: 10px;
    padding-right: 10px;
  }
  .container.container--header {
    display: block;
    padding: 0;
  }
  .container.container--utility {
    display: none;
  }
  .container.container--mainMessage {
    display: none;
  }
  .container.container--section1 {
    display: block;
    background-image: url(img/top-section1-bg.png);
    background-position: bottom right;
    background-size: 40% auto;
    background-repeat: no-repeat;
    margin-bottom: 0;
    padding-bottom: 80px;
  }
  .container.container--news {
    flex-wrap: wrap;
  }
  .container.container--section4 {
    padding: 20px;
  }
  .container.container--archive {
    padding-left: 0;
    padding-right: 0;
  }
  .header {
    padding: 0;
  }
  .header:before {
    display: none;
  }
  .header__menu {
    display: none;
  }
  .header__logo {
    width: auto;
    padding: 0 0 0 5px;
    background: #fff;
  }
  .header__logo__image {
    background-image: url("img/logo-header-sp.svg");
    height: 60px;
    width: 180px;
    background-position-y: center;
  }
  .header__mobileUtility {
    position: absolute;
    top: 18px;
    left: 200px;
    width: auto;
    display: block;
  }
  .header__mobileUtility > ul {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100px;
  }
  .header__mobileUtility > ul > li {
    margin-right: 15px;
  }
  .header__mobileUtility > ul > li:last-child {
    margin-right: 0;
  }
  button[name="mobileMenu"] {
    display: block;
    height: 46px;
    width: 46px;
    position: absolute;
    top: 7px;
    right: 8px;
    background-color: transparent;
    background-image: url("img/icon-menu-open.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  button[name="mobileMenu"]:hover,
  button[name="mobileMenu"]:focus {
    outline: none;
  }
  .menuActive button[name="mobileMenu"] {
    background-image: url("img/icon-menu-close.svg");
  }
  .menuActive .header {
    height: 100vh;
    background: #fdebd1;
    overflow-y: scroll;
  }
  .menuActive .header__menu {
    display: block;
    width: 100%;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
  }
  .menuActive .header__menu > ul {
    display: block;
    padding: 30px 0px 10px;
    box-sizing: border-box;
  }
  .menuActive .header__menuItem {
    margin: 0 auto 10px;
    padding-bottom: 0;
    width: 100%;
    position: relative;
    transition: none;
  }
  .menuActive .header__menuItem:last-child {
    margin-bottom: 0;
  }
  .menuActive .header__menuItem a {
    display: flex;
    align-items: center;
    justify-content: left;
    width: 100%;
    background: #fff;
    border-radius: 10px;
    padding: 5px;
  }
  .menuActive .header__menuItem a:after {
    display: none;
  }
  .menuActive .header__menuItem a br {
    display: none;
  }
  .menuActive .header__menuItem svg {
    margin: 0 5px;
    width: 40px;
    height: auto;
  }
  .menuActive .header__menuItem button[name="toggleChildMenu"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    border: none;
    background: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
  }
  .menuActive .header__menuItem button[name="toggleChildMenu"]:before {
    content: "";
    width: 6px;
    height: 6px;
    border: solid 3px #603813;
    border-top: none;
    border-left: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .menuActive .header__menuItem button[name="toggleChildMenu"]:hover,
  .menuActive .header__menuItem button[name="toggleChildMenu"]:focus {
    outline: none;
  }
  .menuActive .header__menuItem--selected {
    background: #fff;
    border-radius: 8px;
  }
  .menuActive .header__menuItem--selected > a {
    color: #fff!important;
  }
  .menuActive .header__menuItem--selected button[name="toggleChildMenu"]:before {
    color: #fff!important;
    border-color: #fff!important;
    transform: translate(-50%, -50%) rotate(225deg);
  }
  .menuActive .header__menuItem--selected.header__menuItem--activity > a {
    background: #7399bf !important;
  }
  .menuActive .header__menuItem--selected.header__menuItem--group > a {
    background: #e38e40 !important;
  }
  .menuActive .header__menuItem--selected .header__childMenu {
    display: block;
  }
  .menuActive .header__menuItem--selected .header__childMenu > ul {
    list-style: none;
    padding: 5px 10px;
  }
  .menuActive .header__menuItem--selected .header__childMenu > ul > li {
    border-bottom: solid 1px #fcecd1;
    margin: 5px 0;
    padding-left: 40px;
  }
  .menuActive .header__menuItem--selected .header__childMenu > ul > li:last-child {
    border-bottom: none;
    margin-bottom: 0;
  }
  .menuActive .header__menuItem--selected .header__childMenu > ul > li > a {
    padding: 5px;
  }
  .menuActive .header__mobileUtility {
    display: block;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
    position: unset;
    left: unset;
    width: unset;
  }
  .menuActive .header__mobileUtility > ul {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    list-style: none;
  }
  .menuActive .header__mobileUtility > ul > li {
    margin-right: unset;
  }
  .menuActive .header__mobileUtility > ul > li > a {
    width: 50px;
    height: 50px;
    display: block;
    padding: 8px;
    border-radius: 10px;
    background: #fff;
    margin-right: 10px;
  }
  .breadcrumbs {
    display: none;
  }
  .main {
    margin: 20px auto 80px;
  }
  .toppage__mainVisual .main-slide {
    padding-bottom: 70%;
  }
  .toppage__informationWrap {
    margin: 20px auto;
    width: 90%;
    border-width: 1px;
    padding: 5px 10px;
    display: block;
    line-height: 1.5;
  }
  .toppage__information__heading {
    display: inline-block;
    margin-right: 10px;
  }
  .toppage__information__date {
    display: inline-block;
  }
  .toppage__information__title {
    display: inline-block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 100%;
    line-height: 1;
    font-weight: normal;
    text-decoration: underline;
  }
  .toppage__kaiin_bosyu {
    top: 90vh;
  }
  .toppage__kaiin_bosyu > a {
    width: 90px;
    height: 90px;
    background-image: url(img/kaiin-bosyu-sp.png);
    right: 20px;
  }
  .toppage__section1 {
    background-image: url(img/top-section1-bg-sp.png);
    background-position: top left;
    margin-top: 10px;
    padding-top: 60px;
    padding-bottom: 0;
    background-size: 25% auto;
  }
  .toppage__section1__heading {
    height: 46px;
    width: 280px;
    margin: auto;
    background-image: url("img/top-section1-heading-sp.png");
  }
  .toppage__section1__content {
    padding: 10px 0 30px;
  }
  .toppage__section1__content > ol {
    font-size: 0.92em;
    padding-left: 40px;
  }
  .toppage__section1__content > ol ol {
    font-size: 0.92em;
    line-height: 1.7;
  }
  .toppage__section1__rinen > a {
    width: 80px;
    height: 80px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    position: absolute;
    bottom: 35px;
    right: 35px;
    background-image: url(img/top-section1-rinenlink.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }
  .toppage__section2 {
    margin-top: -60px;
  }
  .toppage__section2__calendar {
    top: 20px;
    left: 50%;
    right: unset;
    width: 180px;
    height: 30px;
    margin: auto;
    display: block;
    transform: translateX(-50%);
  }
  .toppage__section2__heading {
    width: 240px;
    height: 55px;
    background-image: url(img/top-section2-heading-sp.png);
  }
  .toppage__section2__newsWrap {
    padding: 70px 0px 40px;
    background-size: auto 70px;
    background-position-x: 65%;
  }
  .toppage__section2__more {
    margin: 20px auto 0;
  }
  .toppage__section3 {
    margin: 30px auto;
    padding: 0!important;
  }
  .toppage__section3__heading {
    height: 70px;
    background-size: 150px;
    line-height: 80px;
    background-position: bottom center;
    margin-bottom: 20px;
  }
  .toppage__section3__heading:after {
    width: 100px;
    top: -20px;
  }
  .toppage__section3__caption {
    margin: 20px auto;
    font-size: 1em;
    padding: 0 20px;
    line-height: 1.6;
  }
  .toppage__section3__content {
    display: block;
    padding: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .toppage__section3__content:after {
    display: none;
  }
  .toppage__section3__content__image {
    width: 100%;
  }
  .toppage__section3__content__image:after {
    border-width: 10px;
  }
  .toppage__section3__content__text {
    width: 100%;
    padding: 0 25px!important;
    margin: 0;
    z-index: 2;
  }
  .toppage__section3__content__text p br {
    display: none;
  }
  .toppage__section3__content__caption {
    top: -30px;
    line-height: 1;
    background: #fff;
    width: fit-content;
    padding: 6px 5px 8px;
  }
  .toppage__section3__content__caption:after {
    left: 5px;
  }
  .toppage__section3__content__heading {
    margin-top: -20px;
    font-size: 1.4em;
    margin-bottom: 5px;
  }
  .toppage__section3__content__heading:after {
    position: absolute;
    top: -90px;
    right: 0px;
    transform: none;
    width: 60px;
    height: 60px;
  }
  .toppage__section3__content__heading br {
    display: none;
  }
  .toppage__section3__content .moreLink {
    margin: 20px auto 30px;
    width: 100%;
  }
  .toppage__section3__content:nth-child(odd) .toppage__section3__content__text {
    background: #eee;
  }
  .toppage__section3__content:nth-child(even) .toppage__section3__content__text {
    margin: 0;
  }
  .toppage__section3__content__daninbosyu {
    background: green;
    position: relative;
    margin: 0px auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    width: 100%;
    bottom: unset;
    right: unset;
    text-decoration: none;
    padding: 15px;
    font-size: 1.12em;
  }
  .toppage__section3__content__daninbosyu:before {
    content: "合唱団員募集中！";
    color: #fff;
    font-weight: bolder;
  }
  .toppage__section3__content__daninbosyu > img {
    display: none;
  }
  .toppage__section4__heading {
    width: 280px;
    height: 50px;
    margin-bottom: 30px;
  }
  .toppage__section4__buttons {
    flex-wrap: wrap;
    margin-bottom: -20px;
  }
  .toppage__section4__buttons > li {
    width: calc(50% - 10px);
    margin: 0 10px 20px;
  }
  .toppage__section4__buttons > li:nth-child(odd) {
    margin-left: 0;
  }
  .toppage__section4__buttons > li:nth-child(even) {
    margin-right: 0;
  }
  .toppage__section4__button {
    height: 70px;
    font-size: 1em;
  }
  .toppage__section5 {
    margin: 150px auto 0px;
  }
  .toppage__section5__movie {
    max-width: 320px;
    margin: auto;
  }
  .toppage__section5__text {
    position: relative;
    top: unset;
    width: 100%;
    margin: -140px auto 0;
    font-size: 0.92em;
    line-height: 1.7;
    padding: 50px 25px 30px;
  }
  .toppage__section5__heading {
    height: 55px;
    margin: 10px auto;
    width: 200px;
  }
  .toppage__section5 .moreLink {
    margin: 20px 0 0;
  }
  .toppage__section5__gallery {
    margin: 40px auto;
    padding: 0 0 40px;
  }
  .toppage__section5__gallery .gallery-slide-image {
    padding-bottom: 80%;
  }
  .toppage__section5__gallery .gallery-slide-caption {
    font-size: 0.76em;
  }
  .toppage__section5__gallery .gallery-slide-linkArea:after {
    font-size: 1em;
    width: 28px;
    height: 28px;
  }
  .toppage__section5__gallery .moreLink {
    width: auto;
  }
  .toppage__section6 {
    background-image: url(img/top-section6-bg-sp.png);
    background-position-y: 60px;
    background-position-x: 30px;
    padding: 0 0 60px;
    margin-bottom: 80px;
  }
  .toppage__section6 nav {
    flex-wrap: wrap;
  }
  .toppage__section6__linkItem {
    width: calc(50% - 20px);
    margin: 0 10px 10px;
    font-size: 1em;
  }
  .toppage__section6__linkItem:first-child {
    margin-left: 20px;
    margin-right: 20px;
  }
  .footer {
    font-size: 0.76em;
    background-image: url("img/footer-bg-sp.svg");
  }
  .footer__logo {
    width: 100px;
  }
  .footer__contact > a {
    font-size: 1.12em;
    padding: 12px 20px;
  }
  .copyright {
    font-size: 0.68em;
  }
  .archiveArticle {
    width: calc(50% - 10px);
    margin-bottom: 20px;
  }
  .archiveArticle:nth-child(odd) {
    margin-left: 0;
  }
  .archiveArticle:nth-child(even) {
    margin-right: 0;
  }
  .archiveArticle__text {
    font-size: 0.84em;
  }
  .archiveArticle__category {
    font-size: 12px;
    margin-top: -20px;
    display: block;
    width: auto;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
  }
  .archiveArticle__title {
    margin: 5px auto 10px;
  }
  .archiveArticle__title > a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .archiveArticle.archiveArticle--toppage:nth-child(4n+2),
  .archiveArticle.archiveArticle--toppage:nth-child(4n+3) {
    margin-top: 0;
  }
  .archiveArticle.archiveArticle--gallery {
    width: 100%;
    margin: 0 auto 40px;
  }
  .archiveArticle.archiveArticle--postgallery {
    width: calc(50% - 20px);
    margin: 0 10px 30px;
  }
  .moreLink {
    width: 180px;
    font-size: 1em;
  }
  .yajirushi {
    width: 30px;
    height: 30px;
  }
  .yajirushi.yajirushi--kaiinbosyu {
    left: 50%;
    top: unset;
    bottom: 13px;
    transform: translateX(-50%);
    width: 24px;
    height: 24px;
  }
  .yajirushi.yajirushi--daninbosyu {
    bottom: 12px;
    right: 20px;
  }
  .archiveWrap,
  .singleWrap {
    flex-wrap: wrap;
  }
  .archiveContentWrap {
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .archiveContentWrap,
  .postWrap {
    width: 100%;
  }
  .post-title {
    margin-bottom: 1em;
  }
  .post-utility {
    margin-bottom: 20px;
  }
  .calendar__item.calendar__item--large .calendar__item__title {
    margin-bottom: 10px;
  }
  .calendar__item.calendar__item--archive {
    width: calc(50% - 10px);
    margin: 0 20px 20px 0;
    border: solid 1px;
    padding: 20px 0 0;
  }
  .calendar__item.calendar__item--archive:nth-child(even) {
    margin-right: 0;
  }
  .sidebar {
    max-width: 320px;
    margin: 0px auto 40px;
  }
  .sidebar section {
    margin: 0px auto 15px;
    border: solid 1px #ddd;
    padding: 5px 15px;
    box-shadow: 0px 1px 3px #bbb;
    position: relative;
  }
  .sidebar section h3 {
    background: none;
    color: inherit;
    text-align: center;
  }
  .sidebar section .catList {
    padding: 10px 10px 0;
    border-top: solid 1px #ccc;
  }
  .sidebar section .catList a {
    border: none!important;
  }
  .sidebar section .sidebar__mobileToggleMenu {
    display: block;
    -webkit-appearance: none;
    -moz-appearrance: none;
    appearance: none;
    border-top: solid 16px #603813;
    border-bottom: none;
    border-left: solid 10px transparent;
    border-right: solid 10px transparent;
    background: none;
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 2;
  }
  .sidebar section > * {
    display: none;
  }
  .sidebar section > *:first-child,
  .sidebar section .sidebar__mobileToggleMenu {
    display: block!important;
  }
  .sidebar .active > * {
    display: block;
  }
  .sidebar .active .sidebar__mobileToggleMenu {
    transform: rotate(180deg);
  }
  .singleWrap .sidebar {
    order: 2;
    margin: 20px auto;
  }
  .wp-pagenavi > * {
    display: none;
  }
  .wp-pagenavi .previouspostslink {
    display: block;
    order: 1;
  }
  .wp-pagenavi .pages {
    display: block;
    order: 2;
  }
  .wp-pagenavi .nextpostslink {
    display: block;
    order: 3;
  }
  .pagenation {
    flex-wrap: wrap;
  }
  .pagenation__prev,
  .pagenation__next {
    width: 100%;
    margin-bottom: 0.8em;
  }
}
@media all and (min-width: 481px) {
  .pcOnly {
    display: block;
  }
  .spOnly {
    display: none!important;
  }
}
@media all and (max-width: 480px) {
  .pcOnly {
    display: none!important;
  }
  .spOnly {
    display: block;
  }
}
