@charset "UTF-8";
/* CSS Document */
/*
Theme Name: シエルエトワール
*/
/*Font Weight Medium 500*/
* {
  margin: 0;
  padding: 0;
}

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

ul {
  list-style: none;
}

li {
  list-style: none;
}

h1 {
  font-size: 1em;
  font-weight: 300;
}

h2 {
  font-weight: 300;
}

/* =======================================================================================================================
　　　　　　　　　全体
======================================================================================================================= */
body {
  /*  Light 300	  Medium500*/
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 1vw;
  line-height: 2em;
  letter-spacing: 0.1em;
  color: #3e3e3e;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 2vw;
  }
}
@media screen and (max-width: 480px) {
  body {
    font-size: 3vw;
  }
}
body.no_scroll {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

/* =======================================================================================================================
　　　　　　　　　固定ページ共通パーツ
======================================================================================================================= */
/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 5em 0;
}
@media screen and (max-width: 480px) {
  .sec {
    padding: 2.5em 0;
  }
}

.innerbox {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 0 7.5em;
}
@media screen and (max-width: 1350px) {
  .innerbox {
    padding: 0 5em;
  }
}
@media screen and (max-width: 768px) {
  .innerbox {
    padding: 0 2.5em;
  }
}
@media screen and (max-width: 480px) {
  .innerbox {
    padding: 0 1.5em;
  }
}

#wrapper {
  overflow: hidden;
  margin-top: 0em;
}

#single-contents, #page-contents {
  width: 65%;
  margin: auto;
  margin-bottom: 5em;
}
@media screen and (max-width: 768px) {
  #single-contents, #page-contents {
    width: 85%;
  }
}
@media screen and (max-width: 480px) {
  #single-contents, #page-contents {
    width: 90%;
  }
}
#single-contents .wrap-title, #page-contents .wrap-title {
  border-bottom: solid 1px;
  padding: 0 0 1.5em 0;
  margin-bottom: 3em;
}
#single-contents .wrap-title .post-date, #page-contents .wrap-title .post-date {
  letter-spacing: 0.2rem;
  padding-bottom: 0.75em;
  font-size: 1.25rem;
}
#single-contents .wrap-title h1, #page-contents .wrap-title h1 {
  font-size: 1.75rem;
  letter-spacing: 0.2rem;
  font-weight: 500;
  line-height: 2.2rem;
}
@media screen and (max-width: 480px) {
  #single-contents .wrap-title h1, #page-contents .wrap-title h1 {
    font-size: 1.5rem;
  }
}
#single-contents .content p, #page-contents .content p {
  font-size: 1.12rem;
  line-height: 2rem;
  letter-spacing: 0.15rem;
}
@media screen and (max-width: 480px) {
  #single-contents .content p, #page-contents .content p {
    font-size: 1rem;
  }
}
#single-contents .content figure, #page-contents .content figure {
  margin-bottom: 2rem;
}
#single-contents .content h2, #page-contents .content h2 {
  font-size: 1.75rem;
  font-weight: 700;
  padding: 2rem 0 1.25rem 0;
  line-height: 1.75em;
}
@media screen and (max-width: 480px) {
  #single-contents .content h2, #page-contents .content h2 {
    font-size: 1.5rem !important;
  }
}
#single-contents .content h3, #page-contents .content h3 {
  font-size: 1.5rem;
  font-weight: 700;
  padding: 2rem 0 1.25rem 0;
  line-height: 1.75em;
}
@media screen and (max-width: 480px) {
  #single-contents .content h3, #page-contents .content h3 {
    font-size: 1.1rem !important;
  }
}
#single-contents .content h4, #page-contents .content h4 {
  font-size: 1.35rem;
  font-weight: 700;
  padding: 2rem 0 1.25rem 0;
  line-height: 1.75em;
}
@media screen and (max-width: 480px) {
  #single-contents .content h4, #page-contents .content h4 {
    font-size: 1.1rem;
  }
}
#single-contents .content ul, #page-contents .content ul {
  font-size: 1.12rem;
  line-height: 2rem;
  letter-spacing: 0.15rem;
}
@media screen and (max-width: 480px) {
  #single-contents .content ul, #page-contents .content ul {
    font-size: 1rem;
  }
}
@media screen and (max-width: 480px) {
  #single-contents .br-none br, #page-contents .br-none br {
    display: none;
  }
}
#single-contents .padding-none, #page-contents .padding-none {
  padding: 0 !important;
}

.wp-block-ub-content-toggle-accordion-title {
  font-size: 1.1rem !important;
  padding: 2rem !important;
}
@media screen and (max-width: 480px) {
  .wp-block-ub-content-toggle-accordion-title {
    padding: 2rem !important;
  }
}

.wp-block-ub-tabbed-content-tabs-content {
  padding: 0.5em !important;
  width: auto !important;
}

.wp-block-image.aligncenter,
.wp-block-image .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-image.alignleft,
.wp-block-image .alignleft {
  display: block;
  float: left;
}

.wp-block-image.alignright,
.wp-block-image .alignright {
  display: block;
  float: right;
}

.wp-block-ub-content-toggle-accordion-toggle-wrap {
  align-items: center !important;
  padding-top: 0 !important;
}

.wp-block-ub-content-toggle-accordion-content-wrap p {
  padding-bottom: 0 !important;
}

/* 欧文フォント */
.eg {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}

/* 日本語フォント */
.jp {
  /*  Light 300	  Medium500*/
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

/* 文字寄せ */
.center {
  text-align: center;
}

.right {
  text-align: right;
}

/* ノートパソコン改行 */
@media screen and (max-width: 1350px) {
  .npbr {
    display: block;
  }
}

/* タブレット改行 */
@media screen and (max-width: 768px) {
  .tbbr {
    display: block;
  }
}

/* スマホ改行 */
@media screen and (max-width: 480px) {
  .spbr {
    display: block;
  }
}

/* スマホ非表示 */
@media screen and (max-width: 480px) {
  .spnone {
    display: none;
  }
}

/* 見出し */
/* 段落 */
p {
  padding-bottom: 2em;
}

/* 注釈 */
.note {
  padding-left: 1em;
  text-indent: -1em;
  color: #181b39;
  font-size: 0.85em;
  line-height: 1.25em;
}
.note::before {
  content: "※";
}

/* 画像 */
img {
  vertical-align: bottom;
}
img.img100 {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  width: 100%;
  height: 100%;
  font-family: "object-fit: cover; object-position: 50% 50%;";
}

.imgbox {
  line-height: 0;
}

/* =======================================================================================================================
　　　　　　　　　SVG
======================================================================================================================= */
/* 読み込み遅延 */
img {
  transition: 1s ease;
  backface-visibility: hidden;
}
img.lazyload {
  opacity: 0;
  filter: alpha(opacity=0);
}
img.lazyloaded {
  opacity: 1;
  filter: alpha(opacity=100);
}

/* 読み込み遅延 */
.lazyload0, .lazyload1, .lazyload2, .lazyload3, .lazyload4 {
  transition: 1s ease;
  backface-visibility: hidden;
  opacity: 0;
  filter: alpha(opacity=0);
}
.lazyload0.lazyloaded, .lazyload1.lazyloaded, .lazyload2.lazyloaded, .lazyload3.lazyloaded, .lazyload4.lazyloaded {
  transition: 1s ease;
  backface-visibility: hidden;
  opacity: 1;
  filter: alpha(opacity=100);
}

.lazyload1 {
  transform: translate(0, 2.5em);
}
.lazyload1.lazyloaded {
  transform: translate(0, 0);
}

.lazyload2 {
  transform: translate(-2.5em, 0);
}
.lazyload2.lazyloaded {
  transform: translate(0, 0);
}

.lazyload3 {
  transform: translate(2.5em, 0);
}
.lazyload3.lazyloaded {
  transform: translate(0, 0);
}

.lazyload4 {
  transform: translate(0, -2.5em);
}
.lazyload4.lazyloaded {
  transform: translate(0, 0);
}

/* トップページ内コンテンツの場合 */
#front-page section .lazyload0.lazyloaded, #front-page section .lazyload1.lazyloaded, #front-page section .lazyload2.lazyloaded, #front-page section .lazyload3.lazyloaded, #front-page section .lazyload4.lazyloaded {
  opacity: 0;
  filter: alpha(opacity=0);
}
#front-page section .lazyload1.lazyloaded {
  transform: translate(0, 2.5em);
}
#front-page section .lazyload2.lazyloaded {
  transform: translate(-2.5em, 0);
}
#front-page section .lazyload3.lazyloaded {
  transform: translate(2.5em, 0);
}
#front-page section .lazyload4.lazyloaded {
  transform: translate(0, -2.5em);
}
#front-page section.on .lazyload0.lazyloaded, #front-page section.on .lazyload1.lazyloaded, #front-page section.on .lazyload2.lazyloaded, #front-page section.on .lazyload3.lazyloaded, #front-page section.on .lazyload4.lazyloaded {
  opacity: 1;
  filter: alpha(opacity=100);
}
#front-page section.on .lazyload1.lazyloaded {
  transform: translate(0, 0);
}
#front-page section.on .lazyload2.lazyloaded {
  transform: translate(0, 0);
}
#front-page section.on .lazyload3.lazyloaded {
  transform: translate(0, 0);
}
#front-page section.on .lazyload4.lazyloaded {
  transform: translate(0, 0);
}
@media screen and (min-width: 1921px) and (max-aspect-ratio: 100/53) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #front-page section.onsp .lazyload1.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload2.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload3.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload4.lazyloaded {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 1920px) and (min-width: 1351px) and (max-aspect-ratio: 2/1) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #front-page section.onsp .lazyload1.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload2.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload3.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload4.lazyloaded {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 1350px) and (min-width: 769px) and (max-aspect-ratio: 25/13) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #front-page section.onsp .lazyload1.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload2.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload3.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload4.lazyloaded {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-aspect-ratio: 25/37) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #front-page section.onsp .lazyload1.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload2.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload3.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload4.lazyloaded {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 480px) and (max-aspect-ratio: 35/68) {
  #front-page section.onsp .lazyload0.lazyloaded, #front-page section.onsp .lazyload1.lazyloaded, #front-page section.onsp .lazyload2.lazyloaded, #front-page section.onsp .lazyload3.lazyloaded, #front-page section.onsp .lazyload4.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #front-page section.onsp .lazyload1.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload2.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload3.lazyloaded {
    transform: translate(0, 0);
  }
  #front-page section.onsp .lazyload4.lazyloaded {
    transform: translate(0, 0);
  }
}

/* リンク */
a {
  text-decoration: none;
  color: #3e3e3e;
  transition: 0.3s ease;
  backface-visibility: hidden;
}
a img {
  transition: 0.3s ease;
  backface-visibility: hidden;
}
a:hover {
  color: #8bc894;
  opacity: 0.6;
}
a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

/* ================= フォーム ============================================================ */
/* =============== コンタクトフォーム（全ページ共通） ========================================================= */
.formbox {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 3.57em 0;
  background: white;
}
@media screen and (max-width: 768px) {
  .formbox {
    padding: 1.5em 0;
  }
}
.formbox h3 {
  font-size: 2em;
  line-height: 1.7em;
  padding-bottom: 0.5em;
}
.formbox p {
  padding-bottom: 2em;
}

/* contact form 7 ------------------------------------------- */
.wpcf7-form .formctt {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.formname {
  width: 16em;
  font-weight: 700;
  text-align: right;
  padding: 1em 0.5em 0 0;
  line-height: 1em;
}
@media screen and (max-width: 480px) {
  .formname {
    width: 100%;
    text-align: left;
    padding: 0.5em 0;
  }
}
.formname::after {
  content: "：";
}

span .formname {
  padding-top: 1.5em;
}

.wpcf7-form-control-wrap {
  flex: 1;
}
@media screen and (max-width: 480px) {
  .wpcf7-form-control-wrap {
    width: 100%;
    flex: none;
  }
}

div.wpcf7 {
  text-align: left;
}

.wpcf7-form {
  /*送信ボタン*/
}
.wpcf7-form p {
  padding: 0 0 2em 0;
}
.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel],
.wpcf7-form input[type=date],
.wpcf7-form textarea {
  /*  Light 300	  Medium500*/
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 1em;
  line-height: 1.7em;
  box-sizing: border-box;
  padding: 0.75em 1.5em;
  border: #8bc894 solid 0.1em;
  /* 確認ページ */
}
@media screen and (max-width: 1500px) {
  .wpcf7-form input[type=text],
  .wpcf7-form input[type=email],
  .wpcf7-form input[type=tel],
  .wpcf7-form input[type=date],
  .wpcf7-form textarea {
    padding: 0.5em 1em;
  }
}
.wpcf7-form input[type=text].wpcf7c-conf,
.wpcf7-form input[type=email].wpcf7c-conf,
.wpcf7-form input[type=tel].wpcf7c-conf,
.wpcf7-form input[type=date].wpcf7c-conf,
.wpcf7-form textarea.wpcf7c-conf {
  background: #fff;
  border: none;
  border-radius: none;
}
.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel],
.wpcf7-form textarea {
  width: 100% !important;
}
.wpcf7-form .yubin input[type=text] {
  max-width: 180px;
}
.wpcf7-form label .yubin {
  position: relative;
  top: 1em;
}
.wpcf7-form label .yubin br {
  display: none;
}
.wpcf7-form input[type=submit],
.wpcf7-form input[type=button],
.wpcf7-form .resetbtn {
  width: 10em !important;
  /*  Light 300	  Medium500*/
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 1.2em;
  font-weight: 700;
  letter-spacing: 1em;
  text-indent: 1em;
  box-sizing: border-box;
  padding: 0.5em 1em;
  margin: auto;
  display: flex;
  text-align: center;
  justify-content: center;
  transition: 0.3s ease;
  backface-visibility: hidden;
  border: none;
  background: #181b39;
  border: solid 1px #181b39;
  color: white;
}
.wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=button]:hover,
.wpcf7-form .resetbtn:hover {
  cursor: pointer;
  background-color: white;
  color: #181b39;
}
@media screen and (max-width: 480px) {
  .wpcf7-form input[type=submit],
  .wpcf7-form input[type=button],
  .wpcf7-form .resetbtn {
    padding: 0.5em 0.5em;
    width: 8em !important;
    margin: 0 0.5em;
  }
}
.wpcf7-form .resetbtn {
  letter-spacing: 0;
  text-indent: 0;
  background: #8bc894;
}
.wpcf7-form .wpcf7c-btn-back {
  background: #8bc894;
}

.contactformarea .form {
  width: 100%;
  margin: 0 auto 0 auto;
}

/* ボタンリスト */
.btnlist {
  list-style: none inside;
  text-align: center;
}
.btnlist li {
  display: inline-block;
}

/* 確認ページ */
input[type=hidden] {
  position: relative;
  z-index: 100;
  display: inline-block;
  background: #fff !important;
  border: #fff solid 2px;
}

div.wpcf7-mail-sent-ok {
  border: 2px solid #181b39;
}

div.wpcf7 .ajax-loader {
  width: 0;
  height: 0;
}

@keyframes onAutoFillStart {}
input:-webkit-autofill {
  animation-name: onAutoFillStart;
  -webkit-transition: background-color 50000s ease-in-out 0s;
  transition: background-color 50000s ease-in-out 0s;
}

input:-webkit-autofill-selected {
  animation-name: onAutoFillStart;
  -webkit-transition: background-color 50000s ease-in-out 0s;
  transition: background-color 50000s ease-in-out 0s;
}

input:-internal-autofill-selected {
  background-color: rgba(232, 240, 254, 0) !important;
}

.wpcf7-form {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 2em 3em 2em 0em;
}
@media screen and (max-width: 480px) {
  .wpcf7-form {
    padding: 2em 3em 2em 2em;
  }
}
.wpcf7-form p, .wpcf7-form ul {
  position: relative;
  z-index: 2;
}
.wpcf7-form fieldset {
  border: none;
  color: #8bc894;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 0 2em 8.5em;
}
@media screen and (max-width: 480px) {
  .wpcf7-form fieldset {
    padding: 0 0 2em 0em;
  }
}
.wpcf7-form fieldset legend {
  display: contents;
  font-weight: 700;
}
.wpcf7-form fieldset p {
  display: contents;
}
@media screen and (max-width: 768px) {
  .wpcf7-form fieldset p .wpcf7-form-control {
    display: flex;
    flex-direction: column;
    margin-top: -2.2em;
    padding: 0 0 0 7.5em;
    line-height: 1em;
  }
}

.formbg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
  z-index: 1;
  border-radius: 1em;
}

/* チェックボックス・ラジオボタン */
span.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 0;
  padding: 0.3em;
}
span.wpcf7-list-item input[type=radio] + span,
span.wpcf7-list-item input[type=checkbox] + span {
  padding-right: 1em;
  font-size: 1em;
}
span.wpcf7-list-item:last-child input[type=radio] + span,
span.wpcf7-list-item:last-child input[type=checkbox] + span {
  padding-right: 0;
}

input[type=radio],
input[type=checkbox] {
  position: relative;
  cursor: pointer;
  line-height: 1em;
}
input[type=radio].wpcf7c-conf,
input[type=checkbox].wpcf7c-conf {
  display: none;
}
input[type=radio].wpcf7c-conf + span,
input[type=checkbox].wpcf7c-conf + span {
  display: none;
}

.wpcf7-list-item-label {
  cursor: pointer;
  line-height: 1em;
}

.wpcf7c-elm-step2.bdstep2 {
  display: block;
  width: 100%;
  border-bottom: #181b39 solid 1px;
}

/* エラーメッセージ */
.wpcf7-not-valid-tip {
  color: #8bc894;
  font-weight: 700;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
  border-color: #181b39;
  background: #8bc894;
  color: #181b39;
  font-weight: 700;
}

/* 送信済メッセージ */
div.wpcf7-mail-sent-ok {
  border: 2px solid #181b39;
}

#wpcf7cpcnf {
  position: relative !important;
  display: flex;
  flex-direction: column-reverse;
}
#wpcf7cpcnf table {
  padding: 5em;
  display: flex;
  flex-direction: column;
}
#wpcf7cpcnf table tr {
  border-bottom: solid black 0.75px;
  margin-bottom: 3em;
}
@media screen and (max-width: 480px) {
  #wpcf7cpcnf table tr {
    display: flex;
    flex-direction: column;
  }
}
#wpcf7cpcnf table tr th {
  width: -moz-max-content;
  width: max-content;
  padding: 0 2em 0 0;
}
#wpcf7cpcnf table tr th p {
  width: -moz-max-content;
  width: max-content;
}
#wpcf7cpcnf .wpcf7cp-btns {
  display: flex;
  justify-content: center;
  padding: 0 0 8em 0;
  position: relative;
}
#wpcf7cpcnf .wpcf7cp-btns::before {
  content: "この画面は確認画面です。「この内容で送信」ボタンを押すとお問い合わせが完了し、メールが送られます。";
  position: absolute;
  bottom: 0em;
  width: 80%;
  font-size: 1.25em;
  color: red;
}
#wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-submit-btn {
  width: 11em !important;
  font-family: "FOT-筑紫明朝 Pr6", serif;
  font-size: 1.2em;
  font-weight: 700;
  box-sizing: border-box;
  padding: 0.5em 1em;
  display: flex;
  text-align: center;
  justify-content: center;
  transition: 0.3s ease;
  backface-visibility: hidden;
  border: none;
  background: #181b39;
  border: solid 1px #181b39;
  color: white;
}
@media screen and (max-width: 480px) {
  #wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-submit-btn {
    width: 10em !important;
  }
}
#wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-submit-btn:hover {
  cursor: pointer;
  background-color: white;
  color: #181b39;
}
#wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-edit-btn {
  width: 11em !important;
  font-family: "FOT-筑紫明朝 Pr6", serif;
  font-size: 1.2em;
  font-weight: 700;
  box-sizing: border-box;
  padding: 0.5em 1em;
  display: flex;
  text-align: center;
  justify-content: center;
  transition: 0.3s ease;
  backface-visibility: hidden;
  border: none;
  background: #6f7272;
  border: solid 1px #6f7272;
  color: white;
}
@media screen and (max-width: 480px) {
  #wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-edit-btn {
    width: 10em !important;
  }
}
#wpcf7cpcnf .wpcf7cp-btns .wpcf7cp-cfm-edit-btn:hover {
  cursor: pointer;
  background-color: white;
  color: #6f7272;
}

.wpcf7cp-form-hide {
  display: none !important;
}

.post_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2.5em;
}
@media screen and (max-width: 768px) {
  .post_list {
    gap: 2em;
  }
}
.post_list li {
  width: calc((100% - 5em) / 3);
}
@media screen and (max-width: 768px) {
  .post_list li {
    width: calc((100% - 2em) / 2);
  }
}
.post_list::after {
  content: "";
  width: calc((100% - 5em) / 3);
}
@media screen and (max-width: 768px) {
  .post_list::after {
    width: calc((100% - 2em) / 2);
  }
}

.post_info {
  display: flex;
  flex-direction: column;
}
.post_info .wrap-cat {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 0.75em;
}
.post_info .wrap-cat .cat {
  font-size: 0.9em;
  color: #8bc894;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0em 0.5em;
  border-radius: 0.3em;
  background-color: #edf4ee;
}
.post_info .post_date {
  margin-top: 0.5em;
  display: block;
}
.post_info .post_title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.post_thumb {
  width: 100%;
  height: 14em;
  overflow: hidden;
  border-radius: 1em;
  margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
  .post_thumb {
    height: 9em;
  }
}
.post_thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
header {
  display: flex;
  justify-content: space-between;
  background-color: white;
  align-items: center;
  height: 9em;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 100;
}
@media screen and (max-width: 480px) {
  header {
    height: 6em;
  }
}
header .page-title {
  position: absolute;
  right: 2em;
  top: 0.35em;
  font-size: 1em;
}
@media screen and (max-width: 480px) {
  header .page-title {
    font-size: 0.7em;
    right: 9em;
    top: 2.5em;
  }
}
header h2 {
  font-size: 1em;
}
header h2 a img {
  width: 20.7em;
  height: auto;
}
header .site-logo {
  position: relative;
  top: 0em;
  left: 0;
  padding: 0 0 0 4.75em;
}
@media screen and (max-width: 480px) {
  header .site-logo {
    padding: 0 0 0 1.75em;
  }
}
header .site-logo img {
  width: 10.7em;
}
@media screen and (max-width: 480px) {
  header .site-logo img {
    width: 6.7em;
  }
}
header.hide {
  transform: translateY(-100%);
  transition: transform 1s ease;
}
header.show {
  transform: translateY(0);
  transition: transform 1s ease;
}
header .header-nav {
  padding: 1em 9.25em 0 0;
}
header .header-nav ul {
  display: flex;
  gap: 1em;
}
header .header-nav ul li a {
  text-align: center;
  display: block;
  font-size: 1.1em;
  background-color: #8bc894;
  line-height: 1.4em;
  color: white;
  padding: 0.75em 2em;
  border-radius: 5em;
}
@media screen and (max-width: 768px) {
  header .header-nav {
    display: none;
  }
}

/* 初期状態（front-pageのみ） */
body#front-page {
  /* スクロール後（front-page かつ has-scrolled のみ） */
}
body#front-page header .site-logo {
  position: relative;
  top: 19em;
  left: 6em;
  /* ふわっと */
  transition: top 1.5s cubic-bezier(0.25, 1, 0.5, 1), left 1.5s cubic-bezier(0.25, 1, 0.5, 1);
}
@media screen and (max-width: 768px) {
  body#front-page header .site-logo {
    top: 12em;
    left: 0em;
  }
}
@media screen and (max-width: 480px) {
  body#front-page header .site-logo {
    padding: 0 0 0 1em;
    top: 9em;
    left: 8em;
  }
}
body#front-page header .site-logo a img {
  width: 20.7em;
  height: auto;
  transition: width 1.5s cubic-bezier(0.25, 1, 0.5, 1);
}
@media screen and (max-width: 768px) {
  body#front-page header .site-logo a img {
    width: 13.7em;
  }
}
@media screen and (max-width: 480px) {
  body#front-page header .site-logo a img {
    width: 14.7em;
  }
}
body#front-page.has-scrolled header .site-logo {
  top: 0;
  left: 0;
}
body#front-page.has-scrolled header .site-logo a img {
  width: 10.7em;
}
@media screen and (max-width: 480px) {
  body#front-page.has-scrolled header .site-logo a img {
    width: 6.7em;
  }
}

.wrap-title-area {
  margin-top: 9em;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-bottom: 7em;
}
.wrap-title-area .wrap-img {
  width: 76%;
  height: 23em;
  margin: auto 0 auto auto;
  border-radius: 1em 0 0 1em;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .wrap-title-area .wrap-img {
    height: 15em;
  }
}
.wrap-title-area .wrap-img img {
  width: 100%;
  height: auto;
}
.wrap-title-area h1, .wrap-title-area h2 {
  display: flex;
  flex-direction: column;
  align-items: left;
  font-size: 1em;
  position: absolute;
  left: 7.5em;
  color: #8bc894;
  mix-blend-mode: difference;
}
@media screen and (max-width: 768px) {
  .wrap-title-area h1, .wrap-title-area h2 {
    left: 3.5em;
  }
}
@media screen and (max-width: 480px) {
  .wrap-title-area h1, .wrap-title-area h2 {
    left: 2.5em;
  }
}
.wrap-title-area h1 span, .wrap-title-area h2 span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-weight: 500;
  font-size: 6.5em;
  line-height: 1em;
  white-space: nowrap;
}
@media screen and (max-width: 480px) {
  .wrap-title-area h1 span, .wrap-title-area h2 span {
    font-size: 4.5em;
  }
}
.wrap-title-area h1 strong, .wrap-title-area h2 strong {
  font-size: 1.75em;
  line-height: 2em;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0.2em;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
/*共通パーツここから*/
/*共通パーツここまで*/
body main #main-visual {
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: 12em;
  margin-bottom: 16em;
}
@media screen and (max-width: 768px) {
  body main #main-visual {
    margin-top: 10em;
    margin-bottom: 10em;
  }
}
@media screen and (max-width: 480px) {
  body main #main-visual {
    margin-top: 23em;
  }
}
body main #main-visual .wrap-img {
  width: 55%;
  height: auto;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 480px) {
  body main #main-visual .wrap-img {
    width: 100%;
  }
}
body main #main-visual .wrap-img img {
  width: 100%;
  height: auto;
  border-radius: 1em 0 0 1em;
}
@media screen and (max-width: 480px) {
  body main #main-visual .wrap-img img {
    border-radius: 0;
  }
}
body main .wrap-under-mainimg {
  background-image: url(/images/bg-img-01-2.webp);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40em 0 10em 0;
  position: relative;
  margin-bottom: 10em;
}
body main .wrap-under-mainimg #who-we-are {
  background-color: #ad946e;
  width: 67.05em;
  border-radius: 0 1.4em 1.4em 0;
  position: absolute;
  top: -4.6em;
  display: flex;
  flex-direction: column;
  padding: 8.3em 0;
}
@media screen and (max-width: 768px) {
  body main .wrap-under-mainimg #who-we-are {
    width: 90%;
  }
}
body main .wrap-under-mainimg #who-we-are h2 {
  display: flex;
  flex-direction: column;
  align-items: left;
  font-size: 1em;
  line-height: 4.5em;
  color: white;
  padding: 0 17.3em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  body main .wrap-under-mainimg #who-we-are h2 {
    padding: 0 0 0 5.3em;
  }
}
@media screen and (max-width: 480px) {
  body main .wrap-under-mainimg #who-we-are h2 {
    padding: 0 0 0 2.3em;
  }
}
body main .wrap-under-mainimg #who-we-are h2 span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 4.5em;
  white-space: nowrap;
}
body main .wrap-under-mainimg #who-we-are h2 strong {
  font-size: 1.75em;
}
body main .wrap-under-mainimg #who-we-are p {
  color: white;
  padding: 0 15.72em;
  letter-spacing: 0.2em;
  line-height: 3.5em;
  margin-top: 1.5em;
  font-size: 1.1em;
  font-weight: 300;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  body main .wrap-under-mainimg #who-we-are p {
    padding: 0 5.3em;
  }
}
@media screen and (max-width: 480px) {
  body main .wrap-under-mainimg #who-we-are p {
    padding: 0 2.3em;
    line-height: 3em;
  }
}
body main .wrap-under-mainimg #who-we-are img {
  position: absolute;
  top: 3em;
  right: 3em;
  width: 17em;
  height: auto;
  opacity: 0.07;
  mix-blend-mode: overlay;
  z-index: 4;
}
@media screen and (max-width: 768px) {
  body main .wrap-under-mainimg #who-we-are img {
    width: 12em;
  }
}
@media screen and (max-width: 480px) {
  body main .wrap-under-mainimg #who-we-are img {
    width: 9em;
  }
}
body main .wrap-under-mainimg #for-beginner {
  text-align: center;
  padding: 11.85em 0 0 0;
}
body main .wrap-under-mainimg #for-beginner h2 {
  display: flex;
  flex-direction: column;
  font-size: 1em;
  line-height: 4.5em;
  color: white;
  padding: 0 17.3em;
  letter-spacing: 0.2em;
  align-items: center;
}
@media screen and (max-width: 480px) {
  body main .wrap-under-mainimg #for-beginner h2 {
    padding: 0;
  }
}
body main .wrap-under-mainimg #for-beginner h2 span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 4.5em;
  white-space: nowrap;
}
body main .wrap-under-mainimg #for-beginner h2 strong {
  font-size: 1.75em;
}
body main .wrap-under-mainimg #for-beginner p {
  color: white;
  letter-spacing: 0.2em;
  line-height: 3.5em;
  padding: 2.5em 0;
  font-size: 1.1em;
  font-weight: 300;
}
@media screen and (max-width: 480px) {
  body main .wrap-under-mainimg #for-beginner p {
    font-size: 1em;
    letter-spacing: 0.1em;
  }
  body main .wrap-under-mainimg #for-beginner p br {
    display: block;
  }
}
body main .wrap-under-mainimg #for-beginner .btn {
  display: flex;
  text-align: center;
  border: solid 0.75px white;
  border-radius: 5em;
  padding: 1em 2em;
  white-space: nowrap;
  align-items: center;
  gap: 1.85em;
  justify-content: space-between;
  width: -moz-fit-content;
  width: fit-content;
  color: white;
  margin: auto;
}
body main .wrap-under-mainimg #for-beginner .btn::after {
  content: "";
  display: block;
  width: 3em;
  height: 0.76em;
  background-image: url(/images/ya-white.svg);
  background-repeat: no-repeat;
  transition: all 0.3s;
  position: relative;
  left: 0;
}
body main .wrap-under-mainimg #for-beginner .btn:hover::after {
  left: 0.4em;
}
body main #salon {
  width: 85%;
  margin: auto;
  margin-bottom: 10em;
}
body main #salon h2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 1em;
  line-height: 4.5em;
  margin-bottom: 5.5em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  body main #salon h2 {
    margin-bottom: 3.5em;
  }
}
body main #salon h2 span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 4.5em;
  white-space: nowrap;
}
body main #salon h2 strong {
  font-size: 1.75em;
}
body main #salon ul {
  display: flex;
  gap: 5em;
}
@media screen and (max-width: 768px) {
  body main #salon ul {
    gap: 2em;
  }
}
@media screen and (max-width: 480px) {
  body main #salon ul {
    flex-direction: column;
    gap: 5em;
  }
}
body main #salon ul li {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 2em;
}
body main #salon ul li img {
  width: 100%;
  height: auto;
  border-radius: 1em;
}
body main #salon ul li h3 {
  font-size: 1.5em;
}
body main #salon ul li .btn {
  display: flex;
  text-align: center;
  border: solid 0.75px #181b39;
  border-radius: 5em;
  padding: 1em 2em;
  white-space: nowrap;
  align-items: center;
  gap: 1.85em;
  justify-content: space-between;
  width: -moz-fit-content;
  width: fit-content;
}
body main #salon ul li .btn::after {
  content: "";
  display: block;
  width: 3em;
  height: 0.76em;
  background-image: url(/images/ya.svg);
  background-repeat: no-repeat;
  transition: all 0.3s;
  position: relative;
  left: 0;
}
body main #salon ul li .btn:hover::after {
  left: 0.4em;
}
body main #salon iframe {
  width: 100%;
  aspect-ratio: 16/9; /* 比率を指定 */
  border: 0;
  border-radius: 1em;
}
body main #journal {
  width: 85%;
  margin: auto;
  display: flex;
  gap: 3em;
  margin-bottom: 10em;
}
@media screen and (max-width: 768px) {
  body main #journal {
    flex-direction: column;
    margin-bottom: 16em;
  }
}
body main #journal .left {
  position: relative;
}
body main #journal .left h2 {
  display: flex;
  flex-direction: column;
  font-size: 1em;
  line-height: 4.5em;
  letter-spacing: 0.2em;
}
body main #journal .left h2 span {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 4.5em;
  white-space: nowrap;
}
body main #journal .left h2 strong {
  font-size: 1.75em;
}
body main #journal .left .btn {
  display: flex;
  text-align: center;
  border: solid 0.75px #181b39;
  border-radius: 5em;
  padding: 1em 2em;
  white-space: nowrap;
  align-items: center;
  gap: 1.85em;
  justify-content: space-between;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 768px) {
  body main #journal .left .btn {
    bottom: -32em;
    right: 0;
  }
}
@media screen and (max-width: 480px) {
  body main #journal .left .btn {
    bottom: -42em;
  }
}
body main #journal .left .btn::after {
  content: "";
  display: block;
  width: 3em;
  height: 0.76em;
  background-image: url(/images/ya.svg);
  background-repeat: no-repeat;
  transition: all 0.3s;
  position: relative;
  left: 0;
}
body main #journal .left .btn:hover::after {
  left: 0.4em;
}
body main #journal .right {
  width: 100%;
  text-align: left;
}
body main #journal .right ul li {
  padding: 2.5em 0;
  border-top: solid 1px;
  width: 100%;
}
body main #journal .right ul li:last-of-type {
  border-bottom: solid 1px;
}
body main #journal .right ul li a {
  font-size: 1.1em;
  letter-spacing: 0.2em;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 480px) {
  body main #journal .right ul li a {
    gap: 1em;
    flex-direction: column;
    align-items: flex-start;
  }
}
body main #journal .right ul li a .date {
  padding: 0 2em 0 0;
}
body main #journal .right ul li a .text {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 40em;
}
@media screen and (max-width: 480px) {
  body main #journal .right ul li a .text {
    max-width: 100%;
  }
}
body #faq-reserve {
  display: flex;
  width: 100%;
  height: 38.15em;
}
@media screen and (max-width: 768px) {
  body #faq-reserve {
    height: 23.15em;
  }
}
@media screen and (max-width: 480px) {
  body #faq-reserve {
    height: 18.15em;
  }
}
body #faq-reserve .left {
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
body #faq-reserve .left::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(/images/bg-img-02.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.6s ease, opacity 0.6s ease;
  z-index: -1;
  opacity: 1;
}
body #faq-reserve .left:hover::before {
  transform: scale(1.05);
  opacity: 0.7;
}
body #faq-reserve .right {
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
body #faq-reserve .right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(/images/bg-img-03.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.6s ease, opacity 0.6s ease;
  z-index: -1;
  opacity: 1;
}
body #faq-reserve .right:hover::before {
  transform: scale(1.05);
  opacity: 0.7;
}
body #faq-reserve h2 {
  display: flex;
  color: white;
  flex-direction: column;
  font-size: 1em;
  line-height: 4em;
}
body #faq-reserve h2 span {
  font-size: 4.5em;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
}
@media screen and (max-width: 480px) {
  body #faq-reserve h2 span {
    font-size: 3em;
  }
}
body #faq-reserve h2 strong {
  font-size: 1.75em;
}
@media screen and (max-width: 480px) {
  body #faq-reserve h2 strong {
    font-size: 1.3em;
  }
}

.hm_menu_check {
  display: none;
}

.hm_btn {
  position: fixed;
  top: 3em;
  right: 3em;
  z-index: 1001;
  width: 4em;
  height: 4em;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .hm_btn {
    top: 1em;
    right: 1em;
  }
}
.hm_btn .line {
  position: relative;
  width: 1.8em;
  transition: 0.4s;
}
.hm_btn .line::before, .hm_btn .line::after {
  content: "";
  position: absolute;
  width: 1.8em;
  height: 0.1em;
  background: #6d6d6d;
  transition: 0.4s;
}
.hm_btn .line::before {
  top: -0.3em;
}
.hm_btn .line::after {
  top: 0.3em;
}

.hm_menu_wrap {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: rgba(24, 27, 57, 0.95);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-20px);
  transition: all 0.4s ease;
  z-index: 1000;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.hm_menu_wrap .hm_inner {
  text-align: center;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto;
  min-height: 100vh;
  display: block;
  padding: 0 0 8em 0;
}
.hm_menu_wrap .hm_inner .menucontent {
  width: 75%;
  margin: auto;
  display: flex;
  gap: 4.25em;
  justify-content: center;
  padding: 7rem 0 0 0;
}
@media screen and (max-width: 768px) {
  .hm_menu_wrap .hm_inner .menucontent {
    flex-direction: column-reverse;
    padding: 16em 0 0 0;
  }
}
.hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu {
  position: absolute;
  top: 2.6em;
  right: 9.25em;
}
@media screen and (max-width: 768px) {
  .hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu {
    top: 6.6em;
    right: auto;
  }
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu {
    top: 10.6em;
  }
}
.hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu ul {
  display: flex;
  gap: 1em;
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu ul {
    flex-direction: column;
    gap: 2em;
  }
}
.hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu ul li a {
  text-align: center;
  display: block;
  font-size: clamp(1rem, 1.1em, 20px);
  background-color: #8bc894;
  line-height: 1.4em;
  color: white;
  padding: 0.75em 2em;
  border-radius: 5em;
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent .header-nav-hm_menu ul li a {
    padding: 0.75em 7em;
  }
}
.hm_menu_wrap .hm_inner .menucontent h3 {
  color: white;
  position: absolute;
  right: 2em;
  top: 0.35em;
  font-size: clamp(0.7em, 1em, 20px);
  font-weight: 300;
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent h3 {
    right: auto;
    top: 2.35em;
  }
}
.hm_menu_wrap .hm_inner .menucontent .left {
  padding: 0 5em 0 0;
  border-right: solid 1px #181b39;
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent .left {
    padding: 4em 0em 0 0;
  }
}
.hm_menu_wrap .hm_inner .menucontent .left a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  color: white;
}
.hm_menu_wrap .hm_inner .menucontent .left a img {
  width: 21.7em;
  height: auto;
  max-width: 300px;
}
.hm_menu_wrap .hm_inner .menucontent .left ul {
  display: flex;
  gap: 1.7em;
  padding: 3.85em 0 0 0;
  color: white;
  flex-direction: column;
  align-items: flex-start;
}
.hm_menu_wrap .hm_inner .menucontent .left ul li h2 {
  display: flex;
  background-color: white;
  width: -moz-fit-content;
  width: fit-content;
  color: #181b39;
  font-size: clamp(1rem, 1.2em, 20px);
  border-radius: 5em;
  padding: 0.3em 1.75em;
  margin-bottom: 1.25em;
}
.hm_menu_wrap .hm_inner .menucontent .left ul li a {
  font-size: clamp(1rem, 1.75em, 25px);
  letter-spacing: 0.2em;
  margin-bottom: 0.3em;
}
.hm_menu_wrap .hm_inner .menucontent .left ul li p {
  letter-spacing: 0.2em;
  text-align: left;
  font-size: clamp(0.9em, 1em, 18px);
}
@media screen and (max-width: 480px) {
  .hm_menu_wrap .hm_inner .menucontent .left ul li p br {
    display: block;
  }
}
.hm_menu_wrap .hm_inner .menucontent .right {
  text-align: left;
  padding: 6em 0 0 0;
}
@media screen and (max-width: 768px) {
  .hm_menu_wrap .hm_inner .menucontent .right {
    padding: 0em 0 0 0;
  }
}
.hm_menu_wrap .hm_inner .menucontent .right ul {
  line-height: clamp(1em, 3.5em, 60px);
  padding: 3em 0 0 0;
}
.hm_menu_wrap .hm_inner .menucontent .right ul li a {
  font-size: clamp(1rem, 1.1em, 18px);
  color: white;
  letter-spacing: 0.2em;
}
.hm_menu_wrap .hm_inner .menucontent .right ul .btn a {
  display: flex;
  text-align: center;
  border: solid 0.75px white;
  border-radius: 5em;
  padding: 0.5em 2em;
  margin-top: 2em;
  white-space: nowrap;
  align-items: center;
  gap: 0.5em;
  justify-content: space-between;
}
.hm_menu_wrap .hm_inner .menucontent .right ul .btn a::after {
  content: "";
  display: block;
  width: 3em;
  height: 0.7em;
  background-image: url(/images/ya-white.svg);
  background-repeat: no-repeat;
  transition: all 0.3s;
  position: relative;
  left: 0;
}
.hm_menu_wrap .hm_inner .menucontent .right ul .btn a:hover::after {
  left: 0.4em;
}

.hm_menu_check:checked + .hm_btn {
  font-size: clamp(0.9em, 1em, 20px);
  box-shadow: 3px 3px 4px rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0);
}
.hm_menu_check:checked + .hm_btn .line {
  background: transparent;
}
.hm_menu_check:checked + .hm_btn .line::before {
  top: 0;
  transform: rotate(45deg);
  background-color: white;
}
.hm_menu_check:checked + .hm_btn .line::after {
  top: 0;
  transform: rotate(-45deg);
  background-color: white;
}
.hm_menu_check:checked ~ .hm_menu_wrap {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* =======================================================================================================================
　　　　　　　　　フッター
======================================================================================================================= */
#footer {
  margin-top: 10em;
}
#footer .wrap-footer .wrap {
  width: 85%;
  margin: auto;
  display: flex;
  gap: 4.25em;
  margin-bottom: 4.7em;
}
@media screen and (max-width: 768px) {
  #footer .wrap-footer .wrap {
    flex-direction: column-reverse;
  }
}
#footer .wrap-footer .wrap .left {
  padding: 0 5em 0 0;
  border-right: solid 1px #181b39;
}
@media screen and (max-width: 768px) {
  #footer .wrap-footer .wrap .left {
    padding: 0;
    border-right: 0;
  }
}
#footer .wrap-footer .wrap .left a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
}
#footer .wrap-footer .wrap .left a img {
  width: 21.7em;
  height: auto;
}
#footer .wrap-footer .wrap .left ul {
  display: flex;
  gap: 5.7em;
  padding: 3.85em 0 0 0;
}
@media screen and (max-width: 768px) {
  #footer .wrap-footer .wrap .left ul {
    flex-direction: column;
    gap: 2em;
  }
}
#footer .wrap-footer .wrap .left ul li h2 {
  display: flex;
  background-color: #181b39;
  width: -moz-fit-content;
  width: fit-content;
  color: white;
  font-size: 1.2em;
  border-radius: 5em;
  padding: 0.3em 1.75em;
  margin-bottom: 1.25em;
}
#footer .wrap-footer .wrap .left ul li a {
  font-size: 1.75em;
  letter-spacing: 0.2em;
  margin-bottom: 0.3em;
}
#footer .wrap-footer .wrap .left ul li p {
  letter-spacing: 0.2em;
}
#footer .wrap-footer .wrap .left ul li br {
  display: block;
}
#footer .wrap-footer .wrap .right {
  text-align: left;
}
#footer .wrap-footer .wrap .right ul {
  line-height: 3.5em;
}
#footer .wrap-footer .wrap .right ul li a {
  font-size: 1.1em;
  color: #181b39;
  letter-spacing: 0.2em;
}
#footer .wrap-footer .wrap .right ul .btn a {
  display: flex;
  text-align: center;
  border: solid 1px #181b39;
  border-radius: 5em;
  padding: 0.5em 2em;
  margin-top: 2em;
  white-space: nowrap;
  align-items: center;
  gap: 0.5em;
  justify-content: space-between;
}
#footer .wrap-footer .wrap .right ul .btn a::after {
  content: "";
  display: block;
  width: 3em;
  height: 0.7em;
  background-image: url(/images/ya.svg);
  background-repeat: no-repeat;
  transition: all 0.3s;
  position: relative;
  left: 0;
}
#footer .wrap-footer .wrap .right ul .btn a:hover::after {
  left: 0.4em;
}
#footer .wrap-footer .copyright {
  display: flex;
  justify-content: center;
  background-color: #181b39;
  color: white;
  height: 6.5em;
  align-items: center;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 480px) {
  #footer .wrap-footer .copyright {
    font-size: 0.7em;
  }
}

/*========= レイアウトのためのCSS ===============*/
/*==================================================
ふわっ   class に fadeUpTriggerをつけたらフワッと表示
===================================*/
/* fadeUp */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(0px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger {
  opacity: 0;
}

/* アニメーションスタートの遅延時間を決めるCSS*/
.delay-time01 {
  animation-delay: 0.1s;
}

.delay-time02 {
  animation-delay: 0.2s;
}

.delay-time03 {
  animation-delay: 0.3s;
}

.delay-time04 {
  animation-delay: 0.4s;
}

.delay-time05 {
  animation-delay: 0.5s;
}

.delay-time06 {
  animation-delay: 0.6s;
}

.delay-time07 {
  animation-delay: 0.7s;
}

.delay-time08 {
  animation-delay: 0.8s;
}

.delay-time09 {
  animation-delay: 0.9s;
}

.delay-time10 {
  animation-delay: 1s;
}

.delay-time11 {
  animation-delay: 1.1s;
}

.delay-time12 {
  animation-delay: 1.2s;
}

.delay-time13 {
  animation-delay: 1.3s;
}

.delay-time14 {
  animation-delay: 1.4s;
}

/* =======================================================================================================================
　　　　　　　　　フリーページ（カスタムフィールド）
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 6em 0;
  position: relative;
  width: 87.5%;
}
@media screen and (max-width: 768px) {
  .sec {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .sec {
    width: 100%;
  }
}
.sec .innerbox {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  z-index: 10;
}
@media screen and (max-width: 480px) {
  .sec {
    padding: 0em 0 6em 0;
  }
}

.freepage-ctt,
.contactpage-ctt {
  padding-top: 0;
  padding-bottom: 0;
}
.freepage-ctt .sec,
.contactpage-ctt .sec {
  padding-bottom: calc(3vw + 2.33em);
}

/* 最大幅1500px */
.max1500px {
  max-width: 1500px;
  margin: 0 auto;
}

/* =============== 背景色 ========================================================= */
.sec_bg1 {
  background: white;
}
@media screen and (min-width: 1351px) {
  .sec_bg1 {
    padding-top: 4em;
  }
}

.sec_bg2 {
  background: #f8eacf;
}

.sec_bg3 {
  background-color: #dcdcdc;
}

.sec_bg3 a {
  color: #181b39;
}

.sec_bg4 {
  padding: 0 !important;
  padding-bottom: 0 !important;
  color: #f8eacf;
}
.sec_bg4 .innerbox {
  padding: 0;
}

/* 同じ背景色のセクションが続いたときに余白をなくす */
.sec_bg1 + .sec_bg1, .sec_bg2 + .sec_bg2, .sec_bg3 + .sec_bg3 {
  padding-top: 0;
}

.wrap-img-history {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
}
.wrap-img-history img {
  opacity: 0.12;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  font-family: "object-fit: cover; object-position: 50% 50%;";
  object-fit: cover;
  object-position: 50% 50%;
  height: 100vh;
}
@media screen and (max-width: 480px) {
  .wrap-img-history img {
    opacity: 0.12;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 34% 50%;
    width: 100%;
    height: 100%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
    object-fit: cover;
    -o-object-position: 34% 50%;
       object-position: 34% 50%;
    height: 124vh;
  }
}

/* =============== テキスト ========================================================= */
/* ------------ 見出し -------------------------------- */
.parts-h3 {
  text-align: center;
  color: #8bc894;
  font-size: 2.5em;
  font-weight: 700;
  line-height: 1.5em;
  padding: 2em 0;
}
@media screen and (max-width: 768px) {
  .parts-h3 {
    font-size: 1.8em;
  }
}

.sec_bg3 .parts-h3 {
  color: #f8eacf;
}

.parts-h4 {
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.5em;
  padding-top: 3em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .parts-h4 {
    font-size: 1.3em;
  }
}

/* 大きな数字 */
.lnmb {
  display: block;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 0.65em;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1em;
  padding-bottom: 0.25em;
}

.sec_bg3 .lnmb {
  color: #f8eacf;
}

/* 左寄せ・幅指定中央配置テキスト */
.centerbox {
  max-width: 800px;
  margin: 0 auto;
}

/* ------------ 段落 -------------------------------- */
.freepage-ctt {
  font-family: toppan-bunkyu-gothic-pr6n, serif, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, sans-serif;
}
.freepage-ctt .sec p {
  padding: 0 0 4em 0;
  font-weight: 400;
  /* 余白小さめ */
  /* 強調 */
  /* 注釈 */
}
@media screen and (max-width: 768px) {
  .freepage-ctt .sec p {
    padding: 0 0 4em 0;
  }
}
.freepage-ctt .sec p.btmmin {
  padding-bottom: 2em;
}
.freepage-ctt .sec p.parts-copy {
  color: #3e3e3e;
  font-size: 2em;
  font-weight: 700;
  line-height: 1.5em;
  padding-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  .freepage-ctt .sec p.parts-copy {
    font-size: 1.5em;
  }
}
.freepage-ctt .sec p.parts-copy strong {
  font-size: 2em;
}
.freepage-ctt .sec p.parts-copy span {
  color: #181b39;
}
.freepage-ctt .sec p.note {
  opacity: 0.6;
  font-size: 0.9em;
  line-height: 1.7em;
  padding-bottom: 4em;
  padding-left: 1.2em;
  text-indent: -0.65em;
  width: 100%;
  max-width: 1500px;
  box-sizing: border-box;
  margin: 0 auto;
}
.freepage-ctt .sec p.note::before {
  display: inline-block;
  content: "※";
  padding-right: 0.2em;
}
.freepage-ctt .sec .imgtxt_txtbox p:last-child {
  padding-bottom: 0;
  font-weight: 400;
}

/* やや小さめ強調 */
.strong {
  font-size: 1.3em;
  font-weight: 700;
  line-height: 2em;
}

.imgtxt_txtbox .parts-copy {
  color: #3e3e3e !important;
}

/* =============== ブロック ========================================================= */
/* ------------ 背景色つきテキストボックス -------------------------------- */
.bbox {
  width: 100%;
  box-sizing: border-box;
  padding: 3.57em;
  background: #181b39;
  color: #3e3e3e;
  margin-bottom: 5em;
}
@media screen and (max-width: 768px) {
  .bbox {
    padding: 1.5em;
  }
}
.bbox a {
  color: #3e3e3e;
}
.bbox h3 {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .bbox h3 {
    font-size: 1.5em;
  }
}
.bbox p {
  padding-bottom: 0;
}

/* =============== 画像 ========================================================= */
.parts-100img {
  width: 100%;
  position: relative;
  padding-bottom: 4em;
  text-align: center;
}
.parts-100img.center {
  text-align: center;
}
.parts-100img.left {
  text-align: left;
}
.parts-100img.right {
  text-align: right;
}
.parts-100img img {
  max-width: inherit;
  height: auto;
}
@media screen and (max-width: 768px) {
  .parts-100img img {
    width: 100%;
  }
}

/* ------------ 画像＋テキスト -------------------------------- */
.box_imglefttxt,
.box_imgrighttxt {
  width: 100%;
  position: relative;
  overflow: hidden;
  zoom: 1;
  padding: 0 2em;
  padding-bottom: 4em;
}
@media screen and (max-width: 768px) {
  .box_imglefttxt,
  .box_imgrighttxt {
    padding: 0;
  }
}
.box_imglefttxt .imgtxt_imgbox,
.box_imgrighttxt .imgtxt_imgbox {
  width: 40%;
  position: relative;
  padding-bottom: 1em;
  /* 画像 */
}
@media screen and (max-width: 1350px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 45%;
  }
}
@media screen and (max-width: 768px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 50%;
  }
}
@media screen and (max-width: 480px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 100%;
    padding-bottom: 2.5em;
  }
}
.box_imglefttxt .imgtxt_imgbox img,
.box_imgrighttxt .imgtxt_imgbox img {
  width: 100%;
  height: auto;
}

/* 画像左 -------------------------------- */
.box_imglefttxt .imgtxt_imgbox {
  float: left;
  padding-right: 3%;
}

/* 画像右 -------------------------------- */
.box_imgrighttxt .imgtxt_imgbox {
  float: right;
  padding-left: 3%;
}

@media screen and (max-width: 480px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    float: none;
    padding-right: 0;
    padding-left: 0;
  }
}

/* テキスト -------------------------------- */
/* 見出し */
.imgtxt_txtbox h3 {
  font-size: 2em;
  line-height: 1.5em;
  font-weight: normal;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .imgtxt_txtbox h3 {
    font-size: 1.8em;
  }
}
@media screen and (max-width: 480px) {
  .imgtxt_txtbox h3 {
    font-size: 1.5em;
    padding-bottom: 0.67em;
  }
}

/* ------------ 2～4つ並び画像テキストボックス -------------------------------- */
/* テキスト */
.imgbox_txtarea {
  display: block;
  width: 100%;
  z-index: 1;
  position: relative;
  box-sizing: border-box;
}
.imgbox_txtarea h3 {
  font-size: 1.2em;
  font-weight: normal;
  line-height: 1.5em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.imgbox_txtarea p {
  padding: 0 !important;
}

/* 2つ並び画像テキストボックス -------------------------------- */
.img2box {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding-bottom: 4em;
  /* リスト */
}
.img2box ul {
  list-style: none inside;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin-top: -2em;
}
@media screen and (max-width: 480px) {
  .img2box ul {
    margin-top: -3em;
  }
}
.img2box ul li {
  width: 48.5%;
  position: relative;
  box-sizing: border-box;
  padding: 2em;
  margin-top: 2em;
  /* 画像 */
}
@media screen and (max-width: 768px) {
  .img2box ul li {
    padding: 0;
  }
}
@media screen and (max-width: 480px) {
  .img2box ul li {
    width: 100%;
    margin-top: 3em;
  }
}
.img2box ul li img {
  width: 100%;
  height: auto;
  margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
  .img2box.imghbox ul li {
    width: 48.5%;
  }
}

/* 3つ並び画像テキストボックス -------------------------------- */
.img3txtbox {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding-bottom: 4em;
  /* リスト */
}
.img3txtbox ul {
  list-style: none inside;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin-top: -3em;
}
.img3txtbox ul li {
  width: 32%;
  position: relative;
  box-sizing: border-box;
  margin-right: 2%;
  margin-top: 3em;
  padding: 2em;
  /* 画像 */
}
@media screen and (min-width: 769px) {
  .img3txtbox ul li:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .img3txtbox ul li {
    width: 100%;
    margin-bottom: 3em;
    margin-right: 0;
  }
}
.img3txtbox ul li img {
  width: 100%;
  height: auto;
  margin-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .img3txtbox.imghbox ul li {
    width: 32%;
    margin-right: 2%;
  }
  .img3txtbox.imghbox ul li:nth-child(3n) {
    margin-right: 0;
  }
}

/* 4つ並び画像テキストボックス -------------------------------- */
.img4txtbox {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 0 2em 4em 2em;
  /* リスト */
}
.img4txtbox ul {
  list-style: none inside;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin-top: -2em;
}
@media screen and (max-width: 1350px) {
  .img4txtbox ul {
    margin-top: -3em;
  }
}
.img4txtbox ul li {
  width: 23.5%;
  position: relative;
  box-sizing: border-box;
  margin-right: 2%;
  margin-top: 2em;
  /* 画像 */
}
@media screen and (min-width: 1351px) {
  .img4txtbox ul li:nth-child(4n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 1350px) {
  .img4txtbox ul li {
    margin-top: 3em;
  }
}
@media screen and (max-width: 1350px) and (min-width: 481px) {
  .img4txtbox ul li {
    width: 49%;
  }
  .img4txtbox ul li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .img4txtbox ul li {
    width: 100%;
  }
}
.img4txtbox ul li img {
  width: 100%;
  height: auto;
  margin-bottom: 1em;
}
@media screen and (max-width: 1350px) and (min-width: 481px) {
  .img4txtbox.imghbox ul li {
    width: 23.5%;
  }
  .img4txtbox.imghbox ul li:nth-child(2n) {
    margin-right: 2%;
  }
  .img4txtbox.imghbox ul li:nth-child(4n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .img4txtbox.imghbox ul li {
    width: 23.5%;
  }
  .img4txtbox.imghbox ul li:nth-child(4n) {
    margin-right: 0;
  }
}

/* =============== リスト ========================================================= */
/* ノーマルリストマークつき -------------------------------- */
.no_list {
  width: 100%;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  position: relative;
  background: #ad946e;
  color: #f8eacf;
  /* 見出し */
  /* リスト */
}
@media screen and (max-width: 768px) {
  .no_list {
    padding: 1.5em;
  }
}
.no_list h3 {
  font-size: 2em;
  font-weight: normal;
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .no_list h3 {
    font-size: 1.5em;
  }
}
.no_list ul {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding-left: 1.5em;
}
.no_list ul li {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  font-size: 1em;
  line-height: 1.7em;
  padding-bottom: 1.5em;
}
.no_list ul li:last-child {
  padding-bottom: 0;
}

/* チェックボックスマークつき -------------------------------- */
.check_list {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  background: #ad946e;
  color: #3e3e3e;
  /* 見出し */
  /* リスト */
}
@media screen and (max-width: 768px) {
  .check_list {
    padding: 1.5em;
  }
}
.check_list h3 {
  font-size: 2em;
  font-weight: normal;
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .check_list h3 {
    font-size: 1.5em;
  }
}
.check_list ul {
  list-style: none inside;
  width: 100%;
  position: relative;
  box-sizing: border-box;
}
.check_list ul li {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  font-size: 1em;
  line-height: 1.7em;
  padding-bottom: 1.5em;
  text-indent: -1.2em;
  padding-left: 1.2em;
}
.check_list ul li::before {
  display: inline-block;
  padding-left: 1em;
  padding-right: 0.2em;
  font-family: "Font Awesome 5 Free";
  content: "\f14a";
  font-weight: 400;
}
.check_list ul li:last-child {
  padding-bottom: 0;
}

/* 番号つき -------------------------------- */
.order_list {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 3.57em;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  position: relative;
  background: #ad946e;
  color: #3e3e3e;
  /* 見出し */
  /* リスト */
}
@media screen and (max-width: 768px) {
  .order_list {
    padding: 1.5em;
  }
}
.order_list h3 {
  font-size: 2em;
  font-weight: normal;
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .order_list h3 {
    font-size: 1.5em;
  }
}
.order_list ol {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  list-style-position: inside;
}
.order_list ol li {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  font-size: 1em;
  line-height: 1.7em;
  text-indent: -1em;
  padding-left: 1em;
  padding-bottom: 1em;
}
.order_list ol li:nth-child(n+10) {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.order_list ol li:last-child {
  padding-bottom: 0;
}

/* 表型 -------------------------------- */
.table_list {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 2em 4em 2em;
  /* 見出し */
  /* リスト */
}
.table_list h3 {
  font-family: toppan-bunkyu-gothic-pr6n, serif, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, sans-serif;
  font-weight: 500 !important;
  font-size: 1.8em;
  font-weight: normal;
  line-height: 1.5em;
  padding-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  .table_list h3 {
    font-size: 1.5em;
  }
}
.table_list h4 {
  font-size: 1.5em;
  padding: 0 0 0.5em 0;
}
.table_list ul {
  list-style: none inside;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  background: white;
  box-shadow: 0.278em 0.278em 1.1em 0 rgba(0, 0, 0, 0.2);
}
.table_list ul li {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  border-bottom: white solid 1px;
}
.table_list ul li:last-child {
  border-bottom: none;
}
.table_list ul li .tablelist_th,
.table_list ul li .tablelist_td {
  padding: 1em;
  font-size: 1em;
  position: relative;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .table_list ul li .tablelist_th,
  .table_list ul li .tablelist_td {
    padding: 1em;
    display: block;
    text-align: left;
  }
}
.table_list ul li .tablelist_th {
  font-style: normal;
  font-weight: 400;
  font-weight: 500;
  width: 20%;
  font-weight: 700;
  background-color: #8bc894;
  color: white;
}
@media screen and (max-width: 768px) {
  .table_list ul li .tablelist_th {
    width: 100%;
    font-weight: bold;
    border-right: none;
    border-bottom: none;
    padding: 0.5em 1em;
  }
}
.table_list ul li .tablelist_td {
  background-color: #181b39;
  font-style: normal;
  font-weight: 400;
  font-weight: 300;
  width: 80%;
  color: black;
}
@media screen and (max-width: 768px) {
  .table_list ul li .tablelist_td {
    width: 100%;
    padding: 0.5em 1em;
  }
}

/* 注釈マークつき -------------------------------- */
.note_list {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 4em;
  max-width: 1500px;
  opacity: 0.6;
  padding: 3.57em;
  background: #ad946e;
  /* 見出し */
  /* リスト */
}
@media screen and (max-width: 768px) {
  .note_list {
    padding: 1.5em;
  }
}
.note_list h3 {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.5em;
  padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .note_list h3 {
    font-size: 1.3em;
    font-weight: 500;
  }
}
.note_list ul {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  list-style: none inside;
}
.note_list ul li {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  font-size: 0.9em;
  line-height: 1.7em;
  text-indent: -1.2em;
  padding-left: 1.2em;
  padding-bottom: 1.5em;
}
.note_list ul li::before {
  display: inline-block;
  padding-left: 1em;
  padding-right: 0.2em;
  content: "※";
}
.note_list ul li:last-child {
  padding-bottom: 0;
}

/* =============== Youtube動画 ========================================================= */
.videobox .imgtxt_imgbox {
  width: 60%;
}

.youtube_box {
  width: 100%;
}
.youtube_box span {
  display: block;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_box span iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.img2box .youtube_box,
.img3txtbox .youtube_box {
  padding-bottom: 1.5em;
}

/* =============== 余白ゼロ ========================================================= */
.freepage-ctt .sec .innerbox p:last-child,
.freepage-ctt .sec .innerbox p.parts-copy:last-child,
.freepage-ctt .sec .innerbox p.note:last-child,
.freepage-ctt .sec .innerbox .parts-100img:last-child,
.freepage-ctt .sec .innerbox .box_imglefttxt:last-child,
.freepage-ctt .sec .innerbox .box_imgrighttxt:last-child,
.freepage-ctt .sec .innerbox .img2box:last-child,
.freepage-ctt .sec .innerbox .img3txtbox:last-child,
.freepage-ctt .sec .innerbox .img4txtbox:last-child {
  padding-bottom: 0;
}
.freepage-ctt .sec .innerbox .bbox:last-child,
.freepage-ctt .sec .innerbox .no_list:last-child,
.freepage-ctt .sec .innerbox .check_list:last-child,
.freepage-ctt .sec .innerbox .order_list:last-child,
.freepage-ctt .sec .innerbox .table_list:last-child,
.freepage-ctt .sec .innerbox .note_list:last-child {
  margin-bottom: 0;
}

.img2box img:last-child,
.img3txtbox img:last-child,
.img4txtbox img:last-child {
  margin-bottom: 0;
}
.img2box a img:last-child,
.img3txtbox a img:last-child,
.img4txtbox a img:last-child {
  margin-bottom: 2.5em;
}
.img2box a:last-child img,
.img3txtbox a:last-child img,
.img4txtbox a:last-child img {
  margin-bottom: 0;
}
.img2box a:last-child img:last-child,
.img3txtbox a:last-child img:last-child,
.img4txtbox a:last-child img:last-child {
  margin-bottom: 0;
}

li .youtube_box:last-child {
  margin-bottom: 0;
}

.imgtxt_imgbox .youtube_box {
  margin-bottom: 0;
}

/* =======================================================================================================================
　　　　　　　　　お問い合わせ
======================================================================================================================= */
.contact-template .wrap,
.contactpage-ctt {
  padding-top: 0;
  padding-bottom: 0;
}

.contactpage-ctt {
  /* 見出し */
}
.contactpage-ctt h3 {
  font-style: normal;
  font-weight: 400;
  font-size: 2em;
  font-weight: 700;
  line-height: 1.4em;
  padding-bottom: 0.5em;
  text-align: center;
}
.contactpage-ctt .sec {
  width: 100%;
}
.contactpage-ctt .sec p {
  padding-bottom: 2em;
}
@media screen and (max-width: 768px) {
  .contactpage-ctt .sec p.center {
    text-align: left;
  }
}
.contactpage-ctt .sec.contact_tel p {
  text-align: center;
  /* -------------------------- 電話 ------------------------------------------- */
  /* 時間 */
}
.contactpage-ctt .sec.contact_tel p.contacttel_tel {
  font-size: 3em;
  line-height: 1em;
  padding-bottom: 0.1em;
  color: black;
}
.contactpage-ctt .sec.contact_tel p.contacttel_tel strong {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-weight: bold;
}
.contactpage-ctt .sec.contact_tel p.contacttel_tel::before {
  display: inline-block;
  padding-right: 0.2em;
  font-family: "Font Awesome 5 Free";
  content: "\f095";
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .contactpage-ctt .sec.contact_tel p.contacttel_tel.center {
    text-align: center;
  }
}
.contactpage-ctt .sec.contact_tel p.contacttel_time {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.3em;
  padding-bottom: 0;
  color: black;
}
@media screen and (max-width: 768px) {
  .contactpage-ctt .sec.contact_tel p.contacttel_time.center {
    text-align: center;
  }
}

.webcontact .ct_info {
  text-align: center;
}

/* 絞り込み用 */
.serch-category {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 5em 0 0;
}
@media screen and (max-width: 768px) {
  .serch-category {
    padding: 0 0em 0 0;
    margin: auto;
  }
}
@media screen and (max-width: 480px) {
  .serch-category {
    padding: 0 1.5em 0 1.5em;
    margin: 0;
  }
}
.serch-category ul {
  display: flex;
  gap: 1em;
}
@media screen and (max-width: 480px) {
  .serch-category ul {
    width: 100%;
    display: flex;
    gap: 1.5em;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
  }
}
.serch-category ul li a {
  border: solid 1px;
  width: 12.4em;
  height: 2.65em;
  font-size: 1.1em;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .serch-category ul li a {
    border: solid 1px;
    width: 100%;
    height: 3.65em;
    font-size: 1.1em;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.serch-category ul li .check-works {
  background-color: #181b39;
  color: white;
}

/* ページナビゲーション（共通） */
.pager {
  margin-bottom: 7em;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 2.5em;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .pager {
    padding-top: 3em;
  }
}
.pager a {
  text-decoration: none;
}
.pager p {
  padding-bottom: 0;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.pager .no-link {
  color: #666;
  opacity: 0.75;
  filter: alpha(opacity=75);
}
.pager .first,
.pager .last {
  transform: scale(0.6);
  transform-origin: 50% 50%;
}
.pager .prev,
.pager .next {
  transform: scale(0.7);
  transform-origin: 50% 50%;
}
.pager .nth-box {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-size: 1.2em;
}
.pager .nth-box .current {
  font-size: 1.2em;
  display: inline-block;
  color: #666;
  padding: 0 0.5em;
}
.pager .nth-box .tenten {
  color: #666;
}
.pager .nth-box a {
  display: inline-block;
  padding: 0 0.5em;
}

/* ================= 記事一覧 ============================================================ */
#post_archive {
  padding-top: 0;
  margin: auto;
}
#post_archive .all_categories {
  display: flex;
  gap: 1em;
  padding: 0 0 3em 0;
  justify-content: center;
}
@media screen and (max-width: 480px) {
  #post_archive .all_categories {
    flex-direction: column;
  }
}
#post_archive .all_categories a {
  border: solid 1px #8bc894;
  border-radius: 3em;
  padding: 0.5em 1em;
  color: #8bc894;
}
#post_archive .current-cat a {
  background-color: #8bc894;
  color: white;
}

.back-to-archive {
  margin: auto;
}
.back-to-archive .innerbox {
  text-align: center;
}
.back-to-archive .innerbox a {
  font-size: 1.5em;
  color: white;
  background-color: #8bc894;
  display: block;
  padding: 0.75em 2em;
  border-radius: 5em;
  margin: auto;
  width: -moz-fit-content;
  width: fit-content;
}/*# sourceMappingURL=style.css.map */