@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@keyframes rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes comeDown {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes comeDownSp {
  0% {
    opacity: 0;
    transform: translateY(-200px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
html {
  scroll-behavior: auto;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  width: 100%;
  width: 100dvw;
  min-width: 100vw;
  min-width: 100dvw;
  font-size: 62.5%;
  overflow-x: hidden;
  position: relative;
}

body {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  width: 100dvw;
  min-width: 100vw;
  min-width: 100dvw;
  overflow-x: hidden;
  margin-left: auto;
  margin-right: auto;
  background-color: #F8F8F4;
}

h1, h2, h3, h4, h5, div, p {
  text-align: left;
}

h1, h2, h3, h4, h5 {
  margin: 0;
  color: #3D3122;
}

a {
  text-decoration: none;
}

ul, ol {
  padding: 0;
  margin: 0;
}

p {
  color: #3D3122;
  margin: 0;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
}
p b {
  font-weight: 700;
}
.yellow{
  position: relative;
  background: linear-gradient(transparent 40%, yellow 40%);
font-size:3rem;
}
.yellowback{
  position: relative;
  background: linear-gradient(transparent 40%, yellow 40%);
}
.orange
{color:#f58220;
font-weight:bold;}
dl dd, dl dt {
  margin: 0;
}

.acBtn {
  cursor: pointer;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: #3D3122;
  position: relative;
  border: solid 2px #3D3122;
  width: 280px;
  height: 56px;
  font-size: 1.4rem;
  line-height: 1.4rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 640px) {
  .acBtn {
    width: 400px;
    height: 64px;
    font-size: 1.5rem;
    line-height: 1.5rem;
  }
}
.acBtn__plus {
  position: absolute;
  right: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.acBtn__plus span {
  position: absolute;
  display: block;
  width: 16px;
  height: 2px;
  background-color: #3D3122;
  transition: 0.2s ease;
}
.acBtn__plus span:last-of-type {
  transform: rotate(90deg);
}
.acBtn--open .acBtn__plus span {
  transition: 0.2s ease;
}
.acBtn--open .acBtn__plus span:last-of-type {
  transform: rotate(0deg);
}

.acBlk {
  transition: 0.2s ease;
  opacity: 0;
}
.acBlk--open {
  opacity: 1;
  margin-bottom: 24px;
}

.inActiveLink {
  font-weight: 400 !important;
  color: #C6C1B3 !important;
  pointer-events: none !important;
}

.centerTxt {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .centerTxt--pc {
    text-align: center;
  }
}

.brwTxt {
  color: #892204;
}

.linkTxt {
  color: #D44D2C;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.head01 {
  display: flex;
  align-items: start;
  justify-content: start;
  flex-direction: column;
}
.head01 span {
  display: block;
  text-align: left;
}
.head01__ja {
  color: #3D3122;
  font-size: 4rem;
  line-height: 4rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .head01__ja {
    font-size: 5rem;
    line-height: 4rem;
  }
}
.head01__en {
  color: #004aaa;
  font-size: 3.7rem;
  line-height: 4rem;
  letter-spacing: 0.325em;
  font-weight: 400;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}

.head02 {
  color: #3D3122;
  font-size: 3.2rem;
  line-height: 3.9rem;
  letter-spacing: 0.04em;
  font-weight: 600;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .head02 {
    font-size: 4.8rem;
    line-height: 5.8rem;
  }
}

.head03__en {
  display: flex;
  align-items: flex-start;
  font-size: 1.5rem;
  line-height: 4rem;
  color: #004aaa;
}
.head03__en::before {
  content: "";
  background-color: #004aaa;
  display: block;
  width: 16px;
  height: 2px;
  position: relative;
  top: 21px;
  margin-right: 8px;
}
.head03__ja {
  display: block;
  font-size: 2.5rem;
  line-height: 4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 960px) {
.head03__ja {
    font-size: 3.2rem;
line-height: 4rem;
  }
}


.head04 {
  font-size: 2.4rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  color: #555555;
  position: relative;
  padding-bottom: 12px;
  position: relative;
}
.head04::before, .head04::after {
  content: "";
  position: absolute;
  bottom: 0;
  height: 2px;
}
.head04::after {
  z-index: 1;
  left: 0;
  right: 0;
  background-color: #D9D4C4;
}
.head04::before {
  z-index: 2;
  left: 0;
  width: 20px;
  background-color: #134f8f;
}

.btn01 {
  text-decoration: none;
  background-color: #134f8f;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 2.4rem;
  line-height: 1.5rem;
  font-weight: 700;
  letter-spacing: 0em;
  width: 330px;
  height: 60px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  transition: 0.3s ease;
  overflow: hidden !important;
}
.btn01 span {
  color: #ffffff;
  position: relative;
  z-index: 2;
  transition: 0.3s ease;
}
.btn01::after {
  content: "";
  background-color: #ffffff;
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 14px;
  position: absolute;
  z-index: 2;
  right: 16px;
  transition: 0.3s ease;
}
.btn01::before {
  content: "";
  background-color: #004970;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s ease;
  transform: translateX(-100%);
}
.btn01:hover {
  transition: 0.3s ease;
}
.btn01:hover::after {
  width: 16px;
  height: 16px;
  border-radius: 16px;
}
.btn01:hover::before {
  right: 0;
  transform: translateX(0);
}
.btn01:hover span {
  transform: translateX(2px);
  transition: 0.3s ease;
  color: #ffffff;
}

.btn03 {
  text-decoration: none;
  background-color: #00c300;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 2.4rem;
  line-height: 1.5rem;
  font-weight: 700;
  letter-spacing: 0em;
  width: 330px;
  height: 60px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  transition: 0.3s ease;
  overflow: hidden !important;
}
.btn03 span {
  color: #ffffff;
  position: relative;
  z-index: 2;
  transition: 0.3s ease;
}
.btn03::before {
  content: "";
  display: inline-block;
  width: 50px; /* スマホで見た時の幅 */
  height: 50px; /* スマホで見た時の高さ */
  background: url(.././img/line-icon.png) no-repeat;
  background-size: contain;
  margin-right: 3px;
}
.btn03:hover {
  transition: 0.3s ease;
background-color:#089b08;
}


.btn02 {
  text-decoration: none;
  background-color: #134f8f;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1.5rem;
  font-weight: 700;
  letter-spacing: 0em;
  width: 100%;
  max-width: 400px;
  height: 86px;
  box-sizing: border-box;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  transition: 0.3s ease;
  overflow: hidden !important;
  padding: 0 14px;
}
@media screen and (min-width: 340px) {
  .btn02 {
    padding: 0 18px;
  }
}
@media screen and (min-width: 960px) {
  .btn02 {
    padding: 0 33px;
    width: 400px;
    height: 105px;
    border-radius: 12px;
    border: none;
  }
}
.btn02__content {
  position: relative;
  z-index: 2;
  transition: 0.3s ease;
  display: grid;
  align-items: center;
  grid-template-columns: 50px 1fr;
  width: 100%;
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .btn02__content {
    gap: 16px;
    grid-template-columns: 52px 1fr;
  }
}
.btn02__icon {
  width: 44px;
  height: 44px;
}
@media screen and (min-width: 340px) {
  .btn02__icon {
    width: 50px;
    height: 50px;
  }
}
@media screen and (min-width: 960px) {
  .btn02__icon {
    width: 52px;
    height: 52px;
  }
}
.btn02__txt {
  color: #ffffff;
  font-size: 1.6rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 340px) {
  .btn02__txt {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 960px) {
  .btn02__txt {
    font-size: 1.9rem;
    line-height: 2.7rem;
  }
}
.btn02__txt__dl {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #ffffff;
}
@media screen and (min-width: 960px) {
  .btn02__txt__dl {
    gap: 8px;
  }
}
.btn02__txt__dl::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-image: url("../img/dl-icon.svg");
  background-size: cover;
}
.btn02__txt__pdf {
  color: #ffffff;
  font-size: 1.3rem;
  line-height: 1.3rem;
  letter-spacing: 0em;
  font-weight: 400;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  display: grid;
  align-items: center;
  grid-template-columns: 32px 1fr;
  gap: 6px;
}
@media screen and (min-width: 960px) {
  .btn02__txt__pdf {
    grid-template-columns: 40px 1fr;
    gap: 8px;
  }
}
.btn02__txt__pdf img {
  width: 100%;
  height: auto;
  display: block;
}
.btn02::before {
  content: "";
  background-color: #004970;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s ease;
  transform: translateX(-100%);
}
.btn02:hover {
  color: #ffffff;
  transition: 0.3s ease;
}
.btn02:hover::before {
  right: 0;
  transform: translateX(0);
}
.btn02:hover .frontBtn__btn__content {
  transform: translateX(2px);
  transition: 0.3s ease;
}

.width01 {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.width01--sp {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .width01--sp {
    width: 100%;
  }
}
.width02 {
  width: 84.2%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .width1200 {
    width: 90%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1360px) {
  .width1200 {
    width: 1200px;
  }
}

.leftMinus {
  margin-left: -6px;
}

.leftMinus2 {
  margin-left: -12px;
}
@media screen and (min-width: 640px) {
  .leftMinus2 {
    margin-left: -24px;
  }
}

.rightMinus {
  margin-right: -3px;
}

.rightMinus2 {
  margin-right: -12px;
}
@media screen and (min-width: 640px) {
  .rightMinus2 {
    margin-right: -24px;
  }
}

.ofHidden {
  overflow: hidden;
}

.openCover {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent !important;
  z-index: 4;
}

.fs9 {
  font-size: 1rem;
  line-height: 1rem;
  transform: scale(0.9);
}

.fs8 {
  font-size: 1rem;
  line-height: 1rem;
  transform: scale(0.8);
}

.is-hidden {
  display: none;
}

.is-shown {
  display: block !important;
}
.is-shown--flex {
  display: flex !important;
}

.mb4 {
  margin-bottom: 4px !important;
}

.mb8 {
  margin-bottom: 8px !important;
}

.mb12 {
  margin-bottom: 12px !important;
}

.mb16 {
  margin-bottom: 16px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb24 {
  margin-bottom: 24px !important;
}

.mb32 {
  margin-bottom: 32px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb48 {
  margin-bottom: 48px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb56 {
  margin-bottom: 56px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb64 {
  margin-bottom: 64px !important;
}

.mb72 {
  margin-bottom: 72px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb88 {
  margin-bottom: 88px !important;
}

.mb96 {
  margin-bottom: 96px !important;
}

.mb104 {
  margin-bottom: 104px !important;
}

.mb112 {
  margin-bottom: 112px !important;
}

.mb120 {
  margin-bottom: 120px !important;
}

.mb144 {
  margin-bottom: 144px !important;
}

.mb160 {
  margin-bottom: 160px !important;
}

.mb200 {
  margin-bottom: 200px !important;
}

.mb240 {
  margin-bottom: 240px !important;
}

.mb320 {
  margin-bottom: 320px !important;
}

.mb360 {
  margin-bottom: 360px !important;
}

.m16 {
  margin: 16px auto !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 640px) {
  .mb4--tb {
    margin-bottom: 4px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb8--tb {
    margin-bottom: 8px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb8--pc {
    margin-bottom: 8px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb12--tb {
    margin-bottom: 12px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb16--tb {
    margin-bottom: 16px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb16--pc {
    margin-bottom: 16px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb20--tb {
    margin-bottom: 20px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb20--pc {
    margin-bottom: 20px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb24--tb {
    margin-bottom: 24px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb24--pc {
    margin-bottom: 24px !important;
  }
}

.mb32--sp {
  margin-bottom: 32px;
}
@media screen and (min-width: 960px) {
  .mb32--sp {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 640px) {
  .mb32--tb {
    margin-bottom: 32px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb32--pc {
    margin-bottom: 32px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb40--tb {
    margin-bottom: 40px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb40--pc {
    margin-bottom: 40px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb50--tb {
    margin-bottom: 50px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb50--pc {
    margin-bottom: 50px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb48--tb {
    margin-bottom: 48px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb48--pc {
    margin-bottom: 48px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb56--tb {
    margin-bottom: 56px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb56--pc {
    margin-bottom: 56px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb60--tb {
    margin-bottom: 60px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb60--pc {
    margin-bottom: 60px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb64--tb {
    margin-bottom: 64px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb64--pc {
    margin-bottom: 64px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb72--tb {
    margin-bottom: 72px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb72--pc {
    margin-bottom: 72px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb80--tb {
    margin-bottom: 80px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb80--pc {
    margin-bottom: 80px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb88--tb {
    margin-bottom: 88px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb88--pc {
    margin-bottom: 88px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb96--tb {
    margin-bottom: 96px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb96--pc {
    margin-bottom: 96px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb104--tb {
    margin-bottom: 104px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb104--pc {
    margin-bottom: 104px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb112--tb {
    margin-bottom: 112px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb112--pc {
    margin-bottom: 112px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb120--tb {
    margin-bottom: 120px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb120--pc {
    margin-bottom: 120px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb144--tb {
    margin-bottom: 144px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb144--pc {
    margin-bottom: 144px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb160--tb {
    margin-bottom: 160px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb160--pc {
    margin-bottom: 160px !important;
  }
}

.mb200 {
  margin-bottom: 200px !important;
}
@media screen and (min-width: 960px) {
  .mb200--pc {
    margin-bottom: 200px !important;
  }
}

@media screen and (min-width: 640px) {
  .mb240--tb {
    margin-bottom: 240px !important;
  }
}
@media screen and (min-width: 960px) {
  .mb240--pc {
    margin-bottom: 240px !important;
  }
}

@media screen and (min-width: 960px) {
  .mb320--pc {
    margin-bottom: 320px !important;
  }
}

@media screen and (min-width: 960px) {
  .mb360--pc {
    margin-bottom: 360px !important;
  }
}

@media screen and (min-width: 960px) {
  .mt0--pc {
    margin-top: 0 !important;
  }
}

@media screen and (min-width: 960px) {
  .mb0--pc {
    margin-bottom: 0 !important;
  }
}

.pb4 {
  padding-bottom: 4px !important;
}

.pb8 {
  padding-bottom: 8px !important;
}

.pb12 {
  padding-bottom: 12px !important;
}

.pb16 {
  padding-bottom: 16px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb24 {
  padding-bottom: 24px !important;
}

.pb32 {
  padding-bottom: 32px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb48 {
  padding-bottom: 48px !important;
}

.pb56 {
  padding-bottom: 56px !important;
}

.pb64 {
  padding-bottom: 64px !important;
}

.pb72 {
  padding-bottom: 72px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb88 {
  padding-bottom: 88px !important;
}

.pb96 {
  padding-bottom: 96px !important;
}

.pb104 {
  padding-bottom: 104px !important;
}

.pb120 {
  padding-bottom: 120px !important;
}

.pb144 {
  padding-bottom: 144px !important;
}

.pb160 {
  padding-bottom: 160px !important;
}

.pb200 {
  padding-bottom: 200px !important;
}

.pb240 {
  padding-bottom: 240px !important;
}

.pb280 {
  padding-bottom: 280px !important;
}

.pb320 {
  padding-bottom: 320px !important;
}

.pb360 {
  padding-bottom: 360px !important;
}

.pb480 {
  padding-bottom: 480px !important;
}

@media screen and (min-width: 640px) {
  .pb4--tb {
    padding-bottom: 4px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb8--tb {
    padding-bottom: 8px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb8--pc {
    padding-bottom: 8px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb12--tb {
    padding-bottom: 12px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb16--tb {
    padding-bottom: 16px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb16--pc {
    padding-bottom: 16px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb20--tb {
    padding-bottom: 20px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb24--tb {
    padding-bottom: 24px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb24--pc {
    padding-bottom: 24px !important;
  }
}

.pb32--sp {
  padding-bottom: 32px;
}
@media screen and (min-width: 960px) {
  .pb32--sp {
    padding-bottom: 0;
  }
}
@media screen and (min-width: 640px) {
  .pb32--tb {
    padding-bottom: 32px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb32--pc {
    padding-bottom: 32px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb40--tb {
    padding-bottom: 40px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb40--pc {
    padding-bottom: 40px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb48--tb {
    padding-bottom: 48px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb48--pc {
    padding-bottom: 48px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb56--tb {
    padding-bottom: 56px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb56--pc {
    padding-bottom: 56px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb64--tb {
    padding-bottom: 64px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb64--pc {
    padding-bottom: 64px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb72--tb {
    padding-bottom: 72px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb72--pc {
    padding-bottom: 72px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb80--tb {
    padding-bottom: 80px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb80--pc {
    padding-bottom: 80px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb88--tb {
    padding-bottom: 88px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb88--pc {
    padding-bottom: 88px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb96--tb {
    padding-bottom: 96px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb96--pc {
    padding-bottom: 96px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb104--tb {
    padding-bottom: 104px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb104--pc {
    padding-bottom: 104px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb120--tb {
    padding-bottom: 120px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb120--pc {
    padding-bottom: 120px !important;
  }
}

@media screen and (min-width: 640px) {
  .pb144--tb {
    padding-bottom: 144px !important;
  }
}
@media screen and (min-width: 960px) {
  .pb144--pc {
    padding-bottom: 144px !important;
  }
}

.pb160 {
  padding-bottom: 160px !important;
}
@media screen and (min-width: 960px) {
  .pb160--pc {
    padding-bottom: 160px !important;
  }
}

.pb200 {
  padding-bottom: 200px !important;
}
@media screen and (min-width: 960px) {
  .pb200--pc {
    padding-bottom: 200px !important;
  }
}

.pb240 {
  padding-bottom: 240px !important;
}
@media screen and (min-width: 960px) {
  .pb240--pc {
    padding-bottom: 240px !important;
  }
}

@media screen and (min-width: 960px) {
  .pb280--pc {
    padding-bottom: 280px !important;
  }
}

@media screen and (min-width: 960px) {
  .pb320--pc {
    padding-bottom: 320px !important;
  }
}

@media screen and (min-width: 960px) {
  .pb360--pc {
    padding-bottom: 360px !important;
  }
}

@media screen and (min-width: 960px) {
  .pb480--pc {
    padding-bottom: 480px !important;
  }
}

.pt4 {
  padding-top: 4px !important;
}

.pt8 {
  padding-top: 8px !important;
}

.pt12 {
  padding-top: 12px !important;
}

.pt16 {
  padding-top: 16px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt24 {
  padding-top: 24px !important;
}

.pt32 {
  padding-top: 32px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt48 {
  padding-top: 48px !important;
}

.pt56 {
  padding-top: 56px !important;
}

.pt64 {
  padding-top: 64px !important;
}

.pt72 {
  padding-top: 72px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt88 {
  padding-top: 88px !important;
}

.pt96 {
  padding-top: 96px !important;
}

.pt104 {
  padding-top: 104px !important;
}

.pt120 {
  padding-top: 120px !important;
}

.pt144 {
  padding-top: 144px !important;
}

.pt160 {
  padding-top: 160px !important;
}

.pt200 {
  padding-top: 200px !important;
}

.pt320 {
  padding-top: 320px !important;
}

.pt360 {
  padding-top: 360px !important;
}

@media screen and (min-width: 640px) {
  .pt4--tb {
    padding-top: 4px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt8--tb {
    padding-top: 8px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt8--pc {
    padding-top: 8px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt12--tb {
    padding-top: 12px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt16--tb {
    padding-top: 16px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt16--pc {
    padding-top: 16px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt20--tb {
    padding-top: 20px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt24--tb {
    padding-top: 24px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt24--pc {
    padding-top: 24px !important;
  }
}

.pt32--sp {
  padding-top: 32px;
}
@media screen and (min-width: 960px) {
  .pt32--sp {
    padding-top: 0;
  }
}
@media screen and (min-width: 640px) {
  .pt32--tb {
    padding-top: 32px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt32--pc {
    padding-top: 32px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt40--tb {
    padding-top: 40px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt40--pc {
    padding-top: 40px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt48--tb {
    padding-top: 48px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt48--pc {
    padding-top: 48px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt56--tb {
    padding-top: 56px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt56--pc {
    padding-top: 56px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt64--tb {
    padding-top: 64px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt64--pc {
    padding-top: 64px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt72--tb {
    padding-top: 72px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt72--pc {
    padding-top: 72px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt80--tb {
    padding-top: 80px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt80--pc {
    padding-top: 80px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt88--tb {
    padding-top: 88px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt88--pc {
    padding-top: 88px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt96--tb {
    padding-top: 96px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt96--pc {
    padding-top: 96px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt104--tb {
    padding-top: 104px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt104--pc {
    padding-top: 104px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt120--tb {
    padding-top: 120px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt120--pc {
    padding-top: 120px !important;
  }
}

@media screen and (min-width: 640px) {
  .pt144--tb {
    padding-top: 144px !important;
  }
}
@media screen and (min-width: 960px) {
  .pt144--pc {
    padding-top: 144px !important;
  }
}

.pt160 {
  padding-top: 160px !important;
}
@media screen and (min-width: 960px) {
  .pt160--pc {
    padding-top: 160px !important;
  }
}

.pt200 {
  padding-top: 200px !important;
}
@media screen and (min-width: 960px) {
  .pt200--pc {
    padding-top: 200px !important;
  }
}

@media screen and (min-width: 960px) {
  .pt320--pc {
    padding-top: 320px !important;
  }
}

@media screen and (min-width: 960px) {
  .pt360--pc {
    padding-top: 360px !important;
  }
}

.xsVis {
  display: none;
}
@media screen and (min-width: 380px) {
  .xsVis {
    display: block;
  }
}

.xxsNone {
  display: block !important;
}
@media screen and (min-width: 340px) {
  .xxsNone {
    display: none !important;
  }
}

.xsNone {
  display: block !important;
}
@media screen and (min-width: 380px) {
  .xsNone {
    display: none !important;
  }
}

.smVis {
  display: none !important;
}
@media screen and (min-width: 428px) {
  .smVis {
    display: block !important;
  }
}

.smNone {
  display: block;
}
@media screen and (min-width: 428px) {
  .smNone {
    display: none !important;
  }
}

.mdVis {
  display: none;
}
@media screen and (min-width: 640px) {
  .mdVis {
    display: block !important;
  }
}
.mdVis--flex {
  display: none !important;
}
@media screen and (min-width: 640px) {
  .mdVis--flex {
    display: flex !important;
  }
}

.mdNone {
  display: block !important;
}
@media screen and (min-width: 640px) {
  .mdNone {
    display: none !important;
  }
}
.mdNone--flex {
  display: flex !important;
}
@media screen and (min-width: 640px) {
  .mdNone--flex {
    display: none !important;
  }
}

.bdVis {
  display: none !important;
}
@media screen and (min-width: 800px) {
  .bdVis {
    display: block !important;
  }
}

.bdNone {
  display: block !important;
}
@media screen and (min-width: 800px) {
  .bdNone {
    display: none !important;
  }
}

.lgVis {
  display: none;
}
@media screen and (min-width: 960px) {
  .lgVis {
    display: block !important;
  }
}

.lgNone {
  display: block;
}
@media screen and (min-width: 960px) {
  .lgNone {
    display: none !important;
  }
}

.xlNone {
  display: block !important;
}
@media screen and (min-width: 1200px) {
  .xlNone {
    display: none !important;
  }
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  height: 64px;
  background-color: #fff;
  border-bottom:#ddd 2px solid;
}
@media screen and (min-width: 960px) {
  .header {
    height: 90px;
  }
}
.header ul {
  padding: 0;
  list-style: none;
}
.header__content {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 10;
}
.header__logo {
  font-size: 3rem;
  line-height: 3.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #ffffff;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  position: relative;
  left: 28px;
}
@media screen and (min-width: 960px) {
  .header__logo {
    font-size: 2.7rem;
    line-height: 3.4rem;
    left: 0;
  }
}
@media screen and (min-width: 1200px) {
  .header__logo {
    font-size: 3rem;
    line-height: 3.7rem;
  }
}
.header__main {
  display: none;
}
@media screen and (min-width: 960px) {
  .header__main {
    display: flex;
    align-items: center;
  }
}
.header__nav ul {
  display: flex;
  align-items: center;
  gap: 20px;
}
.header__nav__li {
  font-size: 1.5rem;
  line-height: 1.5rem;
  white-space: nowrap;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-weight: 700;
  color: #000;
}
.header__nav__li--en {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.header__nav__li--product {
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: 0.2s ease;
}
.header__nav__li--product:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.header__nav__li--product::after {
  margin-left: 5px;
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  background-image: url("../img/arrow-white.svg");
  background-size: cover;
}
.header__nav__li--open {
  color: #D44D2C !important;
}
.header__nav__li--open::after {
  background-image: url("../img/arrow-down.svg") !important;
}
.header__nav__li a {
  color: #000;
  text-decoration: none;
  transition: 0.2s ease;
}
.header__nav__li a:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.header__btn {
  margin-left: 25px;
  width: 188px;
  height: 52px;
  font-size: 1.5rem;
  line-height: 1.5rem;
}
@media screen and (min-width: 1200px) {
  .header__btn {
    width: 204px;
    height: 56px;
  }
}
.header__btn__icon {
  display: block;
  width: 24px;
  height: auto;
  position: relative;
  z-index: 3;
  margin-left: -12px;
  margin-right: 8px;
  top: 1px;
}
.header__product {
  display: none;
  position: absolute;
  background-color: #EBE9DF;
  top: 90px;
  left: 0;
  right: 0;
  z-index: 9;
  padding: 56px 0;
}
.header__product__content {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__product__head small {
  display: block;
  color: #D44D2C;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  line-height: 1.9rem;
  font-weight: 400;
  letter-spacing: 0.025em;
}
.header__product__head span {
  display: block;
  color: #3D3122;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 3rem;
  line-height: 4.4rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.header__product__main {
  display: flex;
  align-items: center;
  gap: 30px;
}
.header__product__nav {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 16px;
}
@media screen and (min-width: 1200px) {
  .header__product__nav {
    grid-template-columns: 150px 1fr;
    gap: 24px;
  }
}
.header__product__nav img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.header__product__nav__head {
  display: block;
  padding-bottom: 6px;
  border-bottom: solid 1px #D9D4C4;
}
@media screen and (min-width: 1200px) {
  .header__product__nav__head {
    display: flex;
    align-items: center;
    gap: 12px;
  }
}
.header__product__nav__head span {
  display: block;
  color: #3D3122;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
  line-height: 2.7rem;
  font-weight: 700;
  letter-spacing: 0em;
}
.header__product__nav__head small {
  display: block;
  color: #D44D2C;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.025em;
}
.header__product__nav__ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.header__product__nav__li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.7rem;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  white-space: nowrap;
}
.header__product__nav__li::before {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  background-color: #8E867B;
  position: relative;
  top: 1px;
}
.header__product__nav__li a {
  text-decoration: none;
  color: #8E867B;
  transition: 0.2s ease;
}
.header__product__nav__li a:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.header__product--open {
  animation: comeDown 0.2s ease;
}
@media screen and (min-width: 960px) {
  .header__product--open {
    display: block;
  }
}
.header--fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: #F8F8F4;
}
.header--fixed .header__logo, .header--fixed .header__nav__li {
  color: #3D3122;
}
.header--fixed .header__logo a, .header--fixed .header__nav__li a {
  color: #3D3122;
}
.header--fixed .header__logo {
  left: 0;
}
.header--fixed .header__nav__li--product::after {
  background-image: url("../img/arrow-down-pos.svg");
}
.header--fixedanim {
  animation: comeDown 0.2s ease;
}
.logo{height:60px;}
@media screen and (max-width: 450px) {
  .logo {
    height:40px;
  }
}
.visiongrid {
  display: grid;
  grid-template-columns:1fr;
  gap: 15px;
}
@media screen and (min-width: 960px) {
  .visiongrid{
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
}
}
.card{
  color: #333333;
  background-color: #F8F8F4;
  font-size: 30px;
  border-radius: 20px;
  padding:35px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.15); 
  border:solid 1px #00edca;
}
.card img{
border-radius:8px;
margin:25px 0px; 
}
.spNav {
  position: relative;
}
.spNav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.spNav__cover {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #252320 !important;
  opacity: 0.8;
  z-index: 4;
}
.spNav__width {
  width: 85%;
  margin-left: auto;
  margin-right: auto;
  border-top: solid 1px #D9D4C4;
  padding-top: 16px;
}
.spNav__content {
  display: none;
  background-color: #F8F8F4;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  padding-bottom: 30px;
  box-sizing: border-box;
  padding-top: 64px;
  z-index: 5;
  border-radius: 0 0 20px 20px;
}
.spNav__head {
  font-size: 1.6rem;
  line-height: 2.7rem;
  font-weight: 700;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #3D3122;
}
.spNav__product {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-bottom: solid 1px #D9D4C4;
}
.spNav__product__head {
  color: #AE9F8B;
  font-size: 1.3rem;
  line-height: 1.9rem;
  letter-spacing: 0.04em;
  font-weight: 500;
}
.spNav__product ul {
  padding-left: 14px;
}
.spNav__product ul a {
  color: #3D3122;
  transition: 0.2s ease;
}
.spNav__product ul a:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.spNav__product ul li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1.5rem;
  line-height: 2.7rem;
  font-weight: 700;
}
.spNav__product ul li::before {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  background-color: #8E867B;
  position: relative;
  top: 1px;
}
.spNav__nav a {
  color: #3D3122;
  transition: 0.2s ease;
}
.spNav__nav a:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.spNav__nav__li {
  display: flex;
  align-items: center;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  line-height: 2.7rem;
  font-weight: 700;
  padding: 16px 0;
  border-bottom: solid 1px #D9D4C4;
  position: relative;
}
.spNav__nav__li::after {
  content: "";
  width: 12px;
  height: 12px;
  background-image: url("../img/arrow.svg");
  background-size: cover;
  position: absolute;
  right: 6px;
}
.spNav__btn {
  cursor: pointer;
  text-decoration: none;
  background-color: #134f8f;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1.5rem;
  font-weight: 700;
  letter-spacing: 0em;
  width: 100%;
  height: 86px;
  box-sizing: border-box;
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  transition: 0.3s ease;
  overflow: hidden !important;
  padding: 0 14px;
}
@media screen and (min-width: 340px) {
  .spNav__btn {
    padding: 0 25px;
  }
}
@media screen and (min-width: 960px) {
  .spNav__btn {
    padding: 0 33px;
    height: 105px;
    border-radius: 12px;
    border: none;
  }
}
.spNav__btn__content {
  position: relative;
  z-index: 2;
  transition: 0.3s ease;
  display: grid;
  align-items: center;
  grid-template-columns: 50px 1fr;
  width: 100%;
  gap: 6px;
}
@media screen and (min-width: 960px) {
  .spNav__btn__content {
    gap: 16px;
    grid-template-columns: 52px 1fr;
  }
}
.spNav__btn__icon {
  width: 44px;
  height: 44px;
}
@media screen and (min-width: 340px) {
  .spNav__btn__icon {
    width: 50px;
    height: 50px;
  }
}
@media screen and (min-width: 960px) {
  .spNav__btn__icon {
    width: 52px;
    height: 52px;
  }
}
.spNav__btn__txt {
  color: #ffffff;
  font-size: 1.5rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
  text-align: left;
}
@media screen and (min-width: 340px) {
  .spNav__btn__txt {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 380px) {
  .spNav__btn__txt {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 960px) {
  .spNav__btn__txt {
    font-size: 1.9rem;
    line-height: 2.7rem;
  }
}
.spNav__btn::before {
  content: "";
  background-color: #004970;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s ease;
  transform: translateX(-100%);
}
.spNav__btn:hover {
  color: #ffffff;
  transition: 0.3s ease;
}
.spNav__btn:hover::before {
  right: 0;
  transform: translateX(0);
}
.spNav__btn:hover .frontBtn__btn__content {
  transform: translateX(2px);
  transition: 0.3s ease;
}
.spNav--open .spNav__cover {
  display: block;
}
.spNav--open .spNav__content {
  display: block;
  animation: comeDownSp 0.2s ease-out;
}

.spNavBtn {
  background-color: transparent;
  border: none;
  position: absolute;
  right: 5vw;
  top: 14px;
  width: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 12;
}
@media screen and (min-width: 640px) {
  .spNavBtn {
    width: 32px;
  }
}
@media screen and (min-width: 960px) {
  .spNavBtn {
    display: none;
  }
}
.spNavBtn span {
  width: 24px;
  background-color: #bbb;
  height: 2px;
  margin: 3px;
  transition: transform 0.2s ease;
}
@media screen and (min-width: 640px) {
  .spNavBtn span {
    width: 32px;
  }
}
.spNavBtn--open span {
  transition: transform 0.2s ease;
  background-color: #3D3122;
}
.spNavBtn--open span:first-of-type {
  transform: rotate(45deg) translateY(8px) translateX(4px);
}
.spNavBtn--open span:nth-of-type(2) {
  display: none;
}
.spNavBtn--open span:last-of-type {
  transform: rotate(-45deg) translateY(-2px) translateX(-2px);
}
@media screen and (min-width: 960px) {
  .spNavBtn {
    display: none;
  }
}

.header--fixed .spNavBtn span {
  background-color: #bbb;
}

.footer {
  background-color: #134f8f;
  position: relative;
  padding-top: 120px;
}
@media screen and (min-width: 640px) {
  .footer {
    padding-top: 160px;
  }
}
@media screen and (min-width: 960px) {
  .footer {
    padding-top: 80px;
  }
}
.footer a {
  transition: 0.2s ease;
}
.footer a:hover {
  opacity: 0.8;
  transition: 0.2s ease;
}
.footer__topLink {
  position: absolute;
  top: 40px;
  right: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  width: 80px;
  height: 80px;
  border-radius: 40px;
  font-size: 1.2rem;
  line-height: 1.2rem;
  letter-spacing: 0.04em;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-weight: 700;
  color: #3D3122;
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  .footer__topLink {
    top: auto;
    bottom: 48px;
    right: 40px;
  }
}
@media screen and (min-width: 1360px) {
  .footer__topLink {
    right: 80px;
    right: calc(-600px + 50vw);
  }
}
.footer__topLink::before {
  content: "";
  width: 6px;
  height: 6px;
  background-image: url("../img/arrow.svg");
  background-size: cover;
  transform: rotate(-90deg);
  position: absolute;
  top: 6px;
}
.footer__content {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column-reverse;
}
@media screen and (min-width: 960px) {
  .footer__content {
    flex-direction: row;
    justify-content: space-between;
  }
}
.footer__info {
  max-width: 340px;
}
.footer__info__logo {
  font-size: 3rem;
  line-height: 3.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #ffffff;
}
.footer__info__txt {
  font-size: 1.5rem;
  line-height: 2.1rem;
  letter-spacing: 0.04em;
  font-weight: 400;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #ffffff;
}
.footer__info__social {
  display: flex;
  align-items: center;
  gap: 16px;
}
.footer__info__social img {
  display: block;
  width: 32px;
  height: auto;
}
.footer__nav {
  display: block;
}
.footer__nav ul {
  padding: 0;
  list-style: none;
}
.footer__nav a {
  color: #ffffff;
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  .footer__nav {
    display: grid;
    grid-template-columns: 300px 120px;
    gap: 40px;
  }
}
.footer__nav__head {
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding-bottom: 6px;
  border-bottom: solid 1px #8E867B;
}
.footer__nav__product {
  border-bottom: solid 1px #8E867B;
}
@media screen and (min-width: 960px) {
  .footer__nav__product {
    border-bottom: none;
  }
}
.footer__nav__product__head {
  color: #AE9F8B;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.3rem;
  line-height: 1.9rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  grid-column: 1/3;
  width: 100%;
}
.footer__nav__product__main {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.footer__nav__product__blk {
  display: block;
  width: 100%;
}
.footer__nav__product ul {
  width: 100%;
  box-sizing: border-box;
  padding-left: 16px;
}
.footer__nav__product ul li {
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  display: flex;
  gap: 8px;
  align-items: center;
}
.footer__nav__product ul li::before {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  background-color: #ffffff;
}
.footer__nav__others {
  width: 100%;
  box-sizing: border-box;
}
.footer__nav__others li {
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  display: flex;
  gap: 8px;
  align-items: center;
}
.footer__nav__others li::before {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  background-color: #ffffff;
}
.footer__copy {
  display: block;
  color: #ffffff;
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.3rem;
  line-height: 1.6rem;
  letter-spacing: 0.04em;
  font-weight: 400;
}

.head01 {
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-weight: 700;
  font-size: 3.6rem;
  letter-spacing: 0.04em;
  line-height: 4rem;
}

.fv {
  position: relative;
}
.fv__content {
  display: grid;
  grid-template-columns: 30px 1fr;
}
.recruitbg {
  background-image:url(http://kotokikai.catfood.jp/wordpress/wp-content/themes/kotokikai/assets/img/recruitbg.jpg);
  background-size:cover;
  background-position:center;
}
@media screen and (min-width: 960px) {
  .fv__content {
    grid-template-columns: 46px 1fr;
  }
}
@media screen and (min-width: 1200px) {
  .fv__content {
    grid-template-columns: 60px 1fr;
  }
}
.fv__left {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #696054;
  background-color: #F8F8F4;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 1.2rem;
  line-height: 1.5rem;
  letter-spacing: 0.04em;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .fv__left {
    font-size: 4rem;
    line-height: 1.9rem;
  }
}
.fv__main {
  position: relative;
  height: 80vh;
}
.fv__main__img {
  overflow: hidden;
  border-radius: 0 0 0 30px;
}
@media screen and (min-width: 960px) {
  .fv__main__img {
    border-radius: 0 0 0 40px;
  }
}
.fv__main__img img {
  display: block;
  object-fit: cover;
  width: auto;
  height: 80vh;
  width:100%;
}
.fv__main__txt {
  position: absolute;
  bottom: 25px;
  left: 32px;
}
@media screen and (min-width: 380px) {
  .fv__main__txt {
    bottom: 40px;
  }
}
@media screen and (min-width: 960px) {
  .fv__main__txt {
    bottom: 78px;
    left: 80px;
  }
}
@media screen and (min-width: 1360px) {
  .fv__main__txt {
    left: 100px;
    left: calc(50vw - 600px - 60px);
  }
}
.fv__main__txt img {
  display: block;
  width: 220px;
  height: auto;
}
@media screen and (min-width: 428px) {
  .fv__main__txt img {
    width: 280px;
  }
}
@media screen and (min-width: 960px) {
  .fv__main__txt img {
    width: 392px;
  }
}
.fv__scroll {
  position: absolute;
  right: 24px;
  bottom: 120px;
  color: #ffffff;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .fv__scroll {
  }
}
@media screen and (min-width: 1200px) {
  .fv__scroll {
    right: 48px;
  }
}
@media screen and (min-width: 1360px) {
  .fv__scroll {
    right: calc(50vw - 600px);
  }
}
.fv__scroll span {
  font-size: 1.4rem;
  line-height: 1.8rem;
}
@media screen and (min-width: 960px) {
  .fv__scroll span {
    font-size: 1.8rem;
    line-height: 2.2rem;
  }
}
.fv__scroll::after {
  content: "";
  display: block;
  width: 1px;
  height: 40px;
  background-color: #ffffff;
}
@media screen and (min-width: 960px) {
  .fv__scroll::after {
    height: 60px;
  }
}

@media screen and (min-width: 960px) {
  .frontIntro {
    display: grid;
    grid-template-columns: 15fr 17fr;
  }
}
.frontIntro__head {
  font-size: 6rem;
  line-height: 5rem;
  letter-spacing: 0.04em;
  color: #444a;
  text-shadow: 4px 10px 0px #ddd;
}
@media screen and (min-width: 960px) {
  .frontIntro__head {
    font-size: 7.8rem;
    line-height: 4rem;
  }
}

.frontIntro__head span {
  display: block;
}
.frontIntro__img {
  position: relative;
  z-index: 2;
  overflow: visible;
  height: auto;
}
.frontIntro__img img {
  display: block;
  height: auto;
}
.frontIntro__img__main {
  border-radius: 0 20px 20px 0;
  margin-left: -10%;
  width: 100%;
}
@media screen and (min-width: 960px) {
  .frontIntro__img__main {
    border-radius: 0 30px 30px 0;
  }
}
.frontIntro__img__sub {
  border-radius: 12px;
  position: absolute;
  right: 0;
  bottom: -24px;
  max-width: 200px;
}
@media screen and (min-width: 960px) {
  .frontIntro__img__sub {
    border-radius: 16px;
    max-width: none;
    width: 22.5vw;
    top: 31.25vw;
  }
}
.frontIntro__content {
  position: relative;
}
@media screen and (min-width: 960px) {
  .frontIntro__content {
    padding-top: 40px;
    padding-bottom: 60px;
  }
}
.frontIntro__content::before, .frontIntro__content::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
}
.frontIntro__content::before {
  animation: rotation 60s linear infinite;
  background-image: url("../img/firewood.svg");
  width: 250px;
  height: 250px;
  right: -40px;
  top: -100px;
}
@media screen and (min-width: 960px) {
  .frontIntro__content::before {
    width: 464px;
    height: 464px;
    right: 38px;
    top: -100px;
  }
}
.frontIntro__content::after {
  background-color: #F3F1EB;
  top: 52px;
  bottom: -50px;
  left: 0;
  right: 0;
}
@media screen and (min-width: 960px) {
  .frontIntro__content::after {
    border-radius: 20px 0 0 20px;
    width: 70vw;
    top: 90px;
    left: auto;
  }
}
@media screen and (min-width: 1600px) {
  .frontIntro__content::after {
    width: 66.25vw;
    height: 8vw;
    min-height: 400px;
    top: 90px;
    left: auto;
  }
}
.frontIntro__content__main {
  position: relative;
  z-index: 2;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
@media screen and (min-width: 960px) {
  .frontIntro__content__main {
    padding-right: 5vw;
    padding-left: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .frontIntro__content__main {
    padding-right: 7vw;
    padding-left: 0px;
  }
}
@media screen and (min-width: 1600px) {
  .frontIntro__content__main {
    padding-right: calc(50vw - 800px);
    padding-left: 0px;
  }
}
@media screen and (min-width: 1720px) {
  .frontIntro__content__main {
    padding-right: calc(50vw - 800px);
    padding-left: 0px;
  }
}

.frontBoiler__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.frontBoiler__intro img {
  display: block;
  width: 240px;
  height: auto;
  border-radius: 8px;
}
.frontBoiler__lineup {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }
}
.frontBoiler__lineup__blk {
  position: relative;
  padding-top: 40px;
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk {
    background-color: #F3F1EB;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk--left {
    padding-right: 80px;
    padding-left: 5vw;
    border-radius: 0 20px 20px 0;
  }
}
@media screen and (min-width: 1360px) {
  .frontBoiler__lineup__blk--left {
    padding-left: calc(50vw - 600px);
  }
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk--right {
    padding-left: 80px;
    padding-right: 5vw;
    border-radius: 20px 0 0 20px;
  }
}
@media screen and (min-width: 1360px) {
  .frontBoiler__lineup__blk--right {
    padding-right: calc(50vw - 600px);
  }
}
.frontBoiler__lineup__blk__content {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk__content {
    width: 100%;
  }
}
.frontBoiler__lineup__blk__content__img {
  display: block;
  width: 100%;
  height: auto;
}
.frontBoiler__lineup__blk__content__icon {
  display: block;
  width: 70px;
  height: 70px;
  margin-left: auto;
  margin-right: auto;
  margin-top: -35px;
}
.frontBoiler__lineup__blk__content__head {
  font-size: 2rem;
  line-height: 3.6rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  text-align: center;
  color: #D44D2C;
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk__content__head {
    font-size: 2.4rem;
    line-height: 3.8rem;
  }
}
.frontBoiler__lineup__blk::before {
  content: "";
  display: block;
  background-color: #F3F1EB;
  top: 0;
  bottom: 28px;
  left: 0;
  right: 0;
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  .frontBoiler__lineup__blk::before {
    display: none;
  }
}
.frontBoiler__lineup__blk--left::before {
  right: 10px;
  border-radius: 0 20px 20px 0;
}
.frontBoiler__lineup__blk--right::before {
  left: 10px;
  border-radius: 20px 0 0 20px;
}

.frontStove__lineup {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.frontStove__lineup__blk {
  position: relative;
  background-color: #F3F1EB;
  padding-top: 40px;
  padding-bottom: 60px;
}
.frontStove__lineup__blk__content {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}

.frontStove__lineup__blk__content__img {
  display: block;
  width: 100%;
  height: auto;
}
.frontStove__lineup__blk__content__icon {
  display: block;
  width: 70px;
  height: 70px;
  margin-left: auto;
  margin-right: auto;
  margin-top: -35px;
}
.frontStove__lineup__blk__content__head {
  font-size: 2rem;
  line-height: 3.6rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  text-align: center;
  color: #D44D2C;
}
@media screen and (min-width: 960px) {
  .frontStove__lineup__blk__content__head {
    font-size: 2.4rem;
    line-height: 3.8rem;
  }
}
.frontStove__lineup__blk::before {
  content: "";
  display: block;
  top: 0;
  bottom: 28px;
  left: 0;
  right: 0;
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  .frontStove__lineup__blk::before {
    display: none;
  }
}

.frontBtn__content {
  background-image: url("../img/front-btn-bg-sp.jpg");
  background-size: cover;
}
@media screen and (min-width: 640px) {
  .frontBtn__content {
    background-image: url("../img/front-btn-bg.jpg");
    background-position: center;
  }
}
.frontBtn__btns {
  width: 84%;
  max-width: 736px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  padding: 60px 0;
  gap: 20px;
}
@media screen and (min-width: 960px) {
  .frontBtn__btns {
    grid-template-columns: 1fr 1fr;
  }
}
.frontBtn__btn {
  cursor: pointer;
  text-decoration: none;
  background-color: #134f8f;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1.5rem;
  font-weight: 700;
  letter-spacing: 0em;
  width: 100%;
  height: 86px;
  box-sizing: border-box;
  border: solid 3px #D67D62;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  transition: 0.3s ease;
  overflow: hidden !important;
  padding: 0 14px;
}
@media screen and (min-width: 340px) {
  .frontBtn__btn {
    padding: 0 18px;
  }
}
@media screen and (min-width: 960px) {
  .frontBtn__btn {
    padding: 0 33px;
    height: 105px;
    border-radius: 12px;
    border: none;
  }
}
.frontBtn__btn__content {
  position: relative;
  z-index: 2;
  transition: 0.3s ease;
  display: grid;
  align-items: center;
  grid-template-columns: 50px 1fr;
  width: 100%;
  gap: 6px;
}
@media screen and (min-width: 960px) {
  .frontBtn__btn__content {
    gap: 16px;
    grid-template-columns: 52px 1fr;
  }
}
.frontBtn__btn__icon {
  width: 44px;
  height: 44px;
}
@media screen and (min-width: 340px) {
  .frontBtn__btn__icon {
    width: 50px;
    height: 50px;
  }
}
@media screen and (min-width: 960px) {
  .frontBtn__btn__icon {
    width: 52px;
    height: 52px;
  }
}
.frontBtn__btn__txt {
  font-size: 1.5rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
  text-align: left;
  color: #ffffff;
}
@media screen and (min-width: 340px) {
  .frontBtn__btn__txt {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 380px) {
  .frontBtn__btn__txt {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 960px) {
  .frontBtn__btn__txt {
    font-size: 1.9rem;
    line-height: 2.7rem;
  }
}
.frontBtn__btn::before {
  content: "";
  background-color: #004970;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: 0.3s ease;
  transform: translateX(-100%);
}
.frontBtn__btn:hover {
  transition: 0.3s ease;
}
.frontBtn__btn:hover::before {
  right: 0;
  transform: translateX(0);
}
.frontBtn__btn:hover .frontBtn__btn__content {
  transform: translateX(2px);
  transition: 0.3s ease;
}
.frontBtn__btn--flyer .frontBtn__btn__txt {
  display: flex;
  align-items: center;
}
.frontBtn__btn--flyer .frontBtn__btn__txt::after {
  margin-left: 8px;
  content: "";
  width: 16px;
  height: 16px;
  display: block;
  background-image: url("../img/arrow-white.svg");
  background-size: cover;
}
.frontBtn__wrapper {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.frontBtn__sub {
  transition: 0.2s ease-in;
  opacity: 1;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  right: 0;
  bottom: -180px;
  background-color: #F8F8F4;
  padding: 10px 12px;
  border-radius: 12px;
  z-index:99;
}
@media screen and (min-width: 428px) {
  .frontBtn__sub {
    padding: 15px 20px;
    left: auto;
    right: auto;
  }
}
.frontBtn__sub a {
  color: #ffffff;
  text-decoration: none;
}
.frontBtn__sub::before {
  content: "";
  display: block;
  width: 35px;
  height: 20px;
  background-image: url("../img/triangle.svg");
  background-size: cover;
  position: absolute;
  top: -12px;
}
.frontBtn__sub ul {
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  gap: 8px;
}
@media screen and (min-width: 428px) {
  .frontBtn__sub ul {
    grid-template-columns: repeat(3, 96px);
    gap: 12px;
  }
}
.frontBtn__sub li {
  width: 100%;
  height: 110px;
  background-color: #134f8f;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
}
.frontBtn__sub li img {
  display: block;
  width: 32px;
  height: auto;
}
.frontBtn__sub li span {
  display: block;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  text-align: center;
}
.frontBtn__sub li::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-image: url("../img/dl-icon.svg");
  background-size: cover;
}
.frontBtn__sub--hidden {
  transition: 0.2s ease-in;
  opacity: 0 !important;
  pointer-events: none !important;
}

.footBnrs {
  padding: 48px 0;
  background-color: #F3F1EB;
}
@media screen and (min-width: 960px) {
  .footBnrs {
    padding: 80px 0;
  }
}
.footBnrs__bnrs {
  width: 90%;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  justify-items: center;
  grid-template-columns: repeat(1, 1fr);
  gap: 16px;
}
@media screen and (min-width: 960px) {
  .footBnrs__bnrs {
    max-width: 1200px;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
}
.footBnrs__bnrs img {
  display: block;
  width: 100%;
  height: auto;
}

/*lowerpages*/
.pageHeader {
  position: relative;
  overflow: hidden !important;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 960px) {
  .pageHeader {
    background-size: auto 100%;
  }
}
@media screen and (min-width: 1600px) {
  .pageHeader {
    background-size: cover;
  }
}
.pageHeader--about {
  background-image: url("../img/about-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--about {
    background-image: url("../img/about-pageheadbg.jpg");
  }
}
.pageHeader--flow {
  background-image: url("../img/flow-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--flow {
    background-image: url("../img/flow-pageheadbg.jpg");
  }
}
.pageHeader--faq {
  background-image: url("../img/faq-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--faq {
    background-image: url("../img/faq-pageheadbg.jpg");
  }
}
.pageHeader--shoplist {
  background-image: url("../img/shoplist-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--shoplist {
    background-image: url("../img/shoplist-pageheadbg.jpg");
  }
}
.pageHeader--kedo {
  background-image: url("../img/recruitbg.jpg");
background-size:cover;
}
@media screen and (min-width: 960px) {
  .pageHeader--kedo {
    background-image: url("../img/recruitbg.jpg");
  }
}
.pageHeader--voda {
  background-image: url("../img/voda-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--voda {
    background-image: url("../img/voda-pageheadbg.jpg");
  }
}
.pageHeader--lepo {
  background-image: url("../img/lepo-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--lepo {
    background-image: url("../img/lepo-pageheadbg.jpg");
  }
}
.pageHeader--heatpanel {
  background-image: url("../img/heatpanel-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--heatpanel {
    background-image: url("../img/heatpanel-pageheadbg.jpg");
  }
}
.pageHeader--contact {
  background-image: url("../img/contact-pageheadbg-sp.jpg");
}
@media screen and (min-width: 960px) {
  .pageHeader--contact {
    background-image: url("../img/contact-pageheadbg.jpg");
  }
}
.pageHeader__content {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: end;
  justify-content: center;
  height: 190px;
  padding-bottom: 32px;
  box-sizing: border-box;
}
@media screen and (min-width: 960px) {
.pageHeader__content {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 370px;
}
}

.pageHeader__head {
  color: #ffffff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.pageHeader__head__ja {
  font-size: 3.2rem;
  line-height: 3.2rem;
  font-weight: 700;
  color:#000;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .pageHeader__head__ja {
    font-size: 4.8rem;
    line-height: 4.8rem;
  }
}
.pageHeader__head__en {
  font-size: 1.8rem;
  line-height: 2.4rem;
  font-weight: 500;
  letter-spacing:1rem;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  opacity: 0.7;
  color:#004aaa;
}
@media screen and (min-width: 960px) {
  .pageHeader__head__en {
    font-size: 2.4rem;
    line-height: 2.8rem;
  }
}

.pageContents {
  position: relative;
  z-index: 3;
  background-color: #F8F8F4;
  border-radius: 20px 20px 0 0;
  padding-top: 28px;
}
@media screen and (min-width: 960px) {
.pageContents {
margin-top:-60px;
  }
}


.breadcrumb {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.breadcrumb ul {
  display: flex;
  align-items: flex-start;
  padding: 0;
  margin: 0;
}
.breadcrumb ul a {
  color: #C6C1B3;
  text-decoration: none;
}
.breadcrumb ul a:hover {
  color: #D44D2C;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.breadcrumb ul li {
  list-style-type: none;
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .breadcrumb ul li {
    font-size: 1.6rem;
    line-height: 2.2rem;
  }
}
.breadcrumb ul li::after {
  content: "";
  display: block;
  background-image: url("../img/arrow.svg");
  background-size: cover;
  width: 10px;
  height: 10px;
  margin-left: 4px;
  margin-right: 4px;
  position: relative;
  top: 1px;
}
@media screen and (min-width: 960px) {
  .breadcrumb ul li::after {
    margin-left: 8px;
    margin-right: 8px;
  }
}
.breadcrumb ul li:first-of-type {
  white-space: nowrap;
}
.breadcrumb ul li:last-of-type::after {
  display: none !important;
}
.breadcrumb ul li:last-of-type a {
  pointer-events: none !important;
  color: #696054 !important;
}

.faq {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}
.faq__blk {
  border-top: solid 1px #D9D4C4;
}
.faq__blk__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 8px;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 2.8rem;
  line-height: 2.8rem;
  font-weight: 600;
  color: #ffffff;
}
.faq__blk__q, .faq__blk__a {
  display: grid;
  align-items: flex-start;
  grid-template-columns: 48px 1fr;
  gap: 20px;
}
.faq__blk__q__txt {
  font-size: 1.8rem;
  line-height: 3.6rem;
  position: relative;
  top: 4px;
}
.faq__blk__q .faq__blk__icon {
  background-color: #134f8f;
}
.faq__blk__a__txt {
  position: relative;
  top: 8px;
}
.faq__blk__a .faq__blk__icon {
  background-color: #696054;
}

.company {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.company__blk {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .company__blk {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 24px;
  }
}
@media screen and (min-width: 1200px) {
  .company__blk {
    gap: 40px;
  }
}
.company__blk__img {
  display: block;
  width: 100%;
  height: auto;
}

.flow {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.flow__arrow {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 36px;
  height: auto;
}
.flow__caution {
  border-top: solid 2px #134f8f;
  border-bottom: solid 2px #134f8f;
  padding: 40px 0;
  display: grid;
  align-items: center;
  grid-template-columns: 78px 1fr;
  gap: 30px;
}
.flow__caution img {
  display: block;
  width: 100%;
  height: auto;
}
.flow__blk {
  border: solid 2px #C6C1B3;
  border-radius: 8px;
  padding: 40px 24px;
}
@media screen and (min-width: 960px) {
  .flow__blk {
    border: solid 2px #C6C1B3;
    border-radius: 16px;
    padding: 40px;
  }
}
.flow__blk__content {
  display: grid;
  gap: 24px;
}
@media screen and (min-width: 960px) {
  .flow__blk__content {
    grid-template-columns: 280px 1fr;
    align-items: flex-start;
    gap: 40px;
  }
}
.flow__blk__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  max-width: 280px;
  margin-left: auto;
  margin-right: auto;
}
.flow__blk__head {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 2.4rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
}
.flow__blk__num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0 12px 0 0;
  border-right: solid 6px #134f8f;
}
.flow__blk__num small {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.2rem;
  line-height: 1.2rem;
  letter-spacing: 0.04em;
  font-weight: 400;
  white-space: nowrap;
}
.flow__blk__num span {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 4.8rem;
  line-height: 4.8rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  white-space: nowrap;
}

.shoplist {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.shoplist__nav {
  width: 100%;
  display: flex;
  justify-content: center;
}
.shoplist__nav ul {
  display: flex;
  align-items: center;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
@media screen and (min-width: 428px) {
  .shoplist__nav ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 640px) {
  .shoplist__nav ul {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 960px) {
  .shoplist__nav ul {
    display: flex;
    gap: 0;
  }
}
.shoplist__nav ul li {
  width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  padding: 8px 16px;
  border-left: solid 1px #C6C1B3;
  list-style: none;
  font-size: 1.3rem;
  line-height: 1.3rem;
  letter-spacing: 0em;
  font-weight: 700;
}
@media screen and (min-width: 340px) {
  .shoplist__nav ul li {
    font-size: 1.4rem;
    line-height: 1.4rem;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 960px) {
  .shoplist__nav ul li {
    box-sizing: content-box;
    padding: 8px 20px;
    font-size: 1.6rem;
    line-height: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .shoplist__nav ul li {
    padding: 8px 36px;
    font-size: 1.6rem;
    line-height: 1.6rem;
  }
}
.shoplist__nav ul li:nth-of-type(2n) {
  border-right: solid 1px #C6C1B3;
}
@media screen and (min-width: 428px) {
  .shoplist__nav ul li:nth-of-type(2n) {
    border-right: 0;
  }
}
@media screen and (min-width: 428px) {
  .shoplist__nav ul li:nth-of-type(3) {
    border-right: solid 1px #C6C1B3;
  }
}
@media screen and (min-width: 640px) {
  .shoplist__nav ul li:nth-of-type(3) {
    border-right: 0;
  }
}
@media screen and (min-width: 640px) {
  .shoplist__nav ul li:nth-of-type(4) {
    border-right: solid 1px #C6C1B3;
  }
}
@media screen and (min-width: 960px) {
  .shoplist__nav ul li:nth-of-type(4) {
    border-right: 0;
  }
}
.shoplist__nav ul li:last-of-type {
  border-right: solid 1px #C6C1B3;
}
.shoplist__nav ul li a {
  color: #134f8f;
  text-decoration: none;
}
.shoplist__head {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
  height: 60px;
  color: #ffffff;
  background-color: #134f8f;
  border-radius: 5px;
  text-align: center;
}
.shoplist__list {
  background-color: #F3F1EB;
  padding: 32px 24px;
  border-radius: 16px;
}
@media screen and (min-width: 960px) {
  .shoplist__list {
    padding: 32px 40px;
    border-radius: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .shoplist__list {
    padding: 40px 50px;
    border-radius: 16px;
  }
}
@media screen and (min-width: 960px) {
  .shoplist__list__head {
    display: flex;
    align-items: flex-start;
    gap: 32px;
  }
}
.shoplist__list__imgs {
  display: grid;
  align-items: center;
  gap: 8px;
  grid-template-columns: 32vw 20vw 20vw;
}
@media screen and (min-width: 960px) {
  .shoplist__list__imgs {
    grid-template-columns: 200px 125px 125px;
  }
}
@media screen and (min-width: 1200px) {
  .shoplist__list__imgs {
    grid-template-columns: 272px 170px 170px;
  }
}
.shoplist__list__imgs img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.shoplist__list__info {
  width: 100%;
}
.shoplist__list__title {
  font-size: 2.4rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  font-weight: 700;
}
.shoplist__list__address, .shoplist__list__link {
  font-size: 1.3rem;
  line-height: 1.9rem;
  letter-spacing: 0.04em;
  font-weight: 500;
}
.shoplist__list__address {
  color: #696054;
}
.shoplist__list__tel small {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #8E867B;
  font-size: 1.1rem;
  line-height: 1.9rem;
  margin-right: 6px;
}
.shoplist__list__tel span {
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #696054;
  font-size: 1.4rem;
  line-height: 1.9rem;
  font-weight: 700;
  margin-right: 12px;
}
.shoplist__list__link a {
  color: #134f8f;
  gap: 4px;
}
.shoplist__list__link a::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background-image: url("../img/outer-icon.svg");
  background-size: cover;
  position: relative;
  top: 1px;
  left: 2px;
}
.shoplist__list__btn {
  margin-right: 0;
}

/*
.contact{
    &__form{
        width:90%;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
        &__row{
            display: flex;
            flex-direction: column;
            @include vm.mq(lg){
                display: grid;
                align-items: flex-start;
                grid-template-columns: 235px 1fr;
            }

            label{
                font-size: 1.8rem;
                line-height: 3.6rem;
                letter-spacing: 0.05em;
                font-weight: 700;
                span{
                    background-color: vm.$colorMain;
                    color:#ffffff;
                    padding:2px 8px;
                    border-radius: 2px;
                    font-size: 1.2rem;
                    line-height: 1.2rem;
                    font-weight: 500;
                }
            }
            input,textarea{
                font-family: vm.$font-family-def;
                color: vm.$colorPos;
                display: block;
                max-width:100%;
                border:none;
                background-color: #F3F1EB;
                font-size: 1.5rem;
                line-height: 3rem;
                letter-spacing: 0.05em;
                padding:2px 8px;
            }
            input::placeholder, textarea::placeholder {
                color: #C6C1B3;
            }
            textarea#title{
                min-height:34px;
                field-sizing: content;
                max-width: 100%;
                min-height: min-content;
            }
        }
        &__submit{
            border: none;
            cursor: pointer;
        }
    }
}
*/
.contact__form {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.contact__form__row p {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .contact__form__row p {
    display: grid;
    align-items: flex-start;
    grid-template-columns: 235px 1fr;
  }
}
.contact__form__row label {
  font-size: 1.8rem;
  line-height: 3.6rem;
  letter-spacing: 0.05em;
  font-weight: 700;
}
.contact__form__row label span {
  background-color: #134f8f;
  color: #ffffff;
  padding: 2px 8px;
  border-radius: 2px;
  font-size: 1.2rem;
  line-height: 1.2rem;
  font-weight: 500;
}
.contact__form__row input, .contact__form__row textarea {
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #3D3122;
  display: block;
  max-width: 100%;
  border: none;
  background-color: #F3F1EB;
  font-size: 1.5rem;
  line-height: 3rem;
  letter-spacing: 0.05em;
  padding: 2px 8px;
}
.contact__form__row input::placeholder, .contact__form__row textarea::placeholder {
  color: #C6C1B3;
}
.contact__form__row textarea#title {
  min-height: 34px;
  field-sizing: content;
  max-width: 100%;
  min-height: min-content;
}
.contact__form__submit {
  border: none;
  cursor: pointer;
}

.wpcf7 form .wpcf7-response-output {
  border: none !important;
  text-align: center;
  color: #3D3122;
  margin: 0;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2.6rem;
  letter-spacing: 0.04em;
  padding: 0;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 428px) {
  .wpcf7 form .wpcf7-response-output {
    font-size: 1.6rem;
    line-height: 2.7rem;
  }
}

.wpcf7-form-control-wrap input {
  width: 100%;
}

.productHead {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.productHead__content {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 50vw 1fr;
  align-items: center;
  gap: 14px;
}
@media screen and (min-width: 340px) {
  .productHead__content {
    grid-template-columns: 54vw 1fr;
    gap: 18px;
  }
}
@media screen and (min-width: 428px) {
  .productHead__content {
    grid-template-columns: 57vw 1fr;
    gap: 20px;
  }
}
@media screen and (min-width: 640px) {
  .productHead__content {
    grid-template-columns: 400px 1fr;
  }
}
@media screen and (min-width: 960px) {
  .productHead__content {
    grid-template-columns: 560px 1fr;
    gap: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .productHead__content {
    grid-template-columns: 680px 1fr;
    gap: 80px;
  }
}
@media screen and (min-width: 1360px) {
  .productHead__content {
    grid-template-columns: 700px 1fr;
    gap: 110px;
  }
}
.productHead__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
}
@media screen and (min-width: 960px) {
  .productHead__img {
    border-radius: 40px;
  }
}
.productHead__title {
  position: relative;
  top: 16px;
}
@media screen and (min-width: 960px) {
  .productHead__title {
    top: 40px;
  }
}
.productHead__title span {
  display: block;
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  color: #3D3122;
  font-size: 3.6rem;
  line-height: 3.6rem;
  font-weight: 700;
  white-space: nowrap;
}
@media screen and (min-width: 640px) {
  .productHead__title span {
    font-size: 4.4rem;
    line-height: 4.4rem;
  }
}
@media screen and (min-width: 960px) {
  .productHead__title span {
    font-size: 6.4rem;
    line-height: 6.4rem;
  }
}
.productHead__title small {
  display: block;
  color: #8E867B;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 960px) {
  .productHead__title small {
    font-size: 2.2rem;
    line-height: 2.8rem;
  }
}
.productHead::before {
  content: "";
  width: 100vw;
  position: absolute;
  z-index: 1;
  top: 32px;
  bottom: -40px;
  left: 104px;
  background-color: #F3F1EB;
  border-radius: 12px;
}
@media screen and (min-width: 960px) {
  .productHead::before {
    top: 70px;
    bottom: -110px;
    left: 104px;
    border-radius: 20px;
  }
}
.productHead--rev .productHead__content {
  grid-template-columns: 1fr;
  gap: 20px;
}
@media screen and (min-width: 960px) {
  .productHead--rev .productHead__content {
    grid-template-columns: 600px 1fr;
    gap: 80px;
  }
}
@media screen and (min-width: 1200px) {
  .productHead--rev .productHead__content {
    grid-template-columns: 680px 1fr;
  }
}
@media screen and (min-width: 1360px) {
  .productHead--rev .productHead__content {
    grid-template-columns: 760px 1fr;
    gap: 110px;
  }
}
.productHead--rev .productHead__title span {
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 3rem;
  line-height: 3rem;
  font-weight: 700;
  margin-left: -4px;
}
@media screen and (min-width: 640px) {
  .productHead--rev .productHead__title span {
    font-size: 3.8rem;
    line-height: 3.8rem;
  }
}
@media screen and (min-width: 960px) {
  .productHead--rev .productHead__title span {
    font-size: 5.2rem;
    line-height: 5.2rem;
  }
}
.productHead--rev .productHead__title small {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.productHead--rev::before {
  content: "";
  width: 100vw;
  position: absolute;
  z-index: 1;
  top: 32px;
  bottom: -40px;
  left: auto;
  right: 40px;
  background-color: #F3F1EB;
  border-radius: 12px;
}
@media screen and (min-width: 960px) {
  .productHead--rev::before {
    top: 70px;
    bottom: -110px;
    right: auto;
    left: 104px;
    border-radius: 20px;
  }
}

.option {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .option {
    gap: 32px;
  }
}
.option__name {
  font-size: 1.8rem;
  line-height: 2.2rem;
  letter-spacing: 0.04em;
  font-weight: 700;
}
@media screen and (min-width: 960px) {
  .option__name {
    font-size: 2.4rem;
    line-height: 2.7rem;
  }
}

@media screen and (min-width: 960px) {
  .spec__row {
    display: grid;
    grid-template-columns: 1fr 250px;
    gap: 12px;
  }
}
@media screen and (min-width: 1200px) {
  .spec__row {
    gap: 20px;
    grid-template-columns: 1fr 250px;
  }
}
.spec__img {
  display: block;
  width: 100%;
  height: auto;
}
.spec__tblWrapper {
  max-width: 100%;
  overflow-x: scroll;
  padding-bottom: 16px;
}
.spec__tblWrapper__guide {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.2rem;
  line-height: 1.2rem;
  font-weight: 500;
}
.spec__tblWrapper__guide::after {
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  background-image: url("../img/arrow.svg");
  background-size: cover;
}
.spec__tbl {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  font-size: 1.8rem;
  line-height: 2.7rem;
  font-weight: 700;
  color: #3D3122;
  margin-bottom: auto;
}
.spec__tbl th {
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl td {
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl td:last-of-type {
  font-size: 1.6rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .spec__tbl td:last-of-type {
    font-size: 1.7rem;
  }
}
.spec__tbl thead, .spec__tbl tbody {
  display: block;
  width: 100%;
}
.spec__tbl thead tr, .spec__tbl tbody tr {
  display: grid;
  padding: 6px;
}
.spec__tbl thead {
  border-bottom: solid 4px #3D3122;
}
.spec__tbl tbody tr {
  border-bottom: solid 2px #3D3122;
}
.spec__tbl--2col thead tr, .spec__tbl--2col tbody tr {
  grid-template-columns: 4fr 1fr;
}
.spec__tbl--2col td {
  text-align: left;
}
.spec__tbl--2col td:last-of-type {
  text-align: right;
}
.spec__tbl2 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  font-size: 1.8rem;
  line-height: 2.7rem;
  font-weight: 700;
  color: #3D3122;
  margin-bottom: auto;
}
.spec__tbl2 th {
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl2 td {
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl2 td:last-of-type {
  font-size: 1.6rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .spec__tbl2 td:last-of-type {
    font-size: 1.6rem;
  }
}
.spec__tbl2 thead, .spec__tbl2 tbody {
  display: block;
  width: 100%;
}
.spec__tbl2 thead tr, .spec__tbl2 tbody tr {
  display: grid;
  padding: 6px;
}
.spec__tbl2 thead {
  border-bottom: solid 4px #3D3122;
}
.spec__tbl2 tbody tr {
  border-bottom: solid 2px #3D3122;
}
.spec__tbl2--2col thead tr, .spec__tbl2--2col tbody tr {
  grid-template-columns: 1fr;
}
.spec__tbl2--2col td {
  text-align: left;
}
.spec__tbl2--2col td:last-of-type {
  text-align: right;
}
.spec__tbl2--8col {
  min-width: 700px;
}
@media screen and (min-width: 960px) {
  .spec__tbl--8col {
    width: 860px;
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--8col {
    width: 960px;
  }
}
.spec__tbl--8col thead tr, .spec__tbl--8col tbody tr {
  grid-template-columns: 1fr repeat(7, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--8col thead tr, .spec__tbl--8col tbody tr {
    grid-template-columns: 1fr repeat(7, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--8col thead tr, .spec__tbl--8col tbody tr {
    grid-template-columns: 1fr repeat(7, 100px);
  }
}
.spec__tbl--8col td, .spec__tbl--8col th {
  text-align: right;
  font-size: 1.6rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .spec__tbl--8col td, .spec__tbl--8col th {
    font-size: 2rem;
  }
}
.spec__tbl--8col td:first-of-type, .spec__tbl--8col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  width:100px;
}
@media screen and (min-width: 960px) {
  .spec__tbl--8col td:first-of-type, .spec__tbl--8col th:first-of-type {
    font-size: 1.8rem;
    width:150px;
  }
}
.spec__tbl--7col {
  min-width: 628px;
}
@media screen and (min-width: 1200px) {
  .spec__tbl--7col {
    width: 960px;
  }
}
.spec__tbl--7col thead tr, .spec__tbl--7col tbody tr {
  grid-template-columns: 1fr repeat(6, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--7col thead tr, .spec__tbl--7col tbody tr {
    grid-template-columns: 1fr repeat(6, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--7col thead tr, .spec__tbl--7col tbody tr {
    grid-template-columns: 1fr repeat(6, 100px);
  }
}
.spec__tbl--7col td, .spec__tbl--7col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--7col td:first-of-type, .spec__tbl--7col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--6col {
  min-width: 556px;
}
@media screen and (min-width: 1200px) {
  .spec__tbl--6col {
    width: 960px;
  }
}
.spec__tbl--6col thead tr, .spec__tbl--6col tbody tr {
  grid-template-columns: 1fr repeat(5, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--6col thead tr, .spec__tbl--6col tbody tr {
    grid-template-columns: 1fr repeat(5, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--6col thead tr, .spec__tbl--6col tbody tr {
    grid-template-columns: 1fr repeat(5, 100px);
  }
}
.spec__tbl--6col td, .spec__tbl--6col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--6col td:first-of-type, .spec__tbl--6col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--5col {
  min-width: 484px;
}
@media screen and (min-width: 1200px) {
  .spec__tbl--5col {
    width: 960px;
  }
}
.spec__tbl--5col thead tr, .spec__tbl--5col tbody tr {
  grid-template-columns: 1fr repeat(4, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--5col thead tr, .spec__tbl--5col tbody tr {
    grid-template-columns: 1fr repeat(4, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--5col thead tr, .spec__tbl--5col tbody tr {
    grid-template-columns: 1fr repeat(4, 100px);
  }
}
.spec__tbl--5col td, .spec__tbl--5col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--5col td:first-of-type, .spec__tbl--5col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--4col {
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .spec__tbl--4col {
    width: 960px;
  }
}
.spec__tbl--4col thead tr, .spec__tbl--4col tbody tr {
  grid-template-columns: repeat(4, 1fr);
}
.spec__tbl--4col td, .spec__tbl--4col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--4col td:first-of-type, .spec__tbl--4col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--3col {
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .spec__tbl--3col {
    width: 960px;
  }
}
.spec__tbl--3col thead tr, .spec__tbl--3col tbody tr {
  grid-template-columns: repeat(3, 100px);
}
.spec__tbl--3col td, .spec__tbl--3col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--3col td:first-of-type, .spec__tbl--3col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--9col {
  min-width: 780px;
}
@media screen and (min-width: 960px) {
  .spec__tbl--9col {
    width: 960px;
  }
}
.spec__tbl--9col thead tr, .spec__tbl--9col tbody tr {
  grid-template-columns: 1fr repeat(8, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--9col thead tr, .spec__tbl--9col tbody tr {
    grid-template-columns: 1fr repeat(8, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--9col thead tr, .spec__tbl--9col tbody tr {
    grid-template-columns: 1fr repeat(8, 100px);
  }
}
.spec__tbl--9col td, .spec__tbl--9col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--9col td:first-of-type, .spec__tbl--9col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec__tbl--10col {
  min-width: 844px;
}
@media screen and (min-width: 960px) {
  .spec__tbl--10col {
    width: 960px;
  }
}
.spec__tbl--10col thead tr, .spec__tbl--10col tbody tr {
  grid-template-columns: 1fr repeat(9, 72px);
}
@media screen and (min-width: 960px) {
  .spec__tbl--10col thead tr, .spec__tbl--10col tbody tr {
    grid-template-columns: 1fr repeat(9, 88px);
  }
}
@media screen and (min-width: 1200px) {
  .spec__tbl--10col thead tr, .spec__tbl--10col tbody tr {
    grid-template-columns: 1fr repeat(9, 100px);
  }
}
.spec__tbl--10col td, .spec__tbl--10col th {
  text-align: right;
  font-size: 2rem;
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
}
.spec__tbl--10col td:first-of-type, .spec__tbl--10col th:first-of-type {
  text-align: left;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.8rem;
}
.spec .acBlk {
  transition: 0.2s ease-out;
  height: 0 !important;
}
.spec .acBlk--open {
  height: 780px !important;
}

.priceTxt {
  font-family: "Roboto", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 2.4rem;
  line-height: 2.8rem;
  font-weight: 500;
  white-space: nowrap;
}
@media screen and (min-width: 960px) {
  .priceTxt {
    font-size: 3.2rem;
    line-height: 3.6rem;
  }
}
.priceTxt small {
  font-size: 1.4rem;
  line-height: 2.8rem;
  font-weight: 700;
}
@media screen and (min-width: 960px) {
  .priceTxt small {
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
}

.scheme__blk {
  border-top: solid 2px #D9D4C4;
}
.scheme__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.scheme__nav ul {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(2, 1fr);
  list-style: none;
  padding: 0;
  gap: 8px;
  margin-left: auto;
  margin-right: auto;
  max-width: 84vw;
}
@media screen and (min-width: 640px) {
  .scheme__nav ul {
    max-width: 600px;
  }
}
@media screen and (min-width: 960px) {
  .scheme__nav ul {
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    max-width: none;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__nav ul {
    gap: 18px;
  }
}
.scheme__nav ul a {
  text-decoration: none;
  color: #3D3122;
  transition: 0.3s ease;
}
.scheme__nav ul a:hover {
  transition: 0.3s ease;
  opacity: 0.7;
}
.scheme__nav ul li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  border: solid 2px #3D3122;
  border-radius: 8px;
  font-size: 1.3rem;
  line-height: 1.8rem;
  letter-spacing: 0em;
  font-weight: 700;
  height: 80px;
  padding-bottom: 8px;
  box-sizing: border-box;
  width: 100%;
  max-width: 42vw;
}
@media screen and (min-width: 640px) {
  .scheme__nav ul li {
    font-size: 1.8rem;
    line-height: 2.5rem;
    max-width: 300px;
  }
}
@media screen and (min-width: 960px) {
  .scheme__nav ul li {
    font-size: 1.8rem;
    line-height: 2.5rem;
    height: 100px;
    max-width: 286px;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__nav ul li {
    font-size: 2rem;
    line-height: 2.7rem;
    letter-spacing: 0.04em;
    max-width: none;
  }
}
.scheme__nav ul li::after {
  content: "";
  background-image: url("../img/arrow.svg");
  background-size: cover;
  transform: rotate(90deg);
  width: 10px;
  height: 10px;
  position: absolute;
  bottom: 10px;
}
.scheme__head {
  font-size: 2.8rem;
  line-height: 3.6rem;
  letter-spacing: 0.04em;
}
.scheme__flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
@media screen and (min-width: 960px) {
  .scheme__flex {
    gap: 80px;
  }
}
@media screen and (min-width: 960px) {
  .scheme__flex__blk {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 40px;
  }
}
.scheme__flex__img {
  display: block;
  width: 100%;
  max-width: 500px;
  height: auto;
  border-radius: 8px;
}
@media screen and (min-width: 960px) {
  .scheme__flex__img {
    width: 500px;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__flex__img {
    width: 500px;
  }
}
.scheme__flex__img2 {
  display: block;
  width: 100%;
  max-width: 900px;
  height: auto;
  border-radius: 8px;
}
.scheme__flex__price {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
.scheme__flex__price__sml {
  font-family: "Montserrat", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
}
.scheme__gridImgs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .scheme__gridImgs {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__gridImgs {
    gap: 24px;
  }
}
.scheme__gridImgs img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.scheme__gridImgs2 {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .scheme__gridImgs2 {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__gridImgs2 {
    gap: 24px;
  }
}
.scheme__gridImgs2 img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.scheme__gridImgs3 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
@media screen and (min-width: 960px) {
  .scheme__gridImgs3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .scheme__gridImgs3 {
    gap: 24px;
  }
}
.scheme__gridImgs3 img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.scheme__bnr {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.scheme__bnr a {
  color: #3D3122;
}
.scheme__bnr img {
  width: 246px;
  height: auto;
}
.scheme__bnr small {
  font-size: 1.1rem;
  line-height: 2.4rem;
  letter-spacing: 0.04em;
}
.bigfont {
  color:#134f8f;
  font-weight:bold;
  font-size:120%;
}
.head05{
  font-size: 2.2rem;
  line-height: 2.7rem;
  letter-spacing: 0.04em;
  color:#000;
  position: relative;
  padding-bottom:15px;
  font-weight:bold;
}
.center{text-align:center;}
.price{font-size:2.8em;font-weight:500;padding-top:30px;}
.lepotxt{font-size:1.6em;padding-top:30px;letter-spacing:0.9px;}
.price .small{font-size:2em;}
.items{
  align-self: center;
  justify-self: center;
  grid-template-areas:}
  main.archive.works .container .post-list .post .eye-catch {
    width: 100%;
  }
  
  main.archive.works .container .post-list .post .eye-catch img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    -o-object-fit: cover;
       object-fit: cover;
  }
  
  main.archive.works .container .post-list .post .post-body p.post-title {
    margin-top: 20px;
  }
  
  main.archive.works .container .post-list .post .post-body .post-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 20px;
  }
  
  main.archive.works .container .post-list .post .post-body .post-info span.post-category {
    display: block;
    font-size: 12px;
    font-weight: 500;
    background-color: #eaeaea;
    padding: 5px;
    margin: 0px 5px;
  }
  .post-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 12px;
  }
  @media screen and (min-width: 960px) {
    .post-list {
      grid-template-columns: repeat(2, 1fr);
      gap: 16px;
    }
  }
  @media screen and (min-width: 1200px) {
  .post-list{
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      column-gap: 10px;
      row-gap: 1em;
  }
}

  .post-title{
    font-size:20px;
  }
  .footer_wave {
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .parallax > use {
      animation: move-forever 12s linear infinite;
  }
  .parallax > use:nth-child(1) {
      animation-delay: -2s;
  }
  .parallax > use:nth-child(2) {
      animation-delay: -2s;
      animation-duration: 5s;
  }
  .parallax > use:nth-child(3) {
      animation-delay: -4s;
      animation-duration: 3s;
  }
  @keyframes move-forever {
      0% {
          transform: translate(-90px, 0%);
      }
      100% {
          transform: translate(85px, 0%);
      }
  }
  .editorial {
      display: block;
      width: 100%;
      height: 3em;
      max-height: 100vh;
      margin: 0;
    bottom: 0px;
    opacity:1;
  }
  
  @media (max-width: 50em) {
      .editorial {
          height: 10vw;
      }
  }
/*# sourceMappingURL=style.css.map */

/*
* 新着記事一覧ショートコード用
*/
.news-list .news-list-inner {
 padding: 20px 5px;
}
.archive .news-list .news-list-inner {
 background: #fff;
 padding: 20px;
}
.news-list ul {
 list-style: none;
 margin: 0 0 20px;
}
.news-list li {
 padding: 10px;
 border-bottom: 1px solid #ddd;
}
.news-list a {
 color: #333;
 text-decoration-line: none;
}
.news-list a:hover {
 opacity: 0.6;
}
.news-list a.wp-block-button__link {
 color: #fff;
}
.news-list a.wp-block-button__link:hover {
 color: #F87474;
}
.news-list .news_date {
 margin: 0;
 font-size: 14px;
}
.news-list .news_title {
 margin: 0;
 font-size: 18px;
 line-height: 30px;
 padding-top: 10px;
 padding-bottom: 10px;
}
main#primary{
  padding-top:120px;
  max-width:1200px;
  margin:0 auto;
}
.site-main{
  min-height: 50.5vh;
  position: relative;
  padding-bottom: 60px;
  box-sizing: border-box;
}
.css-carousel-slider3 {
    width: 100%;
    overflow: hidden;
    position: relative;
}

/* スライド設定 */
.css-carousel-slider3 .slide-wrap {
    width: 300%;
    position: absolute;
    display: flex;
    top: 0;
    left: 0;
    z-index: 0;
    animation: css-carousel-slider3 14s infinite;
    animation-delay: 4s;
}
.css-carousel-slider3 .slide-wrap-main {
    width: 100%;
    z-index: 1;
    animation: css-carousel-slider-main3 14s infinite;
    animation-delay: 4s;
}
.css-carousel-slider3 .slide {
    width: 100%;
}

/* スライダーアニメーションの設定 */
@keyframes css-carousel-slider3 {
    0% { transform: translateX(0); }

    27.3% { transform: translateX(calc(1 / 3 * -100%)); }
    33.3% { transform: translateX(calc(1 / 3 * -100%)); }

    60.6% { transform: translateX(calc(2 / 3 * -100%)); }
    66.6% { transform: translateX(calc(2 / 3 * -100%)); }
}

@keyframes css-carousel-slider-main3 {
    0% { transform: translateX(100%); }
    66.6% { transform: translateX(100%); }
    94% { transform: translateX(0%);}
}
.bgblue{
    background-color: #006ead;
    color: white;
    padding: 10px 15px;
    border-radius: 10px;}
.white{
color:#fff;}
main .guide-box {
    font-size: 15px;
    font-size: 1.15385rem;
    line-height: 1.53333;
    letter-spacing: 0.08em;
}
main .target-table{
width:100%;
}
main .guide-box .target-table th {
    padding: 15px 10px;
    background-color: #f4f4f4;
    color: #007fc3;
    font-weight: bold;
    border: solid 1px #d3d3e7;
}
main .guide-box .target-table td {
    padding: 15px 10px;
    border: solid 1px #d3d3e7;
}
.entry-content p{
font-size:2rem;
}
h2.entry-title{
font-size:3rem;}
.entry-content{
margin-bottom:3rem;
}
h1.entry-title{
font-size:3.4rem;
}