@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
p,
a,
li,
dt,
dd,
th,
td {
  line-height: 2;
}

@media screen and (max-width: 960px) {
  p,
  a,
  li,
  dt,
  dd,
  th,
  td {
    line-height: 1.8;
  }
}

.header-content02 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 26px 54px;
}

@media screen and (max-width: 960px) {
  .header-content02 {
    padding: 13px 27px;
  }
}

.header-box01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.header-box01 .header-box-inner01 {
  width: calc((1470 / 1812) * 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.header-box01 .header-sub-box {
  width: calc((268 / 1812) * 100%);
}

.header-box01 .header-sub-box .g-nav-tel-pc img {
  width: 100%;
  max-width: 268px;
  margin: 0;
}

.menu-header-menu-container {
  width: calc((1100 / 1496) * 100%);
}

@media screen and (max-width: 1600px) {
  .menu-header-menu-container {
    width: 90%;
    margin: auto;
  }
}

.menu-header-menu-container .header-menu {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.menu-header-menu-container .header-menu li a {
  display: block;
  font-family: "Josefin Sans", sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 960px) {
  .menu-header-menu-container .header-menu li a {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

.menu-header-menu-container .header-menu li a span {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0;
  text-align: center;
  line-height: 1;
  margin-top: 10px;
}

@media screen and (max-width: 960px) {
  .menu-header-menu-container .header-menu li a span {
    font-size: clamp(12px, 0.7rem, 0.7rem);
  }
}

#mobile-nav {
  background: #fffdf8;
}

.mobile-nav-wrap .mobile-menu-list li a span {
  display: block;
}

.moblie-menu-tel-number {
  color: #bda474;
}

.moblie-menu-tel-icon path:first-of-type {
  stroke: #bda474;
}

.moblie-menu-tel-icon path:nth-of-type(2) {
  fill: #bda474;
}

.moblie-menu-time {
  color: #bda474;
}

.mobile-sns-icon-title p {
  color: #bda474 !important;
}

.mobile-sns-icon-title p span {
  color: #bda474 !important;
}

.mobile-sns-sub-nav.flex li a {
  color: #bda474 !important;
}

.mobile-sns-sub-nav.flex li svg path {
  fill: #bda474;
}

.g-sub-nav02 {
  position: fixed;
  top: 300px;
  right: 0;
  z-index: 999;
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 {
    top: unset;
    right: unset;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 .g-sub-nav-list.flex {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 .g-sub-nav-list.flex li {
    width: 50%;
  }
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 .g-sub-nav-list.flex li a {
    width: 100% !important;
    height: 60px !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: 2rem;
    gap: unset;
  }
}

.g-sub-nav02 .g-sub-nav-list.flex li a::before {
  margin: auto;
  margin-bottom: 8px;
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 .g-sub-nav-list.flex li a::before {
    margin: 0;
    margin-right: 10px;
  }
}

.g-sub-nav02 .g-sub-nav-list.flex li a:hover {
  color: #bda474;
}

@media screen and (max-width: 1400px) {
  .g-sub-nav02 .g-sub-nav-list.flex li:first-of-type {
    position: relative;
  }
  .g-sub-nav02 .g-sub-nav-list.flex li:first-of-type::after {
    content: "";
    width: 1px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    right: 0;
  }
}

.g-sub-nav02 .g-sub-nav-list.flex li:first-of-type a::before {
  content: "";
  display: block;
  width: 35px;
  height: 35px;
  background: url(../img/icon-instagram-white.png) no-repeat;
  background-size: contain;
}

@media screen and (max-width: 960px) {
  .g-sub-nav02 .g-sub-nav-list.flex li:first-of-type a::before {
    width: 17.5px;
    height: 17.5px;
  }
}

.g-sub-nav02 .g-sub-nav-list.flex li:first-of-type a:hover::before {
  background: url(../img/icon-instagram-gold.png) no-repeat;
  background-size: contain;
}

.g-sub-nav02 .g-sub-nav-list.flex li:nth-of-type(2) a::before {
  content: "";
  display: block;
  width: 37px;
  height: 35px;
  background: url(../img/icon-line-white.png) no-repeat;
  background-size: contain;
}

@media screen and (max-width: 960px) {
  .g-sub-nav02 .g-sub-nav-list.flex li:nth-of-type(2) a::before {
    width: 18.5px;
    height: 17.5px;
  }
}

.g-sub-nav02 .g-sub-nav-list.flex li:nth-of-type(2) a:hover::before {
  background: url(../img/icon-line-gold.png) no-repeat;
  background-size: contain;
}

.slider {
  position: relative;
}

.slider::after {
  content: "";
  display: block;
    width: 50%;
    height: 155px;
  background: url(/wp-content/uploads/2024/04/catch-copy.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
}
@media screen and (max-width: 800px) {
  .slider::after {
  width: 50%;
    height: 11%;
  }
}
@media screen and (max-width: 600px) {
    .slider::after {
        width: 73%;
        height: 16%;
    }
}

.home-section01 {
  padding-top: 130px;
  padding-bottom: 130px;
}

@media screen and (max-width: 960px) {
  .home-section01 {
    padding-top: 65px;
  }
}

@media screen and (max-width: 960px) {
  .home-section01 {
    padding-bottom: 65px;
  }
}

.news-list03 {
  margin-bottom: 58px;
}

@media screen and (max-width: 960px) {
  .news-list03 {
    margin-bottom: 29px;
  }
}

.news-list03 li {
  width: calc((300 / 1400) * 100%);
}

@media screen and (max-width: 1024px) {
  .news-list03 li {
    width: 100%;
    border-bottom: 1px solid #bda474;
  }
}

.news-list03 li .news-img {
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  margin-bottom: 16px;
}

@media screen and (max-width: 960px) {
  .news-list03 li .news-img {
    margin-bottom: 8px;
  }
}

@media screen and (max-width: 1024px) {
  .news-list03 li .news-img {
    width: 20%;
  }
  .news-list03 li .news-img img {
    width: auto;
    height: 100%;
  }
}

.news-list03 li .news-img a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

@media screen and (max-width: 1024px) {
  .news-list03 li .news-content {
    width: 70%;
  }
}

.news-list03 li .date-cat.flex {
  margin-bottom: 6px;
}

.news-list03 li .news-txt a {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 960px) {
  .news-list03 li .news-txt a {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

.title_insta {
  text-align: center;
  margin-bottom: 30px;
  color: #bda474;
  font-family: "Josefin Sans", sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  font-size: 3.4rem;
  letter-spacing: 0;
}

@media screen and (max-width: 960px) {
  .title_insta {
    margin-bottom: 15px;
  }
}

.title_insta img {
  display: block;
  width: 70px;
  height: auto;
  margin: auto;
  margin-bottom: 13px;
}

@media screen and (max-width: 960px) {
  .title_insta img {
    width: 35px;
  }
}

@media screen and (max-width: 960px) {
  .title_insta img {
    margin-bottom: 6.5px;
  }
}

@media screen and (max-width: 960px) {
  .title_insta {
    font-size: clamp(12px, 1.7rem, 1.7rem);
  }
}

.sbi .sbi-header {
  display: none;
}

.sbi #sbi_images {
  max-width: 1010px;
  background: #fff;
  margin: auto;
}

#sb_instagram.sbi_col_4 #sbi_images {
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  padding: 18px;
}

@media screen and (max-width: 960px) {
  #sb_instagram.sbi_col_4 #sbi_images {
    padding: 9px;
  }
}

#sb_instagram #sbi_load {
  display: none;
}

#slb_viewer_wrap
.slb_theme_slb_default
.slb_controls
.slb_slideshow
.slb_template_tag {
  display: none;
}

.home-section02 {
  background-color: #fffdf8;
  background-image: url(../img/bg-menu.png), url(../img/bg-costume-01.png), url(../img/bg-costume-02.png);
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: calc((416 / 1920) * 100vw) calc((347 / 1920) * 100vw), calc((348 / 1920) * 100vw) calc((514 / 1920) * 100vw), calc((366 / 1920) * 100vw) calc((466 / 1920) * 100vw);
  background-position: top 280px left 0, top 53% right 0, top 93% left 0;
  padding-top: 130px;
  padding-bottom: 155px;
}

@media screen and (max-width: 960px) {
  .home-section02 {
    padding-top: 65px;
  }
}

@media screen and (max-width: 960px) {
  .home-section02 {
    padding-bottom: 77.5px;
  }
}

@media screen and (max-width: 960px) {
  .home-section02 {
    background-size: calc((416 / 960) * 100vw) calc((347 / 960) * 100vw), calc((348 / 960) * 100vw) calc((514 / 960) * 100vw), calc((366 / 960) * 100vw) calc((466 / 960) * 100vw);
    background-position: top 80px left -20%, top 68% right 0, top 105% left 0;
  }
}

.home-section02 .menu {
  margin-bottom: 100px;
}

@media screen and (max-width: 960px) {
  .home-section02 .menu {
    margin-bottom: 50px;
  }
}

.menu-tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 35px;
  -webkit-column-gap: calc((54 / 1400) * 100%);
          column-gap: calc((54 / 1400) * 100%);
}

@media screen and (max-width: 960px) {
  .menu-tab {
    row-gap: 17.5px;
  }
}

.menu-tab li {
  width: calc((309 / 1400) * 100%);
  color: #9dc6cb;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  background: #fff;
  padding: 25px 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}

@media screen and (max-width: 960px) {
  .menu-tab li {
    font-size: clamp(12px, 0.9rem, 0.9rem);
  }
}

@media screen and (max-width: 960px) {
  .menu-tab li {
    padding: 12.5px 25px;
  }
}

@media screen and (max-width: 1200px) {
  .menu-tab li {
    width: 30%;
  }
}

@media screen and (max-width: 600px) {
  .menu-tab li {
    width: 48%;
  }
}

.menu-tab li.is-active {
  color: #fff;
  background: #9dc6cb;
}

.menu-tab li:hover {
  color: #fff;
  background: #9dc6cb;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  cursor: pointer;
}

.menu-tab.costume {
  width: calc((1038 / 1400) * 100%);
  margin: auto;
  margin-bottom: 90px;
}

@media screen and (max-width: 960px) {
  .menu-tab.costume {
    margin-bottom: 45px;
  }
}

@media screen and (max-width: 1200px) {
  .menu-tab.costume {
    width: 100%;
  }
}

.menu-tab.costume li {
  width: calc((309 / 1038) * 100%);
}

@media screen and (max-width: 1200px) {
  .menu-tab.costume li {
    width: 30%;
  }
}

@media screen and (max-width: 600px) {
  .menu-tab.costume li {
    width: 48%;
  }
}

.menu-panel li {
  display: none;
}

.menu-panel li.is-show {
  display: block;
}

.menu-meta {
  position: relative;
}

@media screen and (max-width: 960px) {
  .menu-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.menu-meta .menu-catArea {
  width: calc((812 / 1400) * 100%);
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  left: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 2;
}

@media screen and (max-width: 1400px) {
  .menu-meta .menu-catArea {
    position: unset;
  }
}

@media screen and (max-width: 960px) {
  .menu-meta .menu-catArea {
    width: 100%;
  }
}

.menu-meta .menu-catArea .menu-cat {
  background: #fff;
  width: 100%;
}

.menu-meta .menu-photoArea {
  width: calc((667 / 1400) * 100%);
  margin-left: auto;
  margin-right: 0;
  z-index: 1;
}

@media screen and (max-width: 960px) {
  .menu-meta .menu-photoArea {
    margin: auto;
    margin-bottom: 30px;
  }
}

.menu-costArea {
  margin-bottom: 80px;
}

@media screen and (max-width: 960px) {
  .menu-costArea {
    margin-bottom: 40px;
  }
}

.menu-costArea .menu-cost-title {
  margin-bottom: 54px;
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-title {
    margin-bottom: 27px;
  }
}

.menu-costArea .menu-cost-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 2rem;
  line-height: 1.75;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #bda474;
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-list li {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-list li {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-list li {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.menu-costArea .menu-cost-list li .name {
  letter-spacing: 0.2em;
}

@media screen and (max-width: 960px) {
  .menu-costArea .menu-cost-list li .name {
    display: block;
  }
}

.menu-costArea .menu-cost-list li .price {
  letter-spacing: 0.2em;
}

.menu-costArea .menu-cost-list li:last-of-type {
  margin-bottom: 0;
}

.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: calc((37.5 / 1400) * 100%);
          column-gap: calc((37.5 / 1400) * 100%);
  row-gap: 50px;
}

@media screen and (max-width: 960px) {
  .gallery {
    row-gap: 25px;
  }
}

@media screen and (max-width: 500px) {
  .gallery {
    row-gap: 12.5px;
  }
}

.gallery img {
  aspect-ratio: calc(230 / 320) !important;
}

.gallery br {
  display: none !important;
}

.gallery .gallery-item {
  display: block;
  width: calc((250 / 1400) * 100%) !important;
  padding: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  margin-top: 0 !important;
}

@media screen and (max-width: 960px) {
  .gallery .gallery-item {
    width: 31% !important;
  }
}

.gallery .gallery-item .gallery-caption {
  position: absolute;
  bottom: 30px;
  left: 0;
  width: 100%;
  padding: 15px 15px;
  font-family: "KoPub Batang";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  font-size: 2.6rem;
  background: rgba(255, 255, 255, 0.5);
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1;
}

@media screen and (max-width: 960px) {
  .gallery .gallery-item .gallery-caption {
    bottom: 15px;
  }
}

@media screen and (max-width: 960px) {
  .gallery .gallery-item .gallery-caption {
    padding: 7.5px 7.5px;
  }
}

@media screen and (max-width: 960px) {
  .gallery .gallery-item .gallery-caption {
    font-size: clamp(12px, 1.3rem, 1.3rem);
  }
}

@media screen and (max-width: 960px) {
  .gallery .gallery-item .gallery-caption {
    font-size: 1.1rem;
  }
}

.costume-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.costume-list li {
  display: block;
  width: calc((250 / 1400) * 100%);
  padding: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.costume-list li .costume-name {
  position: absolute;
  bottom: 30px;
  left: 0;
  width: 100%;
  padding: 15px 15px;
  font-family: "KoPub Batang";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  font-size: 2.6rem;
  background: rgba(255, 255, 255, 0.5);
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 960px) {
  .costume-list li .costume-name {
    bottom: 15px;
  }
}

@media screen and (max-width: 960px) {
  .costume-list li .costume-name {
    padding: 7.5px 7.5px;
  }
}

@media screen and (max-width: 960px) {
  .costume-list li .costume-name {
    font-size: clamp(12px, 1.3rem, 1.3rem);
  }
}

#slb_viewer_wrap
.slb_theme_slb_default
.slb_controls
.slb_slideshow
.slb_template_tag {
  display: none !important;
}

.home-section03 {
  padding-top: 130px;
  padding-bottom: 130px;
}

@media screen and (max-width: 960px) {
  .home-section03 {
    padding-top: 65px;
  }
}

@media screen and (max-width: 960px) {
  .home-section03 {
    padding-bottom: 65px;
  }
}

.com-list01-wrap .com-post-link {
  margin-top: 0;
}

.width1200 {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.com-list01 {
  margin-top: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.com-list01::before {
  content: "";
  display: block;
  width: 30%;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.com-list01 li {
  width: 30%;
  padding: 40px;
  background-color: #fff;
  position: relative;
  margin-bottom: 60px;
}

.com-list01-icon img {
  width: 50%;
  margin: 0 auto;
  display: block;
}

.com-list01-head {
  padding: 5px 10px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  margin: 15px 0;
  background-color: #bda474;
}

.com-list01-txt {
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 0;
}

@media screen and (max-width: 960px) {
  .com-list01-txt {
    font-size: clamp(12px, 0.7rem, 0.7rem);
  }
}

.com-list01-txt span {
  font-size: 1.2rem;
  font-weight: 500;
}

@media screen and (max-width: 960px) {
  .com-list01-txt span {
    font-size: clamp(12px, 0.6rem, 0.6rem);
  }
}

.com-list01-txt a {
  font-size: 1.4rem;
  color: #bda474;
  font-weight: 500;
  text-decoration: underline;
}

@media screen and (max-width: 960px) {
  .com-list01-txt a {
    font-size: clamp(12px, 0.7rem, 0.7rem);
  }
}

.com-list01-nm {
  position: absolute;
  top: -55px;
  left: 25px;
  color: #bda474;
  font-weight: bold;
  font-size: 70px;
  font-family: "Carattere", cursive;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 100;
}

@media screen and (max-width: 1200px) {
  .width1200 {
    padding: 0 15px;
  }
}

@media screen and (max-width: 1024px) {
  .com-list01 li {
    width: 48%;
    padding: 40px;
    margin-bottom: 40px;
  }
  .com-list01-nm {
    top: -40px;
    left: 25px;
    font-size: 50px;
  }
}

@media screen and (max-width: 820px) {
  .com-list01 li {
    padding: 30px;
  }
  .com-list01-icon img {
    margin: 0 auto;
  }
}

@media screen and (max-width: 500px) {
  .com-list01 li {
    width: 100%;
  }
  .com-list01 li:last-of-type {
    margin-bottom: 0;
  }
}

.swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.swiper .swiper-wrapper img {
  height: auto;
  width: 100%;
}

.home-section04 {
  background-color: #fffdf8;
  padding-top: 140px;
  padding-bottom: 50px;
  background-image: url(../img/bg_concept.png), url(../img/bg_reason.png);
  background-repeat: no-repeat, no-repeat;
  background-size: 22.13542vw 24.94792vw, 15.20833vw 31.04167vw;
  background-position: top 220px right 0, bottom 230px left 0;
}

@media screen and (max-width: 960px) {
  .home-section04 {
    padding-top: 70px;
  }
}

@media screen and (max-width: 960px) {
  .home-section04 {
    padding-bottom: 25px;
  }
}

@media screen and (max-width: 1400px) {
  .home-section04 {
    background-position: top 220px right 0, bottom 50% left 0;
  }
}

@media screen and (max-width: 1100px) {
  .home-section04 {
    background-position: top 220px right 0, bottom 45% left 0;
  }
}

@media screen and (max-width: 960px) {
  .home-section04 {
    background-size: 44.27083vw 49.89583vw, 30.41667vw 62.08333vw;
    background-position: top 50px right -60px, bottom 86% left -35px;
  }
}

@media screen and (max-width: 600px) {
  .home-section04 {
    background-position: top 50px right -60px, bottom 80% left -35px;
  }
}

.concept-wrap {
  margin-bottom: 48px;
}

@media screen and (max-width: 960px) {
  .concept-wrap {
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 960px) {
  .concept-wrap {
    margin-bottom: 40px;
  }
}

.txtArea_deco {
  max-width: 1036px;
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 960px) {
  .txtArea_deco {
    width: 80%;
  }
}

.reason-wrap {
  margin-bottom: 80px;
}

@media screen and (max-width: 960px) {
  .reason-wrap {
    margin-bottom: 40px;
  }
}

.reason-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 960px) {
  .reason-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.reason-list li {
  width: calc((422 / 1400) * 100%);
}

@media screen and (max-width: 960px) {
  .reason-list li {
    width: 100%;
    margin-bottom: 30px;
  }
}

.reason-img {
  margin-bottom: 28px;
}

@media screen and (max-width: 960px) {
  .reason-img {
    margin-bottom: 14px;
  }
}

@media screen and (max-width: 960px) {
  .reason-img {
    width: 100%;
  }
}

.reason-title {
  color: #fff;
  font-size: 2.07rem;
  font-weight: 700;
  line-height: 122.727%;
  text-align: center;
  background: #9dc6cb;
  padding: 24px 14px;
  margin-bottom: 28px;
}

@media screen and (max-width: 960px) {
  .reason-title {
    font-size: clamp(12px, 1.035rem, 1.035rem);
  }
}

@media screen and (max-width: 960px) {
  .reason-title {
    padding: 12px 7px;
  }
}

@media screen and (max-width: 960px) {
  .reason-title {
    margin-bottom: 14px;
  }
}

.reason-txt {
  font-size: 1.7rem;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 960px) {
  .reason-txt {
    font-size: clamp(12px, 0.85rem, 0.85rem);
  }
}

.home-section05 {
  padding-top: 150px;
  padding-bottom: 130px;
}

@media screen and (max-width: 960px) {
  .home-section05 {
    padding-top: 75px;
  }
}

@media screen and (max-width: 960px) {
  .home-section05 {
    padding-bottom: 65px;
  }
}

.home-section05 .title01 {
  margin-bottom: 60px;
}

@media screen and (max-width: 960px) {
  .home-section05 .title01 {
    margin-bottom: 30px;
  }
}

.home-section06 {
  background-color: #fffdf8;
  background-image: url(../img/bg_blog.png);
  background-repeat: no-repeat;
  background-size: 21.04167vw 35.57292vw;
  background-position: bottom -100px right 5.20833vw;
  padding-top: 130px;
  padding-bottom: 160px;
}

@media screen and (max-width: 960px) {
  .home-section06 {
    background-size: 42.08333vw 71.14583vw;
  }
}

@media screen and (max-width: 960px) {
  .home-section06 {
    padding-top: 65px;
  }
}

@media screen and (max-width: 960px) {
  .home-section06 {
    padding-bottom: 80px;
  }
}

@media screen and (max-width: 960px) {
  .home-section06 {
    background-position: bottom -50px right 10.41667vw;
  }
}

.news-list {
  margin-bottom: 60px;
}

@media screen and (max-width: 960px) {
  .news-list {
    margin-bottom: 30px;
  }
}

.news-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
  padding-bottom: 15px;
  border-bottom: solid 1px #bda474;
}

@media screen and (max-width: 960px) {
  .news-list li {
    padding-bottom: 7.5px;
  }
}

.news-list li:not(:first-of-type) {
  margin-top: 21px;
}

@media screen and (max-width: 960px) {
  .news-list li:not(:first-of-type) {
    margin-top: 10.5px;
  }
}

.news-list li a:hover {
  opacity: 0.7;
}

.news-time {
  font-size: 2.2rem;
  line-height: 290.919%;
}

@media screen and (max-width: 960px) {
  .news-time {
    font-size: clamp(12px, 1.1rem, 1.1rem);
  }
}

.news-title {
  font-size: 2.2rem;
  line-height: 290.919%;
}

@media screen and (max-width: 960px) {
  .news-title {
    font-size: clamp(12px, 1.1rem, 1.1rem);
  }
}

.contact {
  background: #fffdf8;
}

.contact .sub-header {
  height: calc((676 / 1920) * 100vw);
}

.contact .sub-header-txt {
  color: #2f2f2f;
  font-size: 3.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  background: rgba(255, 255, 255, 0.5);
  padding: 20px;
  -webkit-transform: translateY(33px);
          transform: translateY(33px);
}

@media screen and (max-width: 960px) {
  .contact .sub-header-txt {
    font-size: clamp(12px, 1.6rem, 1.6rem);
  }
}

@media screen and (max-width: 960px) {
  .contact .sub-header-txt {
    padding: 10px;
  }
}

.contact .message .message-txt {
  text-align: center;
  font-size: 2rem;
  line-height: 240%;
  letter-spacing: 0.05em;
  margin-bottom: 66px;
}

@media screen and (max-width: 960px) {
  .contact .message .message-txt {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

@media screen and (max-width: 960px) {
  .contact .message .message-txt {
    margin-bottom: 33px;
  }
}

.contact .message .message-bnr {
  display: block;
  width: 500px;
  height: 160px;
  margin: auto;
  margin-bottom: 80px;
}

@media screen and (max-width: 960px) {
  .contact .message .message-bnr {
    width: 250px;
  }
}

@media screen and (max-width: 960px) {
  .contact .message .message-bnr {
    height: 80px;
  }
}

@media screen and (max-width: 960px) {
  .contact .message .message-bnr {
    margin-bottom: 40px;
  }
}

.contact .title02 {
  margin-bottom: 50px;
}

@media screen and (max-width: 960px) {
  .contact .title02 {
    margin-bottom: 25px;
  }
}

.contact input[type="text"],
.contact textarea,
.contact input[type="email"],
.contact input[type="tel"] {
  background: #f5f1e7;
}

.contact .contact-form01 tr:last-of-type th,
.contact .contact-form01 tr:last-of-type td {
  border-bottom: none;
}

.contact .contact-form01 th {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 175%;
  width: calc((376 / 1000) * 100%);
  padding: 30px 0px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 th {
    font-size: clamp(12px, 1.1rem, 1.1rem);
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 th {
    padding: 15px 0px;
  }
}

@media screen and (max-width: 820px) {
  .contact .contact-form01 th {
    width: 100%;
    border-bottom: none;
  }
}

.contact .contact-form01 td {
  width: calc((624 / 1000) * 100%);
  padding: 30px 0px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 td {
    padding: 15px 0px;
  }
}

@media screen and (max-width: 820px) {
  .contact .contact-form01 td {
    width: 100%;
  }
}

.contact .contact-form01 .wpcf7-list-item {
  margin: 0;
}

.contact .contact-form01 .wpcf7-list-item-label {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 175%;
  color: #bda474;
  margin-right: 30px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-list-item-label {
    font-size: clamp(12px, 1.1rem, 1.1rem);
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-list-item-label {
    margin-right: 15px;
  }
}

.contact .contact-form01 .wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 20px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-radio {
    row-gap: 10px;
  }
}

.contact .contact-form01 .wpcf7-radio input[type="radio"] {
  width: 28px !important;
  height: 28px !important;
  background: #fff;
  border: solid 1px #e8e8e8 !important;
  position: relative;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-radio input[type="radio"] {
    width: 15.4px !important;
    height: 15.4px !important;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
}

.contact .contact-form01 .wpcf7-radio input[type="radio"]:checked:before {
  width: 15px !important;
  height: 15px !important;
  background: #bda474;
  position: absolute;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-radio input[type="radio"]:checked:before {
    width: 8.25px !important;
    height: 8.25px !important;
  }
}

.contact .contact-form01 .wpcf7-textarea {
  height: 250px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .wpcf7-textarea {
    height: 125px;
  }
}

.contact .contact-form01 .required {
  padding: 5px 10px;
  color: #fff;
  background-color: #bda474;
  font-size: 1.2rem;
  font-weight: 700;
  margin-left: 10px;
  border-radius: 5px;
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .required {
    padding: 2.5px 5px;
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .required {
    margin-left: 5px;
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-form01 .required {
    font-size: 10px;
  }
}

.contact .privacy-check input[type="checkbox"] {
  width: 28px !important;
  height: 28px !important;
  background: #fff;
  border: solid 1px #e8e8e8 !important;
}

@media screen and (max-width: 960px) {
  .contact .privacy-check input[type="checkbox"] {
    width: 22.4px !important;
    height: 22.4px !important;
  }
}

.contact .privacy-check input[type="checkbox"]:checked {
  background: #bda474;
}

.contact .privacy-check input[type="checkbox"]:checked:before {
  left: 3px;
  top: 18px;
}

@media screen and (max-width: 960px) {
  .contact .privacy-check input[type="checkbox"]:checked:before {
    left: 0px;
    top: 13px;
  }
}

.contact .privacy-check input[type="checkbox"]:checked:after {
  left: 12px;
  top: 18px;
}

@media screen and (max-width: 960px) {
  .contact .privacy-check input[type="checkbox"]:checked:after {
    left: 9px;
    top: 13px;
  }
}

.contact .privacy-check .wpcf7-list-item-label {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 175%;
  color: #bda474;
}

@media screen and (max-width: 960px) {
  .contact .privacy-check .wpcf7-list-item-label {
    font-size: clamp(12px, 1.1rem, 1.1rem);
  }
}

.contact .privacy-check a {
  display: block;
  font-size: 2rem;
  font-weight: 500;
  line-height: 175%;
}

@media screen and (max-width: 960px) {
  .contact .privacy-check a {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

.contact .contact-btn {
  position: relative;
  width: 480px;
  height: 120px;
  margin: auto;
}

@media screen and (max-width: 960px) {
  .contact .contact-btn {
    width: 240px;
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-btn {
    height: 60px;
  }
}

.contact .contact-btn::after {
  content: "";
  content: "";
  display: block;
  width: 26px;
  height: 24px;
  background: url(../img/btn-arrow-yajirusi-white.svg) no-repeat;
  background-size: contain;
  position: absolute;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 37px;
}

@media screen and (max-width: 960px) {
  .contact .contact-btn::after {
    width: 13px;
    height: 12px;
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-btn::after {
    right: 18.5px;
  }
}

.contact .contact-btn input[type="submit"],
.contact .contact-btn input[type="button"] {
  width: 100%;
  height: 100%;
  background: #9dc6cb;
  border-radius: 999px;
  color: #fff;
  font-size: 3.2rem;
  font-size: 32px;
  font-weight: 700;
  line-height: 120px;
  border: solid 1px #9dc6cb;
  padding: 0;
}

@media screen and (max-width: 960px) {
  .contact .contact-btn input[type="submit"],
  .contact .contact-btn input[type="button"] {
    font-size: clamp(12px, 1.6rem, 1.6rem);
  }
}

@media screen and (max-width: 960px) {
  .contact .contact-btn input[type="submit"],
  .contact .contact-btn input[type="button"] {
    line-height: 60px;
  }
}

.contact section {
  padding-bottom: 150px;
}

@media screen and (max-width: 960px) {
  .contact section {
    padding-bottom: 75px;
  }
}

.single-menu .menu-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.single-menu .menu-meta .menu-catArea {
  position: unset;
  width: 100%;
}

.single-menu .menu-meta .menu-catArea .menu-cat {
  background: none;
}

.single-menu .menu-meta .menu-photoArea {
  width: 70%;
  margin: auto;
  margin-bottom: 60px;
}

@media screen and (max-width: 960px) {
  .single-menu .menu-meta .menu-photoArea {
    margin-bottom: 30px;
  }
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.btn {
  font-size: 2rem;
}

@media screen and (max-width: 960px) {
  .btn {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

.btn01 {
  margin-bottom: 69px;
}

@media screen and (max-width: 960px) {
  .btn01 {
    margin-bottom: 34.5px;
  }
}

.btn01 .btn-arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 7px;
}

.btn01:hover .btn-arrow path {
  stroke: #9dc6cb;
}

.width-full {
  width: 100%;
}

.box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 960px) {
  .box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.box .box-item {
  width: calc((650 / 1400) * 100%);
}

@media screen and (max-width: 960px) {
  .box .box-item {
    width: 100%;
    margin-bottom: 50px;
  }
}

.title01 {
  font-family: "Josefin Sans", sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  font-size: 5rem;
  letter-spacing: 0;
  text-align: center;
  color: #bda474;
  margin-bottom: 90px;
}

@media screen and (max-width: 960px) {
  .title01 {
    font-size: clamp(12px, 2.5rem, 2.5rem);
  }
}

@media screen and (max-width: 960px) {
  .title01 {
    margin-bottom: 45px;
  }
}

.title01 span {
  display: block;
  color: #bda474;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0;
  position: relative;
  padding-top: 10px;
  margin-top: 10px;
}

@media screen and (max-width: 960px) {
  .title01 span {
    font-size: clamp(12px, 1rem, 1rem);
  }
}

@media screen and (max-width: 960px) {
  .title01 span {
    padding-top: 5px;
  }
}

@media screen and (max-width: 960px) {
  .title01 span {
    margin-top: 5px;
  }
}

.title01 span::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 20px;
  height: 1px;
  content: "";
  background: #bda474;
}

.title02 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 60px;
  color: #bda474;
  font-size: 2.6rem;
  line-height: calc(57 / 26);
  padding-left: 92px;
  padding-right: 92px;
  position: relative;
  margin: auto;
  margin-bottom: 80px;
}

@media screen and (max-width: 960px) {
  .title02 {
    height: 30px;
  }
}

@media screen and (max-width: 960px) {
  .title02 {
    font-size: clamp(12px, 1.3rem, 1.3rem);
  }
}

@media screen and (max-width: 960px) {
  .title02 {
    padding-left: 46px;
  }
}

@media screen and (max-width: 960px) {
  .title02 {
    padding-right: 46px;
  }
}

@media screen and (max-width: 960px) {
  .title02 {
    margin-bottom: 40px;
  }
}

.title02::before {
  content: "";
  display: block;
  width: 25px;
  height: 60px;
  background: url(../img/deco_title_border_x.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
}

@media screen and (max-width: 960px) {
  .title02::before {
    width: 12.5px;
    height: 30px;
  }
}

.title02::after {
  content: "";
  display: block;
  width: 25px;
  height: 60px;
  background: url(../img/deco_title_border_x.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

@media screen and (max-width: 960px) {
  .title02::after {
    width: 12.5px;
    height: 30px;
  }
}

.title04 {
  position: relative;
  margin-bottom: 31px;
}

@media screen and (max-width: 960px) {
  .title04 {
    margin-bottom: 15.5px;
  }
}

.title04 span {
  display: block;
  width: calc((214 / 1400) * 100%);
  font-family: "Josefin Sans", sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  font-size: 6.163rem;
  color: #bda474;
  line-height: 1;
  background: #fffdf8;
  position: relative;
  z-index: 2;
  white-space: nowrap;
}

@media screen and (max-width: 960px) {
  .title04 span {
    font-size: clamp(12px, 3.0815rem, 3.0815rem);
  }
}

@media screen and (max-width: 600px) {
  .title04 span {
    width: 30%;
  }
}

.title04::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #bda474;
  position: absolute;
  top: 23px;
  top: 23px;
  left: 0;
  z-index: 1;
}

@media screen and (max-width: 960px) {
  .title04::after {
    top: 11.5px;
  }
}

.txtArea_deco {
  background-color: #fff;
  background-image: url(../img/deco_frame_01.png), url(../img/deco_frame_02.png), url(../img/deco_frame_03.png), url(../img/deco_frame_04.png);
  background-size: 41px 37px, 41px 37px, 41px 37px, 41px 37px;
  background-position: top 20px left 20px, top 20px right 20px, bottom 20px right 20px, bottom 20px left 20px;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  padding: 66px 63px 88px 72px;
}

@media screen and (max-width: 960px) {
  .txtArea_deco {
    background-size: 21px 19px, 21px 19px, 21px 19px, 21px 19px;
    background-position: top 10px left 10px, top 10px right 10px, bottom 10px right 10px, bottom 10px left 10px;
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    padding: 33px 31px 44px 36px;
  }
}

#breadcrumbs {
  background: #fdfaf5;
  margin-bottom: 63px;
}

@media screen and (max-width: 960px) {
  #breadcrumbs {
    margin-bottom: 31.5px;
  }
}

#breadcrumbs ul li {
  letter-spacing: 0.05em;
}

@media screen and (max-width: 960px) {
  #page-top img {
    max-height: 60px;
  }
}

.archive-info-img {
  aspect-ratio: calc(600 / 400);
}

.cat {
  display: block;
  background-color: #bda474;
  color: #fff;
  font-weight: 700;
  font-size: 1.2rem;
  margin-right: 10px;
  padding: 5px 8px;
  border-radius: 5px;
  border: 1px solid #bda474;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  line-height: 1em;
}

.tax-menu_cat #breadcrumbs li:nth-of-type(3), .tax-menu_cat #breadcrumbs li:nth-of-type(4) {
  display: none;
}

.elementor-widget-heading .elementor-heading-title {
  color: #bda474 !important;
}

.elementor-element .elementor-button {
  background-color: #bda474 !important;
}

.elementor-element .elementor-button span {
  color: #fff !important;
}

.elementor-widget-image-box .elementor-image-box-title {
  color: #bda474 !important;
}
