@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Antique&display=swap");
/* リセットCSS
===================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  -webkit-font-smoothing: antialiased;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media (max-width: 767px) {
  html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    font-size: 2.6666666667vw;
  }
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

li, dd {
  list-style-type: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after {
  content: "";
  content: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

img {
  border: none;
  vertical-align: bottom;
}

/* 基本設定
===================================== */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-weight: 400;
  color: #3e3e3e;
  letter-spacing: 0.2em;
}

a {
  cursor: pointer;
  text-decoration: none;
}

.note-show {
  display: none;
}
@media (max-width: 1440px) {
  .note-show {
    display: block;
  }
}

.note-hide {
  display: block;
}
@media (max-width: 1440px) {
  .note-hide {
    display: none;
  }
}

.tab-show {
  display: none;
}
@media (max-width: 1024px) {
  .tab-show {
    display: block;
  }
}

.tab-hide {
  display: block;
}
@media (max-width: 1024px) {
  .tab-hide {
    display: none;
  }
}

.sp-show {
  display: none;
}
@media (max-width: 767px) {
  .sp-show {
    display: block;
  }
}

.sp-hide {
  display: block;
}
@media (max-width: 767px) {
  .sp-hide {
    display: none;
  }
}

img.sp-hide, span.sp-hide {
  display: inline;
}
@media (max-width: 767px) {
  img.sp-hide, span.sp-hide {
    display: none;
  }
}

.en {
  font-family: "Zen Antique", serif;
  color: #A7A19E;
}

.header {
  background-color: #fff;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}
.header__notice {
  background-color: #3e3e3e;
  color: white;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.2em;
}
.header__notice.azuki {
  background-color: rgb(154, 15, 66);
}
@media (max-width: 767px) {
  .header__notice {
    font-size: 1.4rem;
    height: 3.8rem;
  }
}
.header__wrapper {
  padding-left: 40px;
  padding-right: 40px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .header__wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 767px) {
  .header__wrapper {
    padding-left: 1rem;
    padding-right: 0rem;
  }
}
.header__inner {
  max-width: 1420px;
  margin: auto;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .header__inner {
    align-items: center;
  }
}
.header__logo {
  margin-top: 40px;
}
.header__logo img {
  width: 255px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .header__logo img {
    width: 180px;
  }
}
@media (max-width: 767px) {
  .header__logo img {
    width: 15rem;
  }
}
@media (max-width: 767px) {
  .header__logo {
    margin-top: 0rem;
  }
}
.header__right {
  display: flex;
}
@media (max-width: 767px) {
  .header__right {
    margin-top: 0rem;
    width: 100%;
    justify-content: flex-end;
    align-items: center;
    padding-left: 1rem;
  }
}
.header__menu1 {
  display: flex;
  padding-right: 33.5px;
  padding-top: 50px;
}
@media (max-width: 767px) {
  .header__menu1 {
    padding-top: 0;
    padding-right: 0rem;
    gap: 0.4rem;
    margin-right: 0.4rem;
  }
}
.header__menu1 li a {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 500;
  display: flex;
  align-items: center;
  transition: all 0.3s;
}
.header__menu1 li a span {
  font-size: 1em;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
@media (max-width: 767px) {
  .header__menu1 li a span {
    transform: scale(0.8);
  }
}
@media (max-width: 767px) {
  .header__menu1 li a {
    flex-direction: column;
    font-size: 1rem;
    white-space: nowrap;
    letter-spacing: 0;
  }
}
.header__menu1 li a img {
  margin-right: 9px;
}
@media (max-width: 767px) {
  .header__menu1 li a img {
    margin-right: 0;
    height: 1.8rem;
    margin-bottom: 0.4rem;
  }
}
.header__menu1 li a:hover {
  opacity: 0.7;
}
@media (min-width: 768px) {
  .header__menu1 .li1 {
    margin-right: 40px;
  }
  .header__menu1 .li2 {
    margin-right: 34px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .header__menu1 .li1, .header__menu1 .li2 {
    margin-right: 20px;
  }
}
.header .hamburger {
  height: 100px;
  width: 100px;
  background-color: #A7A19E;
  border-radius: 0 0 12px 12px;
  cursor: pointer;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .header .hamburger {
    height: 6rem;
    width: 6rem;
    border-radius: 0px;
  }
}
.header .hamburger img {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .header .hamburger img {
    margin-bottom: 1rem;
  }
}
.header .hamburger p {
  font-size: 14px;
  letter-spacing: 0.1em;
  font-weight: 800;
  color: white;
}
@media (max-width: 767px) {
  .header .hamburger p {
    font-size: 1.1rem;
  }
}
.header .hamburger:hover {
  opacity: 0.7;
}
.header .header__bottom {
  padding-top: 20px;
  position: relative;
  padding-left: 40px;
  padding-right: 40px;
}
@media (max-width: 767px) {
  .header .header__bottom {
    padding-left: 1rem;
    padding-top: 1.5rem;
    padding-right: 1.5rem;
  }
}
.header .header__bottom .bottom-ul {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .header .header__bottom .bottom-ul {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul {
    gap: 1.6rem;
    justify-content: center;
    padding-bottom: 1rem;
  }
}
.header .header__bottom .bottom-ul .bottom-li {
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li {
    padding-bottom: 0;
  }
}
.header .header__bottom .bottom-ul .bottom-li a {
  font-size: 18px;
  color: #3e3e3e;
  font-weight: 600;
  transition: all 0.3s;
}
@media (min-width: 768px) {
  .header .header__bottom .bottom-ul .bottom-li a {
    position: relative;
  }
  .header .header__bottom .bottom-ul .bottom-li a::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #3e3e3e;
    position: absolute;
    bottom: -10px;
    left: 0;
    opacity: 0;
    transition: all 0.3s;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .header .header__bottom .bottom-ul .bottom-li a {
    font-size: 12px;
  }
}
.header .header__bottom .bottom-ul .bottom-li a span {
  font-size: 1em;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li a {
    font-size: 1.3rem;
    white-space: nowrap;
  }
}
.header .header__bottom .bottom-ul .bottom-li a:hover {
  opacity: 0.7;
}
.header .header__bottom .bottom-ul .bottom-li a:hover::after {
  opacity: 1;
}
.header .header__bottom .bottom-ul .bottom-li .parent > a {
  position: relative;
}
.header .header__bottom .bottom-ul .bottom-li .parent > a:hover:before {
  content: "";
  width: 100%;
  height: 30px;
  position: absolute;
  bottom: -25px;
}
.header .header__bottom .bottom-ul .bottom-li .child {
  position: absolute;
  width: 1200px;
  left: calc(50% - 600px);
  top: 50px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 2px 20px 0 rgba(87, 87, 87, 0.1);
  padding: 50px;
  display: flex;
  align-items: flex-start;
  transition: all 0.3s;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 2;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child {
    width: calc(100% - 0rem);
    padding: 2rem;
    left: 0rem;
    box-shadow: none;
    border-radius: 0rem;
    top: 3.5rem;
    flex-direction: column;
    align-items: center;
  }
  .header .header__bottom .bottom-ul .bottom-li .child.active {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}
.header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper {
  width: 160px;
  border-right: 1px solid #888;
  flex-shrink: 0;
}
.header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper .sec-ttl {
  align-items: flex-start;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper {
    width: 100%;
    border-right: none;
    margin-bottom: 4rem;
    display: none;
  }
}
.header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper h5 {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper h5 {
    text-align: center;
    font-size: 2.4rem;
    margin-bottom: 1.6rem;
  }
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child .ttl-wrapper p {
    text-align: center;
    font-size: 1.2rem;
  }
}
.header .header__bottom .bottom-ul .bottom-li .child ul {
  display: flex;
  padding-left: 45px;
  gap: 5px 20px;
  width: 100%;
  flex-wrap: wrap;
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul {
    margin-top: -5px;
  }
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul {
    padding-left: 0;
    gap: 1rem;
    width: 100%;
  }
}
.header .header__bottom .bottom-ul .bottom-li .child ul li {
  width: calc(25% - 15px);
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul li {
    width: calc(33.3333% - 0.66667rem);
  }
}
.header .header__bottom .bottom-ul .bottom-li .child ul li img {
  width: 100%;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul li img {
    margin-bottom: 0.5rem;
  }
}
@media (min-width: 768px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul li a {
    display: block;
    padding: 5px;
    padding-bottom: 20px;
  }
  .header .header__bottom .bottom-ul .bottom-li .child ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.15);
  }
}
.header .header__bottom .bottom-ul .bottom-li .child ul li a::after {
  display: none;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul li a {
    white-space: normal;
  }
}
.header .header__bottom .bottom-ul .bottom-li .child ul li p {
  font-size: 14px;
  font-weight: 600;
  color: #3e3e3e;
}
.header .header__bottom .bottom-ul .bottom-li .child ul li p.ls {
  letter-spacing: 0;
}
@media (max-width: 767px) {
  .header .header__bottom .bottom-ul .bottom-li .child ul li p {
    font-size: 1rem;
    line-height: 1.2em;
  }
}
@media (min-width: 768px) {
  .header .header__bottom .bottom-ul .bottom-li .parent:hover .child {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}

.global-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 50svh;
  background-color: rgba(62, 62, 61, 0.95);
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.3s;
}
@media (min-width: 768px) {
  .global-menu {
    min-height: 500px;
    max-height: 100svh;
  }
}
@media (max-width: 767px) {
  .global-menu {
    height: 100dvh;
  }
}
.global-menu .global-header {
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 40px;
}
@media screen and (min-width: 768px) and (max-width: 1499px) {
  .global-menu .global-header {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .global-menu .global-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 767px) {
  .global-menu .global-header {
    padding-top: 3.8rem;
    padding-left: 1rem;
    padding-right: 0rem;
  }
}
.global-menu .header__logo {
  position: relative;
  top: 16px;
  left: 0px;
}
@media (max-width: 767px) {
  .global-menu .header__logo {
    top: 0rem;
    left: 0;
  }
}
.global-menu .header__right ul {
  padding-top: 66px;
}
@media (max-width: 767px) {
  .global-menu .header__right ul {
    padding-top: 0rem;
  }
}
.global-menu .header__right ul li a {
  color: white;
}
@media (max-width: 767px) {
  .global-menu .header__right {
    padding-right: 0rem;
  }
}
.global-menu .header__right .close {
  margin-top: 14px;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.global-menu .header__right .close p {
  color: white;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.1em;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .global-menu .header__right .close p {
    font-size: 1.1rem;
    margin-top: 1rem;
  }
}
@media (max-width: 767px) {
  .global-menu .header__right .close {
    width: 6rem;
    margin-top: 0;
    height: 6rem;
  }
}
@media (min-width: 768px) {
  .global-menu .close {
    opacity: 0;
    pointer-events: none;
  }
}
.global-menu.active {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.global-menu .global-inner {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.global-menu .global-inner ul {
  max-width: 1128px;
  margin: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 80px 0;
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
  .global-menu .global-inner ul {
    gap: 40px 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
  .global-menu .global-inner ul {
    padding-top: 40px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .global-menu .global-inner ul {
    max-width: 720px;
  }
}
@media (max-width: 767px) {
  .global-menu .global-inner ul {
    padding-left: 2rem;
    padding-right: 2rem;
    gap: 3rem 4rem;
  }
}
.global-menu .global-inner ul li {
  width: 25%;
}
@media (max-width: 767px) {
  .global-menu .global-inner ul li {
    width: calc(50% - 2rem);
  }
}
.global-menu .global-inner ul li a {
  position: relative;
}
@media (min-width: 768px) {
  .global-menu .global-inner ul li a::before {
    content: "";
    background-color: #E2D06E;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    position: absolute;
    left: -20px;
    top: 8px;
    opacity: 0;
    transition: all 0.3s;
  }
  .global-menu .global-inner ul li a:hover::before {
    opacity: 1;
  }
}
.global-menu .global-inner ul li a h5 {
  font-size: 24px;
  font-weight: 600;
  color: white;
  margin-bottom: 10px;
}
.global-menu .global-inner ul li a h5.pl {
  position: relative;
  left: -6px;
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
  .global-menu .global-inner ul li a h5 {
    font-size: 20px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .global-menu .global-inner ul li a h5 {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .global-menu .global-inner ul li a h5 {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.global-menu .global-inner ul li a p {
  font-size: 16px;
  color: #888;
  font-weight: 400;
  letter-spacing: 0.3em;
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
  .global-menu .global-inner ul li a p {
    font-size: 14px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .global-menu .global-inner ul li a p {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .global-menu .global-inner ul li a p {
    font-size: 1.2rem;
    line-height: 1.4em;
  }
}
.global-menu .sns {
  padding-bottom: 40px;
  padding-left: 40px;
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
}
.global-menu .sns ul {
  display: flex;
  gap: 16px;
}
.global-menu .sns ul a {
  display: block;
}
.global-menu .sns ul a svg {
  transform: scale(1.1);
}
.global-menu .sns ul a .hidden {
  opacity: 0;
  transition: all 0.3s;
}
@media (min-width: 768px) {
  .global-menu .sns ul a:hover .hidden {
    opacity: 1;
  }
}
@media (max-width: 767px) {
  .global-menu .sns ul {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .global-menu .sns {
    padding-bottom: 5rem;
    padding-left: 0;
    width: 100%;
  }
}
.global-menu .global-footer {
  position: absolute;
  bottom: 46px;
  width: 100%;
}
.global-menu .global-footer p {
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: white;
  text-align: center;
}
@media (max-width: 767px) {
  .global-menu .global-footer p {
    font-size: 1.2rem;
  }
}
@media (max-width: 767px) {
  .global-menu .global-footer {
    bottom: 2rem;
  }
}

@keyframes expandWidth {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
.fv img {
  width: 100%;
  aspect-ratio: 1500/695;
  object-fit: cover;
}
@media (max-width: 767px) {
  .fv img {
    aspect-ratio: 600/800;
  }
}
.fv .swiper-pagination-bullets {
  bottom: 10px !important;
}
@media (max-width: 767px) {
  .fv .swiper-pagination-bullets {
    bottom: 1rem !important;
  }
}
.fv .swiper-pagination-bullet {
  width: 60px;
  height: 4px;
  border-radius: 0;
  margin-left: 2px;
  opacity: 1;
  margin-right: 2px;
  position: relative;
  background-color: rgba(255, 255, 255, 0.2);
}
@media (max-width: 767px) {
  .fv .swiper-pagination-bullet {
    width: 4rem;
    height: 0.2rem;
    margin-left: 0.2rem;
    margin-right: 0.2rem;
  }
}
.fv .swiper-pagination-bullet::after {
  content: "";
  width: 0%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 0;
}
.fv .swiper-pagination-bullet-active {
  background-color: rgba(255, 255, 255, 0.5);
}
.fv .swiper-pagination-bullet-active::after {
  width: 100%;
  animation: expandWidth 5.5s ease-in-out forwards;
}

.sec-ttl {
  display: flex;
  flex-direction: column;
  gap: 22px;
  align-items: center;
}
@media (max-width: 767px) {
  .sec-ttl {
    gap: 1.6rem;
    align-items: center;
  }
}
.sec-ttl h2 {
  font-size: 40px;
  letter-spacing: 0.2em;
  font-weight: 600;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .sec-ttl h2 {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .sec-ttl h2 {
    font-size: 2.4rem;
  }
}
.sec-ttl h6 {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: #A7A19E;
  font-family: "Zen Antique", serif;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .sec-ttl h6 {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .sec-ttl h6 {
    font-size: 1.2rem;
  }
}
.sec-ttl h6 span {
  font-family: "Zen Antique", serif;
  font-size: 1em;
  font-weight: 400;
  color: #A7A19E;
}
.sec-ttl h6 .has-circle {
  position: relative;
}
.sec-ttl h6 .has-circle::before, .sec-ttl h6 .has-circle::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  border-radius: 50%;
  background-color: #A7A19E;
  top: 8px;
}
.sec-ttl h6 .has-circle::before {
  left: -12px;
}
.sec-ttl h6 .has-circle::after {
  right: -10px;
}

.sec-inner {
  max-width: 1200px;
  margin: auto;
}

.recommend {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .recommend {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.recommend .sec-ttl {
  margin-bottom: 30px;
  align-items: center;
}
.recommend .sec-ttl h2, .recommend .sec-ttl h6 {
  text-align: center;
}
.recommend .sec-ttl .sub-ttl {
  margin-top: 20px;
}
.recommend .sec-ttl .sub-ttl p {
  text-align: center;
  font-weight: 600;
  font-size: 22px;
}
.recommend ul {
  display: flex;
  justify-content: space-between;
  gap: 51px;
}
@media (max-width: 767px) {
  .recommend ul {
    flex-direction: column;
    gap: 4rem;
  }
}
.recommend ul li {
  width: 100%;
}
.recommend ul li .img-wrapper {
  position: relative;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .recommend ul li .img-wrapper {
    margin-bottom: 1.4rem;
  }
}
.recommend ul li .img-wrapper .fade-img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  opacity: 0;
  transition: all 0.3s;
}
.recommend ul li img {
  width: 100%;
}
.recommend ul li p {
  color: #3e3e3e;
  line-height: 1.6em;
  font-size: 20px;
  font-weight: 600;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .recommend ul li p {
    font-size: 16px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .recommend ul li p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .recommend ul li p {
    font-size: 1.6rem;
  }
}
.recommend ul li p span {
  font-size: 0.9em;
}
.recommend ul li p span.ab {
  position: absolute;
}
@media screen and (max-width: 1200px) and (min-width: 768px) {
  .recommend ul li p span.ab {
    position: static;
  }
}
@media (min-width: 768px) {
  .recommend ul li a:hover {
    opacity: 1;
  }
  .recommend ul li a:hover .img-wrapper .fade-img {
    opacity: 1;
  }
}

.popular-sec {
  padding-top: 80px;
  padding-bottom: 70px;
  background-color: #fafafa;
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .popular-sec {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.popular-sec .pop-line {
  position: absolute;
  right: 0;
  top: 132px;
  height: 1px;
  width: calc(100% - (410px + (100vw - 1200px) / 2));
}
@media screen and (max-width: 1200px) {
  .popular-sec .pop-line {
    display: none;
  }
}
@media (max-width: 767px) {
  .popular-sec .pop-line {
    display: none;
  }
}
.popular-sec .sec-ttl {
  align-items: flex-start;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .popular-sec .sec-ttl {
    align-items: center;
  }
}
.popular-sec .sec-ttl h2, .popular-sec .sec-ttl h6 {
  text-align: left;
}
@media (max-width: 767px) {
  .popular-sec .sec-ttl {
    margin-bottom: 4rem;
  }
}
.popular-sec ul {
  max-width: 1120px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
  .popular-sec ul {
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  .popular-sec ul {
    gap: 4rem 2rem;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.popular-sec ul li {
  width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
  .popular-sec ul li {
    width: 30%;
  }
}
@media (max-width: 767px) {
  .popular-sec ul li {
    width: calc(50% - 1rem);
  }
  .popular-sec ul li:first-child {
    width: 80%;
  }
}
.popular-sec ul li img {
  width: 100%;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .popular-sec ul li img {
    margin-bottom: 1.6rem;
  }
}
.popular-sec ul li .img-wrapper {
  position: relative;
}
.popular-sec ul li .img-wrapper .num {
  position: absolute;
  width: 37px;
  height: 37px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-family: "Helvetica Neue";
  font-size: 20px;
  font-weight: 400;
  left: 0;
  padding-left: 2px;
  top: 0;
  background: #C6C6C6;
  z-index: 2;
}
@media (max-width: 767px) {
  .popular-sec ul li .img-wrapper .num {
    font-size: 2rem;
    width: 3.7rem;
    height: 3.7rem;
    padding-left: 0.2rem;
  }
}
.popular-sec ul li .img-wrapper .one {
  background: #8D7D10;
  font-size: 24px;
}
@media (max-width: 767px) {
  .popular-sec ul li .img-wrapper .one {
    font-size: 2rem;
  }
}
.popular-sec ul li .img-wrapper .two {
  background: #939393;
}
.popular-sec ul li .img-wrapper .three {
  background: #8F6B33;
}
.popular-sec ul li .txt p {
  color: #3e3e3e;
  font-size: 16px;
  line-height: 1.6em;
  font-weight: 500;
}
@media (max-width: 767px) {
  .popular-sec ul li .txt p {
    font-size: 1.44rem;
  }
}
.popular-sec ul li .txt .price {
  margin-top: 16px;
  font-size: 16px;
  color: #888;
  font-weight: 600;
}
@media (max-width: 767px) {
  .popular-sec ul li .txt .price {
    font-size: 1.44rem;
    margin-top: 1rem;
  }
}
.popular-sec ul li img {
  transition: all 0.3s;
}
.popular-sec ul li a {
  display: block;
  height: 100%;
}
@media (min-width: 768px) {
  .popular-sec ul li a {
    padding: 10px;
  }
  .popular-sec ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.15);
  }
  .popular-sec ul li a:hover .img-wrapper img {
    opacity: 0.7;
  }
}
.popular-sec ul li .star-wrapper {
  display: flex;
  align-items: center;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .popular-sec ul li .star-wrapper {
    margin-top: 1rem;
  }
}
.popular-sec ul li .star-wrapper img {
  width: 100px;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .popular-sec ul li .star-wrapper img {
    width: 8rem;
  }
}
.popular-sec ul li .star-wrapper p {
  font-size: 14px;
  color: #A7A19E;
  letter-spacing: 0.1em;
  font-weight: bold;
}
@media (max-width: 767px) {
  .popular-sec ul li .star-wrapper p {
    font-size: 1.2rem;
  }
}

.commitment-sec {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .commitment-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.commitment-sec .sec-ttl {
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .commitment-sec .sec-ttl {
    margin-bottom: 4rem;
  }
}
.commitment-sec ul {
  display: flex;
  gap: 10px;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .commitment-sec ul {
    flex-direction: column;
    gap: 4rem;
  }
}
.commitment-sec ul li {
  width: 100%;
  border-bottom: 1px solid #A7A19E;
}
.commitment-sec ul li a {
  display: block;
}
@media (min-width: 768px) {
  .commitment-sec ul li a {
    padding: 10px;
    padding-bottom: 48px;
  }
  .commitment-sec ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.15);
  }
  .commitment-sec ul li a:hover .thumb {
    opacity: 0.85;
    background-color: black;
  }
}
@media (max-width: 767px) {
  .commitment-sec ul li a {
    padding-bottom: 3rem;
  }
}
.commitment-sec ul li .thumb {
  width: 100%;
  margin-bottom: 16px;
  transition: all 0.3s;
  display: block;
}
@media (max-width: 767px) {
  .commitment-sec ul li .thumb {
    margin-bottom: 1.6rem;
  }
}
.commitment-sec ul li p {
  font-size: 16px;
  line-height: 1.6em;
  font-weight: 500;
  margin-bottom: 32px;
  color: #3e3e3e;
}
@media (max-width: 767px) {
  .commitment-sec ul li p {
    font-size: 1.44rem;
    margin-bottom: 3.2rem;
  }
}

.a-wrapper {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.a-wrapper span, .a-wrapper a {
  font-size: 16px;
  letter-spacing: 0.3em;
  color: #3e3e3e;
}
@media (max-width: 767px) {
  .a-wrapper span, .a-wrapper a {
    font-size: 1.44rem;
  }
}
.a-wrapper img {
  margin-left: 5px;
  position: relative;
  top: -1px;
  width: 4px;
}
@media (max-width: 767px) {
  .a-wrapper img {
    margin-left: 0.5rem;
    top: -0.2rem;
    width: 0.4rem;
  }
}

.representative-sec {
  padding-top: 80px;
  padding-bottom: 70px;
  background-color: #fafafa;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .representative-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.representative-sec .sec-ttl {
  margin-bottom: 40px;
  padding-left: 10px;
}
@media (max-width: 767px) {
  .representative-sec .sec-ttl {
    padding-left: unset;
    margin-bottom: 5rem;
  }
}
@media (min-width: 768px) {
  .representative-sec .sec-inner {
    max-width: 1220px;
  }
}
.representative-sec ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
@media (max-width: 767px) {
  .representative-sec ul {
    gap: 2rem;
  }
}
.representative-sec ul li {
  width: calc(50% - 25px);
  display: flex;
}
.representative-sec ul li a {
  display: flex;
}
.representative-sec ul li a > img {
  width: 262px;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .representative-sec ul li a > img {
    width: 15rem;
  }
}
@media (min-width: 768px) {
  .representative-sec ul li a {
    padding: 10px;
  }
  .representative-sec ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.15);
  }
  .representative-sec ul li a:hover > img {
    opacity: 0.85;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .representative-sec ul li {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .representative-sec ul li {
    width: 100%;
    align-items: center;
  }
}
.representative-sec ul li .txt {
  padding-left: 30px;
  padding-top: 16px;
  color: #3e3e3e;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .representative-sec ul li .txt {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .representative-sec ul li .txt {
    padding-left: 1rem;
    padding-top: 0rem;
  }
}
.representative-sec ul li .txt .rep-ttl {
  margin-bottom: 20px;
}
.representative-sec ul li .txt .rep-ttl h5 {
  margin-bottom: 14px;
  font-size: 22px;
  font-weight: 600;
}
.representative-sec ul li .txt .rep-ttl h5.lh {
  line-height: 1.4em;
}
.representative-sec ul li .txt .rep-ttl p {
  letter-spacing: 0.3em;
  font-size: 11px;
  color: #A7A19E;
  font-family: "Zen Antique", serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .representative-sec ul li .txt .rep-ttl {
    margin-bottom: 1rem;
  }
  .representative-sec ul li .txt .rep-ttl h5 {
    font-size: 1.6rem;
    margin-bottom: 0.5rem;
  }
  .representative-sec ul li .txt .rep-ttl p {
    font-size: 1rem;
  }
}
.representative-sec ul li .txt .rep-txt {
  font-size: 16px;
  line-height: 1.6em;
  font-weight: 600;
  height: 130px;
  margin-bottom: 17px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .representative-sec ul li .txt .rep-txt {
    font-size: 1rem;
    height: auto;
    margin-bottom: 1rem;
  }
}
.representative-sec ul li .txt .rep-txt2 {
  height: 78px;
  margin-bottom: 29px;
}
@media (max-width: 767px) {
  .representative-sec ul li .txt .rep-txt2 {
    margin-bottom: 1rem;
    height: auto;
  }
}
.representative-sec ul li .txt .a-wrapper p {
  color: #3e3e3e;
  letter-spacing: 0.3em;
}
.representative-sec ul li .txt .a-wrapper img {
  width: 7px;
  top: 0px;
}
@media (max-width: 767px) {
  .representative-sec ul li .txt .a-wrapper p {
    font-size: 1.2rem;
  }
  .representative-sec ul li .txt .a-wrapper p img {
    top: 0rem;
  }
}

.apply-sec {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .apply-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.apply-sec .sec-ttl {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .apply-sec .sec-ttl {
    margin-bottom: 5rem;
  }
}
.apply-sec ul {
  max-width: 800px;
  margin: auto;
  gap: 40px 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .apply-sec ul {
    justify-content: center;
  }
}
.apply-sec ul li {
  width: calc(33.333% - 13.33334px);
}
.apply-sec ul li img {
  width: 100%;
  transition: all 0.3s;
}
.apply-sec ul li a {
  display: block;
}
@media (min-width: 768px) {
  .apply-sec ul li a {
    border-radius: 10px;
  }
  .apply-sec ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.4);
  }
  .apply-sec ul li a:hover > img {
    opacity: 0.7;
  }
}
@media (max-width: 767px) {
  .apply-sec ul {
    gap: 2rem;
  }
  .apply-sec ul li {
    width: calc(50% - 1rem);
  }
}
.apply-sec .btn-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
@media (max-width: 767px) {
  .apply-sec .btn-wrapper {
    margin-top: 5rem;
  }
}
.apply-sec .btn-wrapper a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .apply-sec .btn-wrapper a {
    padding: 2rem 1.5rem;
  }
}
.apply-sec .btn-wrapper a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .apply-sec .btn-wrapper a p {
    font-size: 1.4rem;
  }
}
.apply-sec .btn-wrapper a img {
  width: 6.1px;
  margin-left: 20px;
}
@media (max-width: 767px) {
  .apply-sec .btn-wrapper a img {
    width: 0.6rem;
    margin-left: 2rem;
  }
}
@media (min-width: 768px) {
  .apply-sec .btn-wrapper a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}

.price-sec {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #fafafa;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .price-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.price-sec .sec-ttl {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .price-sec .sec-ttl {
    margin-bottom: 5rem;
  }
}
.price-sec ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 800px;
  margin: auto;
}
@media (max-width: 767px) {
  .price-sec ul {
    gap: 1rem;
  }
}
.price-sec ul li {
  width: calc(50% - 10px);
}
@media (max-width: 767px) {
  .price-sec ul li {
    width: calc(50% - 0.5rem);
  }
}
.price-sec ul li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .price-sec ul li a {
    padding: 1rem 1.5rem;
  }
}
.price-sec ul li a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .price-sec ul li a p {
    font-size: 1.2rem;
  }
}
.price-sec ul li a img {
  width: 6.1px;
}
@media (max-width: 767px) {
  .price-sec ul li a img {
    width: 0.4rem;
  }
}
@media (min-width: 768px) {
  .price-sec ul li a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}

.information-sec {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .information-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.information-sec .sec-ttl {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .information-sec .sec-ttl {
    margin-bottom: 5rem;
  }
}
.information-sec ul {
  display: flex;
  gap: 50px;
}
@media (max-width: 767px) {
  .information-sec ul {
    flex-direction: column;
    gap: 2rem;
  }
}
.information-sec ul li {
  width: calc(50% - 25px);
}
@media (max-width: 767px) {
  .information-sec ul li {
    width: 100%;
  }
}
.information-sec ul li a {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  display: block;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media (max-width: 767px) {
  .information-sec ul li a {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  .information-sec ul li a:hover {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.15);
  }
}
.information-sec ul li a time {
  font-size: 14px;
  display: inline-block;
  margin-bottom: 24px;
  font-weight: 600;
  color: #3e3e3e;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .information-sec ul li a time {
    font-size: 1.2rem;
    margin-bottom: 1rem;
  }
}
.information-sec ul li a p {
  font-size: 16px;
  line-height: 1.2em;
  font-weight: 600;
  color: #3e3e3e;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .information-sec ul li a p {
    font-size: 1.4rem;
  }
}

.explain-sec {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #fafafa;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .explain-sec {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.explain-sec ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 21.5px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec ul {
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  .explain-sec ul {
    flex-wrap: wrap;
    gap: 4rem 0;
    margin-bottom: 6rem;
  }
}
.explain-sec ul li {
  width: 16.6666%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec ul li {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .explain-sec ul li {
    width: 50%;
  }
}
.explain-sec ul li img {
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .explain-sec ul li img {
    margin-bottom: 1.2rem;
  }
}
.explain-sec ul li p {
  font-size: 16px;
  line-height: 1.4em;
  font-weight: 500;
  text-align: center;
  margin-bottom: 6px;
}
@media (max-width: 767px) {
  .explain-sec ul li p {
    font-size: 1.4rem;
    margin-bottom: 0.3rem;
  }
}
.explain-sec ul li .p2 {
  font-size: 14px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .explain-sec ul li .p2 {
    font-size: 1.2rem;
  }
}
.explain-sec ul li .p3 {
  font-size: 12px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .explain-sec ul li .p3 {
    font-size: 1rem;
  }
}
.explain-sec .payment {
  border: 1px solid #888;
  padding: 50px;
  background-color: #fff;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec .payment {
    flex-direction: column;
  }
}
@media (max-width: 767px) {
  .explain-sec .payment {
    flex-direction: column;
    padding: 5rem 2rem;
    margin-bottom: 2rem;
  }
}
.explain-sec .payment h5 {
  padding-right: 50px;
  font-size: 16px;
  font-weight: 600;
  flex-shrink: 0;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec .payment h5 {
    font-size: 16px;
    margin-bottom: 5rem;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .explain-sec .payment h5 {
    padding-right: 0;
    margin-bottom: 5rem;
    font-size: 1.8rem;
  }
}
.explain-sec .payment .payment-list {
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec .payment .payment-list {
    flex-wrap: wrap;
    gap: 5rem 0;
  }
}
@media (max-width: 767px) {
  .explain-sec .payment .payment-list {
    flex-wrap: wrap;
    gap: 5rem 0;
  }
}
.explain-sec .payment .payment-list .card {
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .explain-sec .payment .payment-list .card {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .explain-sec .payment .payment-list .card {
    width: 50%;
  }
}
.explain-sec .payment .payment-list .card img {
  margin-bottom: 10px;
}
.explain-sec .payment .payment-list .card .img1 {
  width: 129px;
}
.explain-sec .payment .payment-list .card .img2 {
  width: 54px;
}
.explain-sec .payment .payment-list .card .img3 {
  width: 114px;
}
.explain-sec .payment .payment-list .card .img4 {
  width: 77px;
}
.explain-sec .payment .payment-list .card .img5 {
  width: 46px;
}
.explain-sec .payment .payment-list .card .img6 {
  width: 53px;
}
.explain-sec .payment .payment-list .card .img7 {
  width: 110px;
}
.explain-sec .payment .payment-list .card p {
  font-size: 14px;
  text-align: center;
  font-weight: 600;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .explain-sec .payment .payment-list .card p {
    font-size: 1.4rem;
  }
}
.explain-sec .links {
  display: flex;
  gap: 20px;
}
@media (max-width: 767px) {
  .explain-sec .links {
    flex-direction: column;
  }
}
.explain-sec .links .link {
  width: calc(50% - 10px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  background-color: #fff;
  border: 1px solid #888;
}
@media (max-width: 767px) {
  .explain-sec .links .link {
    width: 100%;
    padding: 3rem;
  }
}
.explain-sec .links .link .link-ttl {
  display: flex;
  align-items: flex-end;
}
.explain-sec .links .link .link-ttl h5 {
  font-size: 16px;
  margin-right: 10px;
  font-weight: 600;
  color: #3e3e3e;
}
@media (max-width: 767px) {
  .explain-sec .links .link .link-ttl h5 {
    font-size: 1.6rem;
    margin-right: 1rem;
  }
}
.explain-sec .links .link .link-ttl .en {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.3em;
}
@media (max-width: 767px) {
  .explain-sec .links .link .link-ttl .en {
    font-size: 1.2rem;
  }
}
.explain-sec .links .link .circle {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border-radius: 50%;
  background-color: #E2D06E;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .explain-sec .links .link .circle {
    width: 0.8rem;
    height: 0.8rem;
  }
}
@media (min-width: 768px) {
  .explain-sec .links .link:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
  .explain-sec .links .link:hover .circle {
    background-color: #BCAD57;
  }
}

.cta {
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .cta {
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.cta .sec-inner {
  max-width: 860px;
}
.cta .sec-inner ul {
  display: flex;
  justify-content: space-between;
  gap: 50px;
}
@media (max-width: 767px) {
  .cta .sec-inner ul {
    gap: 3rem;
    flex-direction: column;
  }
}
.cta .sec-inner ul li {
  width: calc(50% - 25px);
}
@media (max-width: 767px) {
  .cta .sec-inner ul li {
    width: 100%;
    text-align: center;
  }
}
.cta .sec-inner ul li h5 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li h5 {
    text-align: center;
    font-size: 1.6rem;
  }
}
.cta .sec-inner ul li p {
  font-size: 14px;
  line-height: 1.4em;
  color: #888;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li p {
    text-align: center;
    font-size: 1.4rem;
  }
}
.cta .sec-inner ul li a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  padding-left: 40px;
  padding-right: 40px;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li a {
    height: 4rem;
    padding-left: 4rem;
    padding-right: 4rem;
    width: 21rem;
  }
}
.cta .sec-inner ul li .input {
  height: 40px;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 14px;
  border: 1px solid gray;
  margin-bottom: 10px;
  width: 100%;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li .input {
    width: 100%;
  }
}
.cta .sec-inner ul li .mag-a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.2em;
  border: 1px solid #3e3e3e;
  position: relative;
  color: #3e3e3e;
  font-size: 14px;
  font-weight: 600;
}
.cta .sec-inner ul li .mag-a::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #E2D06E;
  position: absolute;
  right: 20px;
  top: calc(50% - 4px);
}
.cta .sec-inner ul li .mag-a input {
  border: none;
  padding-left: 40px;
  line-height: 38px;
  display: block;
  height: 40px;
  color: #3e3e3e;
  background-color: transparent;
  letter-spacing: 0.2em;
  font-size: 14px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  padding-right: 40px;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li .mag-a {
    font-size: 1.4rem;
    padding-top: 0;
  }
}
.cta .sec-inner ul li .line-a {
  background: #06C755;
  font-size: 14px;
  font-weight: 800;
  color: white;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li .line-a {
    font-size: 1.4rem;
  }
}
.cta .sec-inner ul li .line-a img {
  margin-right: 10px;
}
@media (max-width: 767px) {
  .cta .sec-inner ul li .line-a img {
    margin-right: 1rem;
  }
}

section:not(.fv) a {
  transition: all 0.3s;
}
section:not(.fv) a:hover {
  opacity: 0.7;
}

.calender-sec {
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .calender-sec {
    padding-bottom: 5rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.calender-sec .sec-inner {
  max-width: 860px;
}
.calender-sec img {
  width: 100%;
}

.footer {
  padding-left: 20px;
  padding-right: 20px;
}
.footer a {
  transition: all 0.3s;
}
.footer a:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  .footer {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.footer__inner {
  max-width: 1200px;
  margin: auto;
}
.footer__inner .footer-top {
  display: flex;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 20px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .footer__inner .footer-top {
    flex-direction: column;
  }
}
@media (max-width: 767px) {
  .footer__inner .footer-top {
    flex-direction: column;
  }
}
.footer__inner .footer-top .logo img {
  width: 255px;
}
.footer__inner .footer-top .company-wrap {
  display: flex;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .company-wrap {
    flex-direction: column;
    align-items: center;
  }
}
.footer__inner .footer-top .company-wrap .logo {
  margin-top: unset;
  margin-right: 50px;
  padding: unset;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .company-wrap .logo {
    margin-right: 0;
  }
}
.footer__inner .footer-top .company-wrap .address p {
  font-size: 14px;
  line-height: 1.4em;
  font-weight: 600;
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .company-wrap .address p {
    font-size: 1.2rem;
    text-align: center;
    margin-top: 2rem;
  }
}
.footer__inner .footer-top .footer-list {
  width: 100%;
  padding-top: 6px;
  width: 614px;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .footer-list {
    width: 100%;
  }
}
.footer__inner .footer-top .footer-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0px;
  justify-content: flex-end;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .footer-list ul {
    gap: 2rem 0;
    margin-top: 3rem;
    justify-content: flex-start;
  }
}
.footer__inner .footer-top .footer-list li {
  width: 25%;
}
.footer__inner .footer-top .footer-list li a {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #3e3e3e;
}
@media (max-width: 1024px) {
  .footer__inner .footer-top .footer-list li a {
    font-size: 1.2rem;
  }
}
@media (min-width: 1025px) {
  .footer__inner .footer-top .footer-list li:nth-child(4n) {
    width: 123px;
  }
}
@media (max-width: 767px) {
  .footer__inner .footer-top .footer-list li {
    width: 33%;
  }
}
.footer__inner .sns {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .footer__inner .sns {
    gap: 1rem;
    margin-bottom: 2rem;
  }
}
.footer__inner .footer-bottom {
  border-top: 1px solid #E5E5E5;
  padding-top: 30px;
  display: flex;
  padding-bottom: 30px;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1024px) {
  .footer__inner .footer-bottom {
    flex-direction: column;
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}
.footer__inner .footer-bottom ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 1024px) {
  .footer__inner .footer-bottom ul {
    flex-wrap: wrap;
    justify-content: flex-start;
    justify-content: center;
    gap: 1rem;
  }
}
.footer__inner .footer-bottom ul li a {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #3e3e3e;
}
@media (max-width: 1024px) {
  .footer__inner .footer-bottom ul li a {
    font-size: 1rem;
  }
}
.footer__inner .footer-bottom .copy {
  padding-left: 35px;
  color: #888;
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 600;
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .footer__inner .footer-bottom .copy {
    padding-left: 0;
    text-align: center;
    font-size: 1rem;
    margin-top: 3rem;
  }
}

.philo-fv {
  height: 49.1666666667vw;
  position: relative;
}
@media (max-width: 767px) {
  .philo-fv {
    height: auto;
  }
}
.philo-fv img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.philo-fv .txt {
  position: absolute;
  top: 2.7777777778vw;
  left: 10.4166666667vw;
}
.philo-fv .txt img {
  width: 10.4166666667vw;
}

.history {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .history {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.history .history-img {
  width: 93%;
}
@media (max-width: 767px) {
  .history .history-img {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .history .history-sp .txt-wrapper {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 3rem;
  }
}
.history .history-sp .txt-wrapper img {
  width: 100%;
}
.history .txt {
  padding: 32px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
  background-color: #fff;
  max-width: 1000px;
  margin: auto;
  margin-top: 50px;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .history .txt {
    margin-top: 2rem;
    width: 90%;
  }
}
.history .ttl h6 {
  color: #A7A19E;
  font-family: "Zen Antique", serif;
  font-size: 13px;
  letter-spacing: 0.3em;
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .history .ttl h6 {
    font-size: 1.2rem;
  }
}
.history .ttl h2 {
  font-size: 32px;
  letter-spacing: 0.2em;
  font-weight: 600;
  line-height: 1.6em;
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .history .ttl h2 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
}
.history .desc {
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .history .desc {
    font-size: 1.44rem;
    margin-bottom: 2rem;
  }
}
.history .red {
  color: #9A0F42;
  font-size: 18px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
}
@media (max-width: 767px) {
  .history .red {
    font-size: 1.6rem;
  }
}

.ing {
  background-color: #fafafa;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .ing {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.ing .sec-inner {
  max-width: 1000px;
}
@media (max-width: 767px) {
  .ing .sec-inner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.ing .sec-ttl {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .ing .sec-ttl {
    margin-bottom: 4rem;
  }
}
.ing .sec-ttl h2 {
  font-size: 32px;
}
@media (max-width: 767px) {
  .ing .sec-ttl h2 {
    font-size: 2.4rem;
  }
}
@media (max-width: 767px) {
  .ing .sec-ttl h6 {
    white-space: nowrap;
  }
}
.ing ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .ing ul {
    flex-direction: column;
    margin-bottom: 2rem;
  }
}
.ing ul li {
  width: calc(33.3333% - 13.33333px);
  background-color: #fff;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
@media (max-width: 767px) {
  .ing ul li {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.ing ul li img {
  width: 100%;
}
.ing ul li .txt {
  padding: 24px 36.5px;
}
@media (max-width: 767px) {
  .ing ul li .txt {
    padding: 2rem 1.6rem;
  }
}
.ing ul li .big {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: 1.6em;
  font-weight: 600;
  color: black;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .ing ul li .big {
    font-size: 2rem;
    margin-bottom: 1.6rem;
  }
}
.ing ul li .desc {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  color: black;
  font-weight: 600;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .ing ul li .desc {
    font-size: 1.4rem;
  }
}
.ing h4 {
  display: flex;
  gap: 24px;
  align-items: center;
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .ing h4 {
    margin-bottom: 2rem;
    gap: 1rem;
  }
}
.ing h4 .span-txt {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.2em;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .ing h4 .span-txt {
    font-size: 1.6rem;
  }
}
.ing h4 .border {
  display: block;
  height: 1px;
  width: 100%;
  background: #A7A19E;
}
.ing .txt-wrapper2 {
  padding-left: 50px;
  padding-right: 50px;
}
.ing .txt-wrapper2 p {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
}
@media (max-width: 767px) {
  .ing .txt-wrapper2 {
    padding-left: 0rem;
    padding-right: 0rem;
  }
  .ing .txt-wrapper2 p {
    font-size: 1.2rem;
  }
}

.carrying {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 1024px) {
  .carrying {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .carrying {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.carrying .carrying-inner {
  display: flex;
}
@media (max-width: 1024px) {
  .carrying .carrying-inner {
    flex-direction: column;
    align-items: center;
  }
}
.carrying .left {
  width: 482px;
  padding-left: 48px;
  padding-right: 48px;
  padding-top: 6.5972222222vw;
}
@media screen and (min-width: 2000px) {
  .carrying .left {
    padding-top: 10.4166666667vw;
  }
}
@media (max-width: 1024px) {
  .carrying .left {
    padding-top: 0rem;
    padding-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .carrying .left {
    padding-top: 0rem;
    padding-bottom: 4rem;
    width: 100%;
  }
}
.carrying .left .sec-ttl {
  margin-bottom: 32px;
}
.carrying .left h2 {
  font-size: 32px;
}
@media (max-width: 767px) {
  .carrying .left h2 {
    font-size: 2.4rem;
  }
}
.carrying .left .txts p {
  font-size: 16px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
  margin-bottom: 32px;
}
.carrying .left .txts p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .carrying .left .txts p {
    font-size: 1.44rem;
  }
}
.carrying .right {
  width: calc(100% - 482px);
}
@media (max-width: 1024px) {
  .carrying .right {
    width: 100%;
  }
}
.carrying .right img {
  width: 100%;
}
.carrying .right .box {
  background: white;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  padding: 32px;
  max-width: 500px;
  margin: auto;
  margin-top: -50px;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .carrying .right .box {
    width: 90%;
    margin-top: -1rem;
  }
}
.carrying .right .box li {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 1.8em;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .carrying .right .box li {
    font-size: 1.44rem;
  }
}
.carrying .right .box ul {
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .carrying .right .box ul {
    margin-bottom: 2rem;
  }
}
.carrying .right .box a {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .carrying .right .box a {
    padding: 2rem 1.5rem;
    margin: auto;
  }
}
.carrying .right .box a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .carrying .right .box a p {
    font-size: 1.4rem;
  }
}
.carrying .right .box a img {
  width: 6.1px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .carrying .right .box a img {
    width: 0.6rem;
  }
}
@media (min-width: 768px) {
  .carrying .right .box a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}
@media (max-width: 767px) {
  .carrying .right .box .a-wrapper2 {
    text-align: center;
  }
}

.philo-cta {
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #fafafa;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .philo-cta {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.philo-cta .philo-cta-inner {
  max-width: 1000px;
  margin: auto;
}
.philo-cta .philo-cta-inner h2 {
  font-size: 32px;
  text-align: center;
  line-height: 1.6em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .philo-cta .philo-cta-inner h2 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}
.philo-cta .philo-cta-inner ul {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .philo-cta .philo-cta-inner ul {
    flex-direction: column;
    gap: 1rem;
  }
}
.philo-cta .philo-cta-inner ul li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
  width: 300px;
}
@media (max-width: 767px) {
  .philo-cta .philo-cta-inner ul li a {
    padding: 2rem 1.5rem;
    margin: auto;
    width: 30rem;
  }
}
.philo-cta .philo-cta-inner ul li a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .philo-cta .philo-cta-inner ul li a p {
    font-size: 1.4rem;
  }
}
.philo-cta .philo-cta-inner ul li a img {
  width: 6.1px;
}
@media (max-width: 767px) {
  .philo-cta .philo-cta-inner ul li a img {
    width: 0.6rem;
  }
}
@media (min-width: 768px) {
  .philo-cta .philo-cta-inner ul li a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}
.philo-cta .philo-cta-inner ul li .btn2 {
  background-color: transparent;
  border-radius: 0;
  border-bottom: 1px solid #F2F0ED;
}

.breadcrumb {
  padding-top: 40px;
  padding-bottom: 24px;
}
@media (max-width: 767px) {
  .breadcrumb {
    padding-top: 4rem;
    padding-bottom: 1rem;
    padding-right: 2rem;
  }
}
.breadcrumb ul {
  display: flex;
  justify-content: flex-end;
  max-width: 1000px;
  margin: auto;
}
.breadcrumb ul li {
  padding-left: 10px;
  position: relative;
}
.breadcrumb ul li a {
  font-size: 12px;
  color: #3e3e3e;
  font-weight: 500;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .breadcrumb ul li a {
    font-size: 1.2rem;
  }
}
@media (max-width: 767px) {
  .breadcrumb ul li {
    padding-left: 1rem;
  }
}
.breadcrumb ul li::before {
  content: "／";
  font-size: 12px;
  color: #888;
  font-weight: 500;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .breadcrumb ul li::before {
    font-size: 1.2rem;
  }
}
.breadcrumb ul li:first-child::before {
  display: none;
}
.breadcrumb ul li:first-child a {
  color: #888;
}
.breadcrumb ul li:last-child a {
  pointer-events: none;
}

.gift-fv {
  height: 49.1666666667vw;
  position: relative;
}
@media (max-width: 767px) {
  .gift-fv {
    height: auto;
  }
}
.gift-fv img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.gift-fv .txt {
  position: absolute;
  top: 4.8611111111vw;
  left: 3.4722222222vw;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .gift-fv .txt {
    display: none;
  }
}
.gift-fv .txt h1 {
  color: #3e3e3e;
  font-size: 33px;
  font-weight: 600;
  line-height: 1.6em;
  letter-spacing: 0.15em;
}
@media (max-width: 767px) {
  .gift-fv .txt h1 {
    font-size: 2rem;
  }
}
.gift-fv .txt h1 img {
  width: 8.1944444444vw;
}
.gift-fv .txt p {
  font-size: 24px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
  position: relative;
  padding-left: 57px;
  margin-top: 5px;
}
.gift-fv .txt p::before {
  content: "";
  width: 15px;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.15);
  position: absolute;
  left: 30px;
  top: 52%;
}
@media (max-width: 767px) {
  .gift-fv .txt p::before {
    width: 1.2rem;
    left: 0;
  }
}
.gift-fv .txt p::after {
  content: "";
  width: 15px;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.15);
  position: absolute;
  right: -20px;
  top: 52%;
}
@media (max-width: 767px) {
  .gift-fv .txt p::after {
    width: 1.2rem;
    right: -1.5rem;
  }
}
@media (max-width: 767px) {
  .gift-fv .txt p {
    font-size: 1.2rem;
    padding-left: 2rem;
  }
}

@media (max-width: 767px) {
  .apply-sec2 .sec-ttl {
    margin-bottom: 3rem;
  }
}
.apply-sec2 .sec-ttl h2 {
  font-size: 32px;
}
@media (max-width: 767px) {
  .apply-sec2 .sec-ttl h2 {
    font-size: 2rem;
    line-height: normal;
    text-align: center;
    text-indent: 1rem;
  }
}

.reason {
  padding: 80px 20px;
  background-color: #fafafa;
}
@media (max-width: 767px) {
  .reason {
    padding: 5rem 2rem;
  }
}
.reason .reason-inner {
  max-width: 1000px;
  margin: auto;
}
.reason h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .reason h2 {
    font-size: 2rem;
    margin-bottom: 3rem;
    line-height: normal;
  }
}
.reason ul li {
  margin-bottom: 50px;
  padding-left: 40px;
  padding-top: 40px;
  position: relative;
  display: flex;
  align-items: center;
}
.reason ul li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .reason ul li {
    flex-direction: column;
    padding-left: 0;
    padding-top: 3rem;
    margin-bottom: 4rem;
  }
}
.reason ul li .num {
  position: absolute;
  color: #A7A19E;
  font-size: 80px;
  font-weight: 500;
  left: 0;
  top: 0;
}
@media (max-width: 767px) {
  .reason ul li .num {
    font-size: 6rem;
  }
}
.reason ul li .img-wrapper {
  width: 240px;
}
.reason ul li .img-wrapper img {
  width: 100%;
}
@media (max-width: 767px) {
  .reason ul li .img-wrapper {
    width: 100%;
  }
}
.reason ul li .txt-wrapper {
  width: calc(100% - 240px);
  padding-left: 50px;
}
@media (max-width: 767px) {
  .reason ul li .txt-wrapper {
    width: 100%;
    padding-left: 0;
    padding-top: 2rem;
  }
}
.reason ul li .txt-wrapper h4 {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4em;
  letter-spacing: 0.2em;
  font-weight: 600;
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .reason ul li .txt-wrapper h4 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
}
.reason ul li .txt-wrapper p {
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .reason ul li .txt-wrapper p {
    font-size: 1.4rem;
  }
}

.wrapping {
  padding: 80px 20px;
}
@media (max-width: 767px) {
  .wrapping {
    padding: 5rem 2rem;
  }
}
.wrapping .wrapping-inner {
  max-width: 1000px;
  margin: auto;
}
.wrapping h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .wrapping h2 {
    font-size: 2rem;
    margin-bottom: 3rem;
    line-height: normal;
  }
}
.wrapping .flex {
  display: flex;
}
@media (max-width: 767px) {
  .wrapping .flex {
    flex-direction: column;
  }
}
.wrapping .flex .left {
  width: 330px;
}
@media (max-width: 767px) {
  .wrapping .flex .left {
    width: 100%;
  }
}
.wrapping .flex .left h4 {
  font-size: 24px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
}
@media (max-width: 767px) {
  .wrapping .flex .left h4 {
    font-size: 1.4rem;
    margin-bottom: 3rem;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    font-weight: 400;
  }
}
.wrapping .flex .right {
  width: calc(100% - 330px);
}
@media (max-width: 767px) {
  .wrapping .flex .right {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .wrapping .flex .right ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.wrapping .flex .right li {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .wrapping .flex .right li {
    flex-direction: column;
    margin-bottom: 3rem;
    width: 48%;
  }
}
.wrapping .flex .right li:last-child {
  margin-bottom: 0;
}
.wrapping .flex .right li .img-wrapper {
  width: 240px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .wrapping .flex .right li .img-wrapper {
    width: 100%;
  }
}
.wrapping .flex .right li .img-wrapper img {
  width: 100%;
}
.wrapping .flex .right li .txt-wrapper {
  padding-left: 50px;
}
@media (max-width: 767px) {
  .wrapping .flex .right li .txt-wrapper {
    padding-left: 0rem;
    padding-top: 1rem;
  }
}
.wrapping .flex .right li .txt-wrapper h5 {
  font-size: 24px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
  margin-bottom: 20px;
  color: #222;
}
@media (max-width: 767px) {
  .wrapping .flex .right li .txt-wrapper h5 {
    font-size: 1.4rem;
    margin-bottom: 0.5rem;
    min-height: 4.7rem;
    display: flex;
    align-items: center;
  }
}
.wrapping .flex .right li .txt-wrapper p {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .wrapping .flex .right li .txt-wrapper p {
    font-size: 1.2rem;
  }
}

.hoso {
  padding: 80px 50px;
  background-color: #fafafa;
}
@media (max-width: 767px) {
  .hoso {
    padding: 5rem 2rem;
  }
}
.hoso .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
  color: #222;
}
@media (max-width: 767px) {
  .hoso .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.hoso .desc {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hoso .desc {
    font-size: 1.4rem;
    text-align: left;
  }
}
.hoso .hoso-inner {
  max-width: 1000px;
  margin: auto;
}
.hoso ul {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .hoso ul {
    flex-direction: column;
  }
}
.hoso ul li {
  width: calc(33.333% - 13.33333px);
}
@media (max-width: 767px) {
  .hoso ul li {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.hoso ul li img {
  width: 100%;
}
.hoso ul li .txt-wrapper {
  padding: 24px 16px;
  background-color: #F2F0ED;
}
@media (max-width: 767px) {
  .hoso ul li .txt-wrapper {
    padding: 2rem 1.4rem;
  }
}
.hoso ul li .txt-wrapper p {
  text-align: center;
  color: black;
}
.hoso ul li .txt-wrapper .big {
  font-size: 20px;
  letter-spacing: 0.2em;
  font-weight: 600;
  line-height: 1.6em;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .hoso ul li .txt-wrapper .big {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.hoso ul li .txt-wrapper .txt {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .hoso ul li .txt-wrapper .txt {
    font-size: 1.4rem;
  }
}

.noshi {
  padding: 80px 50px;
}
.noshi .noshi-inner {
  max-width: 1000px;
  margin: auto;
}
@media (max-width: 767px) {
  .noshi {
    padding: 5rem 2rem;
    padding-bottom: 0;
  }
}
.noshi .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .noshi .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.noshi .desc {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  margin-bottom: 50px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .noshi .desc {
    font-size: 1.4rem;
    text-align: left;
  }
}
.noshi .block {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .noshi .block {
    margin-bottom: 2.5rem;
  }
}
.noshi .block.block2 {
  margin-bottom: 0;
}
.noshi .block h3 {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .noshi .block h3 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
}
.noshi .block .block-inner {
  max-width: 900px;
  margin: auto;
}
.noshi .block .block-inner .block-p {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  margin-bottom: 32px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .noshi .block .block-inner .block-p {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
}
.noshi .block .block-inner ul {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .noshi .block .block-inner ul {
    flex-direction: column;
  }
}
.noshi .block .block-inner ul li {
  width: calc(33.333% - 13.33333px);
}
@media (max-width: 767px) {
  .noshi .block .block-inner ul li {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.noshi .block .block-inner ul li img {
  width: 100%;
}
.noshi .block .block-inner ul li .txts {
  padding: 24px 16px;
}
@media (max-width: 767px) {
  .noshi .block .block-inner ul li .txts {
    padding: 2rem 1rem;
    padding-bottom: 0;
  }
}
.noshi .block .block-inner ul li .txts p {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  color: #222;
  line-height: 1.8em;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .noshi .block .block-inner ul li .txts p {
    font-size: 1.6rem;
  }
}
.noshi .block .block-inner ul li .txts .desc {
  font-size: 16px;
  margin-top: 16px;
  text-align: left;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .noshi .block .block-inner ul li .txts .desc {
    font-size: 1.3rem;
    margin-top: 1rem;
  }
}

.tesage {
  padding: 80px 20px;
  background-color: #fafafa;
}
@media (max-width: 767px) {
  .tesage {
    padding: 5rem 2rem;
  }
}
.tesage .tesage-inner {
  max-width: 1000px;
  margin: auto;
}
.tesage .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .tesage .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.tesage .desc {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  margin-bottom: 50px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .tesage .desc {
    font-size: 1.4rem;
    text-align: left;
  }
}
.tesage .imgs {
  display: flex;
  align-items: flex-start;
  margin-bottom: 32px;
}
.tesage .imgs img {
  width: 50%;
}
.tesage .imgs .img2 {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .tesage .imgs .img2 {
    margin-top: 3rem;
  }
}
.tesage a {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .tesage a {
    padding: 2rem 1.5rem;
    margin: auto;
  }
}
.tesage a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .tesage a p {
    font-size: 1.4rem;
  }
}
.tesage a img {
  width: 6.1px;
}
@media (max-width: 767px) {
  .tesage a img {
    width: 0.6rem;
  }
}
@media (min-width: 768px) {
  .tesage a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}
.tesage .a-wrapper2 {
  text-align: center;
}

.faq {
  padding: 80px 20px;
  padding-bottom: 160px;
}
@media (max-width: 767px) {
  .faq {
    padding: 5rem 2rem;
    padding-bottom: 10rem;
  }
}
.faq .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .faq .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.faq .faq-inner {
  max-width: 1000px;
  margin: auto;
}
.faq .faq-category p {
  padding: 20px;
  background-color: #F2F0ED;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .faq .faq-category p {
    padding: 1.4rem;
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.faq .faq-item {
  border-top: 1px solid #e5e5e5;
}
.faq .faq-item__summary {
  padding: 24px;
  position: relative;
}
@media (max-width: 767px) {
  .faq .faq-item__summary {
    padding: 2rem 0;
  }
}
.faq .faq-item__summary::before, .faq .faq-item__summary::after {
  content: "";
  width: 14px;
  height: 2px;
  background-color: #3e3e3e;
  position: absolute;
  right: 26px;
  top: calc(50% - 1px);
}
@media (max-width: 767px) {
  .faq .faq-item__summary::before, .faq .faq-item__summary::after {
    width: 12px;
    height: 2px;
    right: 1rem;
  }
}
.faq .faq-item__summary::after {
  transform: rotate(90deg);
  transition: all 0.3s;
}
.faq .faq-item__summary.active::after {
  transform: rotate(0);
}
.faq .faq-item__summary .faq-item__q {
  display: flex;
}
.faq .faq-item__summary .faq-item__q-label {
  width: 46px;
  font-size: 20px;
  font-family: "Zen Antique", serif;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .faq .faq-item__summary .faq-item__q-label {
    width: 3rem;
    font-size: 1.6rem;
  }
}
.faq .faq-item__summary .faq-item__q-text {
  font-size: 16px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
}
@media (max-width: 767px) {
  .faq .faq-item__summary .faq-item__q-text {
    font-size: 1.4rem;
    padding-right: 3rem;
  }
}
.faq .faq-item__content {
  padding: 24px;
  padding-top: 0;
  display: none;
}
@media (max-width: 767px) {
  .faq .faq-item__content {
    padding: 2rem 0;
    padding-top: 0;
  }
}
.faq .faq-item__content .faq-item__a {
  display: flex;
}
.faq .faq-item__content .faq-item__a-label {
  width: 46px;
  font-size: 20px;
  font-family: "Zen Antique", serif;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .faq .faq-item__content .faq-item__a-label {
    width: 3rem;
    font-size: 1.6rem;
  }
}
.faq .faq-item__content .faq-item__a-body p, .faq .faq-item__content .faq-item__a-body li {
  font-size: 16px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .faq .faq-item__content .faq-item__a-body p, .faq .faq-item__content .faq-item__a-body li {
    font-size: 1.2rem;
    padding-right: 3rem;
  }
}
.faq .faq-item__content .faq-item__a-body p a, .faq .faq-item__content .faq-item__a-body li a {
  color: inherit;
  font-family: inherit;
  text-decoration: underline;
  font-size: 1em;
}

.company-fv {
  height: 500px;
}
@media screen and (min-width: 1501px) {
  .company-fv {
    height: auto;
  }
}
@media (max-width: 767px) {
  .company-fv {
    height: auto;
  }
}
.company-fv-inner {
  display: flex;
  height: 100%;
}
@media screen and (min-width: 1501px) {
  .company-fv-inner {
    align-items: center;
  }
}
@media (max-width: 767px) {
  .company-fv-inner {
    flex-direction: column;
  }
}
.company-fv .txt-wrapper {
  width: 620px;
  padding-left: 80px;
  padding-top: 14px;
  padding-right: 50px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper {
    width: 100%;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
}
.company-fv .txt-wrapper h1 {
  font-size: 32px;
  font-weight: 600;
  color: #222;
  letter-spacing: 0.2em;
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper h1 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
    text-align: center;
  }
}
.company-fv .txt-wrapper .desc {
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  margin-bottom: 40px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .desc {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
}
.company-fv .txt-wrapper .wrap {
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .wrap {
    margin-bottom: 2rem;
  }
}
.company-fv .txt-wrapper .wrap p {
  font-size: 20px;
  color: #222;
  font-weight: 600;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .wrap p {
    font-size: 1.6rem;
    margin-bottom: 2rem;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .wrap ul {
    padding-left: 1.4rem;
  }
}
.company-fv .txt-wrapper .wrap ul li {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  font-size: 16px;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
.company-fv .txt-wrapper .wrap ul li:last-child {
  margin-bottom: 0;
}
.company-fv .txt-wrapper .wrap ul li img {
  margin-right: 16px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .wrap ul li img {
    margin-right: 1rem;
    width: 2rem;
  }
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .wrap ul li {
    font-size: 1.3rem;
  }
}
.company-fv .txt-wrapper a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 380px;
  gap: 28px;
  padding: 24px;
  background-color: #F2F0ED;
  border-radius: 6px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper a {
    padding: 2rem 1.5rem;
    margin: auto;
    width: auto;
    display: inline-flex;
  }
}
.company-fv .txt-wrapper a p {
  font-size: 16px;
  color: #3e3e3e;
  font-weight: 600;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper a p {
    font-size: 1.4rem;
  }
}
.company-fv .txt-wrapper a img {
  width: 6.1px;
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper a img {
    width: 0.6rem;
  }
}
@media (min-width: 768px) {
  .company-fv .txt-wrapper a:hover {
    opacity: 1;
    background-color: #cbcbcb;
  }
}
@media (max-width: 767px) {
  .company-fv .txt-wrapper .a-wrapper2 {
    text-align: center;
  }
}
.company-fv .img-wrapper {
  width: calc(100% - 620px);
  height: 100%;
}
@media (max-width: 767px) {
  .company-fv .img-wrapper {
    width: 100%;
  }
}
.company-fv .img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.company-reason {
  padding: 80px 20px;
}
@media (max-width: 767px) {
  .company-reason {
    padding: 5rem 2rem;
  }
}
.company-reason .cr-inner {
  max-width: 1000px;
  margin: auto;
}
.company-reason .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .company-reason .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.company-reason ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
@media (max-width: 767px) {
  .company-reason ul {
    gap: 1rem;
  }
}
.company-reason ul li {
  width: calc(33.3333% - 13.3333px);
}
.company-reason ul li img {
  width: 100%;
}
@media (max-width: 767px) {
  .company-reason ul li {
    width: calc(50% - 0.5rem);
  }
}

.recommend2 {
  background-color: #FAFAFA;
}
.recommend2 .sec-ttl {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .recommend2 .sec-ttl {
    margin-bottom: 3rem;
  }
}
.recommend2 .sec-ttl h2 {
  font-size: 32px;
}
@media (max-width: 767px) {
  .recommend2 .sec-ttl h2 {
    font-size: 2.4rem;
  }
}

.c-feature {
  padding: 80px 20px;
}
@media (max-width: 767px) {
  .c-feature {
    padding: 5rem 2rem;
  }
}
.c-feature .c-feature-inner {
  max-width: 1200px;
  margin: auto;
}
.c-feature .ttl h2 {
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .c-feature .ttl h2 {
    font-size: 2rem;
    margin-bottom: 4rem;
    line-height: normal;
  }
}
.c-feature ul {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .c-feature ul {
    flex-wrap: wrap;
    gap: 20px 0;
  }
}
@media (max-width: 767px) {
  .c-feature ul {
    flex-wrap: wrap;
    gap: 3rem 1rem;
  }
}
.c-feature ul li {
  width: calc(25% - 15px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .c-feature ul li {
    width: 49%;
  }
}
@media (max-width: 767px) {
  .c-feature ul li {
    width: calc(50% - 0.5rem);
    gap: 0;
  }
}
.c-feature ul li img {
  height: 170px;
  width: auto;
  display: block;
}
@media screen and (max-width: 1130px) {
  .c-feature ul li img {
    height: 140px;
  }
}
@media (max-width: 767px) {
  .c-feature ul li img {
    height: 10rem;
    margin-bottom: 1rem;
  }
}
.c-feature ul li .big {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  white-space: nowrap;
}
@media screen and (max-width: 1130px) {
  .c-feature ul li .big {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .c-feature ul li .big {
    font-size: 1.4rem;
    text-align: center;
    line-height: normal;
    margin-bottom: 0.7rem;
  }
}
.c-feature ul li .desc {
  font-size: 14px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  color: #222;
  font-weight: 600;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .c-feature ul li .desc {
    font-size: 1.1rem;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
  }
}

.c-flow {
  padding: 80px 20px;
  background-color: #FAFAFA;
}
@media (max-width: 767px) {
  .c-flow {
    padding: 5rem 2rem;
  }
}
.c-flow .cf-inner {
  max-width: 1000px;
  margin: auto;
}
.c-flow .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .c-flow .ttl h2 {
    font-size: 2rem;
    margin-bottom: 5rem;
    line-height: normal;
  }
}
.c-flow ul {
  display: flex;
  gap: 16px;
}
@media (max-width: 767px) {
  .c-flow ul {
    flex-wrap: wrap;
    gap: 3rem;
  }
}
.c-flow ul li {
  width: calc(25% - 12px);
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  border: 1px solid #d9d9d9;
  background-color: #fff;
  padding-top: 44px;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 24px;
}
@media (max-width: 767px) {
  .c-flow ul li {
    width: 100%;
    padding-top: 4rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 4rem;
  }
}
.c-flow ul li .num {
  position: absolute;
  width: 40px;
  height: 40px;
  display: flex;
  background-color: #b0ab99;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  padding-left: 2px;
  font-family: "Helvetica Neue", sans-serif;
  color: white;
  font-size: 20px;
  font-weight: 400;
  top: -20px;
}
@media (max-width: 767px) {
  .c-flow ul li .num {
    width: 4rem;
    height: 4rem;
    padding-left: 0.2rem;
    font-size: 2rem;
    top: -2rem;
  }
}
.c-flow ul li img {
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .c-flow ul li img {
    margin-bottom: 3rem;
  }
}
.c-flow ul li .big {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .c-flow ul li .big {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}
.c-flow ul li .desc {
  color: #222;
  font-size: 14px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .c-flow ul li .desc {
    font-size: 1.2rem;
  }
}

.about-service {
  padding: 80px 20px;
}
@media (max-width: 767px) {
  .about-service {
    padding: 5rem 2rem;
  }
}
.about-service .as-inner {
  max-width: 1000px;
  margin: auto;
}
.about-service .ttl h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
  color: #222;
}
@media (max-width: 767px) {
  .about-service .ttl h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: normal;
  }
}
.about-service .desc {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .about-service .desc {
    margin-bottom: 3rem;
  }
}
.about-service .desc p {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .about-service .desc p {
    font-size: 1.3rem;
  }
  .about-service .desc p.p2 {
    text-align: left;
  }
}
.about-service .as-ul {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .about-service .as-ul {
    gap: 2rem;
  }
}
.about-service .as-ul li {
  width: calc(50% - 12px);
  display: flex;
}
@media (max-width: 767px) {
  .about-service .as-ul li {
    width: calc(50% - 1rem);
    height: auto;
    flex-direction: column;
  }
}
.about-service .as-ul li .img-wrapper {
  width: 200px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .about-service .as-ul li .img-wrapper {
    width: 100%;
  }
}
.about-service .as-ul li .img-wrapper img {
  width: 100%;
}
@media (max-width: 767px) {
  .about-service .as-ul li .img-wrapper img {
    height: 12rem;
    object-fit: cover;
  }
}
.about-service .as-ul li .txt-wrapper {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  background-color: #f5f5f5;
}
@media (max-width: 767px) {
  .about-service .as-ul li .txt-wrapper {
    padding: 2rem 1rem;
    gap: 1rem;
    height: 100%;
    justify-content: flex-start;
  }
}
.about-service .as-ul li .txt-wrapper h5 {
  color: #222;
  font-weight: 600;
  font-size: 16px;
  line-height: 1em;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .about-service .as-ul li .txt-wrapper h5 {
    font-size: 1.4rem;
    text-align: center;
    line-height: normal;
  }
}
.about-service .as-ul li .txt-wrapper p {
  font-size: 14px;
  line-height: 1.7em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .about-service .as-ul li .txt-wrapper p {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .about-service .as-ul {
    margin-bottom: 4rem;
  }
}
.about-service h4 {
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  color: #222;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .about-service h4 {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.about-service .o-hoso-ul {
  display: flex;
  gap: 20px;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .about-service .o-hoso-ul {
    gap: 2rem;
    flex-wrap: wrap;
    margin-bottom: 3rem;
  }
}
.about-service .o-hoso-ul li {
  width: calc(33.3333% - 13.3333px);
}
@media (max-width: 767px) {
  .about-service .o-hoso-ul li {
    width: 100%;
  }
}
.about-service .o-hoso-ul li img {
  width: 100%;
}
.about-service .o-hoso-ul li .txt-wrapper {
  padding: 24px 10px;
  background-color: #F2F0ED;
}
@media (max-width: 767px) {
  .about-service .o-hoso-ul li .txt-wrapper {
    padding: 2.4rem 1rem;
  }
}
.about-service .o-hoso-ul li .txt-wrapper p {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  color: black;
}
@media (max-width: 767px) {
  .about-service .o-hoso-ul li .txt-wrapper p {
    font-size: 1.6rem;
  }
}
.about-service .notice p {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  margin-bottom: 80px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .about-service .notice p {
    font-size: 1.2rem;
    margin-bottom: 3rem;
    text-align: left;
  }
}
.about-service .notice p a {
  color: #004dc4;
  text-decoration: underline;
  font-size: 1em;
  font-family: inherit;
}
.about-service h3 {
  font-size: 32px;
  letter-spacing: 0.2em;
  font-weight: 600;
  text-align: center;
  color: #222;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .about-service h3 {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
}
.about-service .zisseki-ul {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 767px) {
  .about-service .zisseki-ul {
    flex-direction: column;
    gap: 2rem;
  }
}
.about-service .zisseki-ul li {
  width: calc(33.3333% - 13.33333px);
}
@media (max-width: 767px) {
  .about-service .zisseki-ul li {
    width: 100%;
  }
}
.about-service .zisseki-ul li .img-wrapper {
  text-align: center;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .about-service .zisseki-ul li .img-wrapper {
    margin-bottom: 1rem;
  }
}
.about-service .zisseki-ul li img {
  height: 146px;
  width: auto;
}
@media (max-width: 767px) {
  .about-service .zisseki-ul li img {
    height: 12rem;
  }
}
.about-service .zisseki-ul li p {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .about-service .zisseki-ul li p {
    font-size: 1.2rem;
  }
}

.faq2 {
  background-color: #fafafa;
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .faq2 {
    padding-bottom: 4rem;
  }
}

.contact-sec {
  padding-top: 80px;
  padding-bottom: 160px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .contact-sec {
    padding: 5rem 2rem;
    padding-bottom: 10rem;
  }
}
.contact-sec .big {
  text-align: center;
  font-size: 32px;
  line-height: 1.6em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .contact-sec .big {
    font-size: 1.6rem;
  }
}
.contact-sec .tel-wrapper {
  max-width: 550px;
  margin: auto;
}
.contact-sec .tel-wrapper p {
  color: #888;
}
.contact-sec .tel-wrapper .p1 {
  text-align: center;
  font-size: 20px;
  margin-bottom: 16px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .contact-sec .tel-wrapper .p1 {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.contact-sec .tel-wrapper .tel-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  padding-bottom: 16px;
  border-top: 1px solid #A7A19E;
  border-bottom: 1px solid #A7A19E;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .contact-sec .tel-wrapper .tel-inner {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.contact-sec .tel-wrapper .tel-inner .p-tel {
  font-size: 32px;
  letter-spacing: 0.2em;
  font-weight: 600;
}
@media (max-width: 767px) {
  .contact-sec .tel-wrapper .tel-inner .p-tel {
    font-size: 2.4rem;
    display: flex;
    align-items: center;
  }
  .contact-sec .tel-wrapper .tel-inner .p-tel img {
    width: 5rem;
  }
}
.contact-sec .tel-wrapper .tel-inner .num {
  font-size: 56px;
  font-weight: 600;
  letter-spacing: 0.2em;
  position: relative;
  right: -15px;
}
@media (max-width: 767px) {
  .contact-sec .tel-wrapper .tel-inner .num {
    font-size: 3.2rem;
    right: 0;
    white-space: nowrap;
    display: flex;
    align-items: center;
  }
  .contact-sec .tel-wrapper .tel-inner .num img {
    width: 27rem;
  }
}
.contact-sec .p2 {
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.2em;
  color: #888;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .contact-sec .p2 {
    font-size: 1.4rem;
    margin-bottom: 4rem;
  }
}
.contact-sec h2 {
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #222;
  text-align: center;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .contact-sec h2 {
    font-size: 2rem;
    margin-bottom: 3rem;
  }
}
.contact-sec .p3 {
  text-align: center;
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  font-weight: 600;
  color: #222;
  margin-bottom: 50px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-sec .p3 {
    font-size: 1.2rem;
  }
}
.contact-sec form {
  max-width: 800px;
  margin: auto;
}
.contact-sec form input:focus, .contact-sec form select:focus {
  outline: none !important;
  border: 1px solid #d9d9d9 !important;
  box-shadow: none !important;
}
.contact-sec form .wrap {
  margin-bottom: 26px;
}
.contact-sec form .wrap label {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 14px;
}
.contact-sec form .wrap label span {
  display: inline-block;
  padding: 4px 6px;
  border-radius: 4px;
  color: white;
  font-size: 12px;
  letter-spacing: 0.2em;
  background: #E05241;
  margin-left: 10px;
}
.contact-sec form .wrap .input-wrap {
  width: 100%;
}
.contact-sec form .wrap .input-wrap input {
  width: 100%;
  line-height: 40px;
  padding-left: 20px;
  border-radius: 6px;
  border: 1px solid #d9d9d9;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  background-color: #fafafa;
  color: black;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.2em;
}
.contact-sec form .wrap .input-wrap input::placeholder {
  color: #888;
}
@media (max-width: 767px) {
  .contact-sec form .wrap .input-wrap input {
    font-size: 1.4rem;
    padding-left: 1rem;
    line-height: 4rem;
  }
}
.contact-sec form .wrap .select-wrap {
  width: 100%;
  position: relative;
}
.contact-sec form .wrap .select-wrap::before {
  content: "";
  background-image: url(https://www11.easy-myshop.jp/emsrsc/yamadayamanju/res//select-arrow.svg);
  width: 11px;
  height: 6px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  right: 20px;
  top: calc(50% - 3px);
  position: absolute;
  pointer-events: none;
}
.contact-sec form .wrap .select-wrap select {
  width: 100%;
  height: 40px;
  padding-left: 20px;
  border-radius: 6px;
  border: 1px solid #d9d9d9;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  background-color: #fafafa;
  color: black;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.2em;
  appearance: none;
}
@media (max-width: 767px) {
  .contact-sec form .wrap .select-wrap select {
    font-size: 1.4rem;
    padding-left: 1rem;
    height: 4rem;
  }
}
.contact-sec form .wrap textarea {
  width: 100%;
  line-height: 1.5em;
  padding: 20px;
  border-radius: 6px;
  border: 1px solid #d9d9d9;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  background-color: #fafafa;
  height: 160px;
  color: black;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.2em;
  resize: none;
}
@media (max-width: 767px) {
  .contact-sec form .wrap textarea {
    font-size: 1.4rem;
    padding: 1rem;
    line-height: normal;
  }
}
.contact-sec form .wrap .count {
  text-align: right;
  margin-top: 16px;
  font-weight: 600;
  font-size: 12px;
  color: #666;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .contact-sec form .wrap .count {
    font-size: 1.4rem;
  }
}
.contact-sec form .notice {
  padding: 16px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  height: 200px;
  overflow: scroll;
  margin-bottom: 50px;
}
.contact-sec form .notice p, .contact-sec form .notice li {
  font-size: 14px;
  font-weight: 600;
  color: #666;
  letter-spacing: 0.2em;
  line-height: 1.6em;
  margin-bottom: 8px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact-sec form .notice p, .contact-sec form .notice li {
    font-size: 1.2rem;
  }
}
.contact-sec form .notice ol {
  padding-left: 1.7em;
  list-style-type: decimal;
}
@media (max-width: 767px) {
  .contact-sec form .notice ol {
    padding-left: 2.4rem;
  }
}
.contact-sec form .notice ol li {
  list-style: decimal;
}
.contact-sec form .submit-wrapper {
  display: flex;
  justify-content: center;
}
.contact-sec form .submit-wrapper button {
  padding: 24px;
  background-color: #F2F0ED;
  width: 240px;
  font-size: 16px;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  color: #3e3e3e;
  transition: all 0.3s;
  cursor: pointer;
  border-radius: 6px;
}
.contact-sec form .submit-wrapper button:hover {
  background-color: #cbcbcb;
}
@media (max-width: 767px) {
  .contact-sec form .submit-wrapper button {
    font-size: 1.4rem;
  }
}

.pane_list_bottom, .pane_list_bottom > .contents:first-child, .pane_detail_bottom, .pane_detail_bottom > .contents:first-child {
  background-color: #fff;
  box-shadow: none;
}

.center-class {
  margin: auto;
}

.pane_body {
  line-height: normal;
  font-size: 10pt;
  padding-bottom: 50px;
}
.pane_body ul {
  margin: 1em 0;
}
.pane_body *, .pane_body .esydsgn-image-slider-thumbnail-padding img, .pane_body .related_item_list .related_item_title {
  border: solid 0px #dcdcdc;
}
.pane_body .law_ttl, .pane_body .regular_disabled_limit_ttl {
  border-bottom-width: 1px;
}
.pane_body table {
  margin-bottom: 1em;
}
.pane_body h1 {
  font-size: 2rem;
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}
.pane_body h2 {
  font-size: 1.75rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
  margin-top: 2rem;
}
.pane_body h3 {
  font-size: 1.55rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
}
.pane_body h4 {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
}
.pane_body h5 {
  font-size: 1.15rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
}
.pane_body h6 {
  font-size: 1rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
}
.pane_body p, .pane_body li, .pane_body th, .pane_body td {
  font-size: 10pt;
  line-height: normal;
}
.pane_body span {
  font-size: inherit;
}
.pane_body a {
  font-size: inherit;
}
.pane_body .law_headline_ttl {
  font-weight: 600;
  font-size: 1.4em;
}
.pane_body .law_plus_info {
  border: 1px solid #dcdcdc;
}
.pane_body .common_regi_next_area, .pane_body .common_regi_back_area, .pane_body .bottom_buttons {
  margin-top: 30px;
}
.pane_body input, .pane_body textarea {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

main .swiper-button-next, main .swiper-button-prev {
  display: none;
}
main .fv .swiper-button-next, main .fv .swiper-button-prev {
  display: block;
}
main .fv .swiper-button-next::before, main .fv .swiper-button-prev::before {
  box-shadow: none;
  display: block;
}
@media (max-width: 767px) {
  main .fv .swiper-button-next, main .fv .swiper-button-prev {
    display: none;
  }
}

.app_content {
  line-height: normal;
  max-width: 1400px;
  margin: auto;
}
.app_content .member_history_item_name, .app_content .buy_item_name {
  font-weight: 600;
}
.app_content input, .app_content textarea {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.giji-main {
  padding-bottom: 40px;
}
.giji-main .inner {
  line-height: normal;
}

@media (max-width: 767px) {
  .category_section.cf .section_box1 *, .category_section.cf .section_box2 *, .category_section.cf .section_box3 *, .category_section.cf .vertical.related_item_list * {
    font-size: 14px;
  }
}

.thanks-wrapper {
  padding: 100px 20px;
}
.thanks-wrapper h2, .thanks-wrapper p {
  text-align: center;
}
.thanks-wrapper h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 20px;
}
.thanks-wrapper p {
  margin-bottom: 50px;
}
.thanks-wrapper .btn-wrapper {
  display: flex;
  justify-content: center;
}
.thanks-wrapper .btn-wrapper a {
  width: 220px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid black;
  color: black;
}

.fv .swiper-button-prev, .fv .swiper-button-next {
  display: block;
  color: black;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s;
}
.fv .swiper-button-prev.slide-color-1, .fv .swiper-button-prev.slide-color-6, .fv .swiper-button-next.slide-color-1, .fv .swiper-button-next.slide-color-6 {
  color: white;
}
.fv .swiper-button-prev::before, .fv .swiper-button-next::before {
  display: none;
}
.fv .swiper-button-prev::after, .fv .swiper-button-next::after {
  display: block;
  visibility: visible;
  opacity: 1;
  pointer-events: all;
  font-size: 24px;
}
@media (max-width: 767px) {
  .fv .swiper-button-prev, .fv .swiper-button-next {
    display: none;
  }
}
.fv .swiper-container:hover .swiper-button-prev, .fv .swiper-container:hover .swiper-button-next, .fv .swiper:hover .swiper-button-prev, .fv .swiper:hover .swiper-button-next {
  opacity: 0.6;
  visibility: visible;
  pointer-events: all;
}
.fv .swiper-container:hover .swiper-button-prev::after, .fv .swiper-container:hover .swiper-button-next::after, .fv .swiper:hover .swiper-button-prev::after, .fv .swiper:hover .swiper-button-next::after {
  font-size: 24px;
}
.fv .swiper-container:hover .swiper-button-prev::before, .fv .swiper-container:hover .swiper-button-next::before, .fv .swiper:hover .swiper-button-prev::before, .fv .swiper:hover .swiper-button-next::before {
  display: none;
}
.fv .swiper-pagination.slide-color-2 .swiper-pagination-bullet, .fv .swiper-pagination.slide-color-3 .swiper-pagination-bullet, .fv .swiper-pagination.slide-color-5 .swiper-pagination-bullet {
  background-color: rgba(0, 0, 0, 0.2);
}
.fv .swiper-pagination.slide-color-5 .swiper-pagination-bullet-active::after {
  background-color: rgba(0, 0, 0, 0.4);
}

.category_section.cf .section_box1, .category_section.cf .section_box2, .category_section.cf .section_box3, .category_section.cf .vertical.related_item_list {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.05em;
  color: #3e3e3e;
}
.category_section.cf .section_box1 *, .category_section.cf .section_box2 *, .category_section.cf .section_box3 *, .category_section.cf .vertical.related_item_list * {
  font-family: inherit;
  border-color: #F2F0ED;
  border-style: solid;
}

.section_box_head3 {
  font-weight: bold;
}

.category_explain .flex_container {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.category_explain .flex_container a {
  color: #3e3e3e;
  font-weight: bold;
  border: 1px solid #3e3e3e;
  border-radius: 10px;
  background-color: #fff;
  padding: 8px 10px;
  display: flex;
  transition: all 0.3s;
}
.category_explain .flex_container a:hover {
  opacity: 0.7;
}

.cart_button.itemlist_in:before, .cart_button.in:before {
  content: "";
  background-image: url("https://www11.easy-myshop.jp/emsrsc/yamadayamanju/res/cart-icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 14px;
  height: 14px;
  margin-right: 4px;
}

.cart_button.in, .cart_button.itemlist_in {
  max-width: initial;
  background-color: #DB352C;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
.cart_button.in span, .cart_button.itemlist_in span {
  font-family: inherit;
}

.related_item_list {
  padding-bottom: 100px;
}

.pankuzu_list_category {
  line-height: normal;
}

.app_content_item_detail {
  padding-top: 40px;
}

.item_explain h1, .item_explain h2, .item_explain h3, .item_explain h4, .item_explain h5, .item_explain h6, .item_explain strong {
  font-weight: bold;
}

.detail_body_area table {
  margin: auto;
}
.detail_body_area table th, .detail_body_area table td {
  border: 1px solid #3e3e3e;
  padding: 10px;
}

.fn_cate_accordion_accordion ul {
  height: auto !important;
}

.detail_body1 .swiper-button-prev:after, .detail_body1 .swiper-rtl .swiper-button-next:after, .detail_body1 .swiper-button-next:after, .detail_body1 .swiper-rtl .swiper-button-prev:after, .detail_body1 .swiper-button-prev:after, .detail_body1 .swiper-rtl .swiper-button-next:after, .detail_body1 .swiper-button-next:after, .detail_body1 .swiper-rtl .swiper-button-prev:after {
  display: none;
}

.item_img_content .swiper-button-next:after, .item_img_content .swiper-rtl .swiper-button-prev:after, .item_img_content .swiper-button-prev:after, .item_img_content .swiper-rtl .swiper-button-next:after {
  display: none;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after, .swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  display: none;
}

.item_contact, .bookmark_area {
  letter-spacing: 0;
}

.pane_body .law_ttl {
  font-size: 20px !important;
}
@media (max-width: 767px) {
  .pane_body .law_ttl {
    font-size: 1.6rem !important;
  }
}

@media (max-width: 767px) {
  .cart_button.in span, .cart_button.itemlist_in span {
    font-size: 1.4rem;
  }
  .logo {
    max-width: unset;
  }
}
@media (min-width: 768px) {
  .item_detail .item_name {
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #dcdcdc;
  }
  .related_item_list .related_item_title, .item_detail .item_explain_title {
    border-bottom: 1px solid #dcdcdc;
  }
}
.label input[type=radio] + .label_icon:after {
  margin: -9px 0 0 -9px;
  width: 18px;
  height: 18px;
}

.item_review {
  background-color: #f8f8f8;
  margin-top: 20px;
}

.review_list > li {
  border-bottom: 1px solid #dcdcdc;
}

.review_graph_bar > span {
  height: 25px;
}

@media (max-width: 767px) {
  .product-description a {
    font-size: inherit;
  }
}

.ordermade_area.layout1 .ordermade_contents {
  background-color: #f8f8f8;
}
.ordermade_area.layout1 .ordermade_contents a {
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .ordermade_area.layout1 .ordermade_contents .ordermade_contents_parent {
    font-size: 1.4rem;
  }
}

.item_explain h2, .item_explain h3, .item_explain h4, .item_explain h5, .item_explain h6, .item_explain strong {
  margin-top: 20px;
  margin-bottom: 10px;
}

.item_explain p {
  margin: 10px 0;
}

@media (max-width: 767px) {
  .item_contact span, .bookmark_area span {
    font-size: 1.4rem;
  }
  .item_detail .item_name {
    font-weight: bold;
    border-bottom: 1px solid #dcdcdc;
  }
  .related_item_list .related_item_title, .item_detail .item_explain_title {
    border-bottom: 1px solid #dcdcdc;
  }
  .pane_body {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .regi_flow0 .regi_title {
    font-size: 1.4rem;
  }
  .regi_flow0 .regi_title span {
    font-size: 1em;
  }
  .mypage .item_detail .item_textinfo_val, .mypage .item_code, .mypage .item_code_val, .mypage .item_maker, .mypage .item_model, .mypage .item_kind_table .item_code_val, .mypage .buy_item_code, .pane_regi .item_detail .item_textinfo_val, .pane_regi .item_code, .pane_regi .item_code_val, .pane_regi .item_maker, .pane_regi .item_model, .pane_regi .item_kind_table .item_code_val, .pane_regi .buy_item_code {
    font-size: 1.6rem;
  }
  .mypage .pane_regi table.grid, .pane_regi .pane_regi table.grid {
    font-size: 1.6rem;
  }
  .mypage .pane_regi table.grid span, .pane_regi .pane_regi table.grid span {
    font-size: inherit;
    font-size: 1.4rem;
  }
  .mypage button, .pane_regi button {
    font-size: 1.6rem;
  }
  .mypage button span, .pane_regi button span {
    font-size: 1.6rem;
  }
  .mypage .buy_welcome_member span, .mypage .member_side_ttl span, .mypage .buy_none_member span, .pane_regi .buy_welcome_member span, .pane_regi .member_side_ttl span, .pane_regi .buy_none_member span {
    font-size: 1.4rem;
  }
  .mypage .buy_member_logout *, .pane_regi .buy_member_logout * {
    font-size: 1.6rem;
  }
  .cart_item_list tfoot td, .item_list_regi tfoot td {
    font-size: 1.4rem;
  }
  .member_info_update_tr, .member_agreement_table {
    font-size: 1.4rem;
  }
  .member_info_update_tr *, .member_agreement_table * {
    font-size: 1.4rem;
  }
  .mypage_credit .app_content {
    font-size: 1.2rem;
  }
  .mypage_credit .app_content * {
    font-size: 1.2rem;
  }
  .common_regi_back_area {
    font-size: 1.4rem;
  }
  .mypage_guide .app_content, .mypage .app_content {
    font-size: 1.4rem;
  }
  .mypage_guide .app_content *, .mypage .app_content * {
    font-size: 1.4rem;
  }
  .cart_button_send *, .regi_payment_list *, .responsive_payment_information *, .grid_regi *, .common_regi_back_area * {
    font-size: 1.2rem;
  }
  .trans_input_slide {
    font-size: 1.4rem;
  }
  .global-menu .header__logo, .header__logo {
    flex-shrink: 0;
  }
  .global-menu .global-inner ul li a p {
    white-space: nowrap;
  }
  .product-description span, .product-description strong {
    font-size: inherit;
  }
  .item_small_info_block span, .item_review span, .item_law_block.item_code span {
    font-size: 1.4rem;
  }
  .item_code {
    font-size: 1.4rem;
  }
  .reviewe_info {
    font-size: 1.4rem;
  }
  .item_explain_val th, .item_explain_val td, .item_explain_val span {
    font-size: 1.2rem;
  }
  .app_content_policy *, .law_page * {
    font-size: 1.4rem;
  }
  .item_catalog .item_name {
    font-size: 1.2rem;
  }
  .contact_name, .contact_mail, .contact_text {
    font-size: 1.4rem;
  }
}

/*# sourceMappingURL=style.css.map */
