:root{
  --font-color:#462604;
  --font-sub-color:#6f4025;
  --main-color:#ff9000;
  --accent-color:#e8792b;
  --sub-color:#fbda8f;
  --bg-color:#fff5d6;
  --medium:500;
  --bold:700;
  --arial:"Arial", sans-serif;
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body{
  color: var(--font-color);
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-feature-settings: "palt";
  font-size: clamp(0.75rem, 0.408rem + 0.66vw, 0.938rem);
  font-weight: 400;
}
ul,ol,li{
  list-style: none;
  max-width: 100%;
}
picture{
  display: block;
  text-align: center;
}
.clearfix {display: block;}
.clearfix:before, .clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/*utils*/
.orange{color: var(--main-color);}
.forange{color: var(--accent-color);}
.zen{
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 500;
}
.arial{
  font-family: var(--arial);
  font-style: italic;
}
.yugo{
  font-family: yu-gothic-pr6n, sans-serif;
  font-weight: 400;
}
a {text-decoration: none;}
img {
  height: auto;
  max-width: 100%
}
.bold{font-weight: var(--bold);}
.emphasis {
  position: relative;
}
.emphasis::before {position: absolute;
  content: "";
  width: .22em;
  height: .22em;
  border-radius: 50%;
  background: var(--accent-color);
  top: -4px;
  left: 50%;
  transform: translate(-50%, 0);
}
.tac{text-align: center;}
.tar{text-align:right;}
.center{
  margin-left: auto;
  margin-right: auto;
}
.text-24{font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);}

/*layout*/
.d-b{display: block;}
.d-ib{display: inline-block;}
.flex{display: flex;}
.fclm{
  display: flex;
  flex-direction: column;
}
.fwrap{
  display: flex;
  flex-wrap: wrap;
}
.inner, .inner-s, .inner-m{
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}
@media (max-width: 767.98px){
  .hide-max-768{display: none;}
  .fclm-max-768 {flex-direction: column;}
}
@media (min-width: 768px){
  .tac-min-768{text-align: center;}
  .flex-min-768{display: flex;}
  .fclm-min-768 {
    display: flex;
    flex-direction: column;
  }
  .fwrap-min-768{
    display: flex;
    flex-wrap: wrap;
  }
  .ord1{order: 1;}
  .ord2{order: 2;}
  .hide-min-768{display: none;}
}
@media (max-width: 1023.98px) {
  .hide-max-1024{display: none;}
}
@media (min-width: 1024px) {
  .flex-min-1024{display: flex;}
  .hide-min-1024 {display: none;}
  .inner-s{max-width: 960px;}
}
@media (max-width: 1279.98px) {
  .hide-max-1280{display: none;}
}
@media (min-width: 1280px){
  .flex-min-1280{display: flex;}
  .hide-min-1280{display: none;}
  .inner-m{max-width:1080px}
  .inner{max-width: 1200px;}
}
/**header**/
.header{
  align-items: center;
  background-color:#fff;
  height:62px;
  position:fixed;
  top:0;
  transition: height .3s ease-in;
  width:100%;
  will-change: transform;
  z-index:500;
}
.header .logo{
  line-height:1;
  margin-left: 5%;
}
.header .logo img{display:block}
.gnav a{
  color: var(--font-color);
  display: block;
  transition: .3s ease;
}
.gnav a:hover{opacity: .65;}
.nav-contact, .nav-request{
  color: #fff;
  font-size: .688rem;
}
.nav-contact{background:#fa9d25;}
.nav-request{background:var(--font-sub-color);}
@media (max-width: 1024.98px) {
  .header .logo{
    margin-right: auto;
    width: 102px;
  }
  .nav-contact, .nav-request{
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 62px;
    justify-content: space-between;
    letter-spacing: -.2px;
    line-height: 1.3;
    text-align: center;
    width: 66px;
  }
  .nav-contact img, .nav-request img{margin-top: 10px;}
  .nav-contact span{padding-bottom: 10px;}
  .nav-request span{padding-bottom: 5px;}
  .nav-toggle{
    border-radius:50%;
    cursor:pointer;
    height:62px;
    position:relative;
    width:62px;
    z-index:501;
  }
  .nav-toggle span{
    background:var(--font-color);
    border-radius:2px;
    display:block;
    height:3px;
    left:12px;
    position:absolute;
    -webkit-transition:.35s ease-in-out;
    -moz-transition:.35s ease-in-out;
    transition:.35s ease-in-out;
    width:40px;
  }
  .nav-toggle span:nth-child(1){top:18px}
  .nav-toggle span:nth-child(2){top:28px}
  .nav-toggle span:nth-child(3){top:38px}
  .nav-toggle.is-open span:nth-child(1){
    top:28px;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
  }
  .nav-toggle.is-open span:nth-child(2){opacity:0}
  .nav-toggle.is-open span:nth-child(3){
    top:28px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
  }
  .gnav{
    background:#fff;
    height: 100dvh;
    padding:20px ;
    position:fixed;
    right:-300px;
    top:62px;
    transition: right 0.3s ease;
    width:300px;
    z-index: 1000;
  }
  .gnav.is-open{
    right:0;
    overflow:scroll;
    -ms-overflow-style:none;
    scrollbar-width:none;
    white-space:nowrap;
  }
  .gnav.is-open .inner::-webkit-scrollbar{display:none}
  .nav-close{margin-top:50px;}
  .nav-close:hover{opacity:.7}
  .menu-parent.single{
    background: url(img/common/ico-arrow_brown.svg) no-repeat 100% 50%;
  }
  .menu-parent.single::before,  .menu-parent.single::after {content: inherit;}
  .menu-parent+.menu-parent{border-top: .5px dashed;}
  .menu-parent{
    background: none;
    font-size: .938rem;
    padding: 14px 0;
    position: relative;
    transition: 1s;
  }
  .menu-parent::before,  .menu-parent::after {
    content: "";
    position: absolute;
  }
  .menu-parent::before {
    background:var(--font-color);
    border-radius: 5px;
    height: 1px;
    right: 0;
    top: 1.375rem;
    width: 13px;
  }
  .menu-parent::after{
    background:var(--font-color);
    border-radius: 5px;
    height: 13px;
    opacity: 1;
    right: 6px;
    top: 1rem;
    transition: .3s;
    width:1px;
  }
  .menu-parent.is-open::after{opacity: 0;}
  .gnav-child {
    margin-left: 1em;
    opacity: 0;
    transition: all .3s ease-in;
    visibility: hidden;
  }
  .is-open>.gnav-child{
    margin-top: 14px;
    opacity: 1;
    visibility: visible;
  }
  .menu-child{
    background: url(img/common/ico-arrow_brown_bold.svg) no-repeat 0 50%;
    line-height: 0;
    opacity: 0;
    padding-left: 16px;
    padding-right: 16px;
    transition: all .3s ease-in;
    visibility: hidden;
  }
  .is-open>.gnav-child .menu-child{
    line-height: 1;
    margin-top: 4px;
    opacity: 1;
    visibility: visible;
  }
  .is-open>.gnav-child .menu-child a{
    padding-bottom: 18px;
    padding-top: 18px;
  }
}
@media (min-width: 1024px){
  .header {height: 124px;}
  .header.shrink{height: 80px;}
  .header-pc{margin: auto;}
  .header .logo{width: 172px;}
  .header.shrink .logo img{width: 102px;}
  .gnav {
    background:rgba(255,255,255,.9);
    border-radius: 40px;
    display: flex;
    justify-content: center;
    padding: 0 clamp(0.875rem, -3.125rem + 6.25vw, 1.875rem);
    width: 100%;
  }
  .menu-parent {
    font-size: clamp(1.125rem, 1.073rem + 0.22vw, 1.25rem);
    position: relative;
    padding: 22px clamp(0.875rem, -3.125rem + 6.25vw, 1.875rem) 27px;
  }
  .shrink .menu-parent{padding: 2px clamp(0.875rem, -3.125rem + 6.25vw, 1.875rem) 16px;}
  .gnav-child {
    background:rgba(255,255,255,.8);
    border-radius: 10px;
    left: 50%;
    top: 100%;
    -webkit-transform: scaleY(0) translateX(-50%);
    transform: scaleY(0) translateX(-50%);
    transform-origin: center top;
    transition: all .3s;
    padding: 16px 0;
    position: absolute;
    white-space: nowrap;
    min-width: max-content;
  }
  .gnav-child a {
    font-size: .875rem;
    display: block;
    padding: 16px 30px;
  }
  .menu-child{font-size: 1.4rem;}
  .menu-parent:hover .gnav-child {
    -webkit-transform: scaleY(1) translateX(-50%);
    transform: scaleY(1) translateX(-50%);
  }
  .menu-parent.toggle{
    background: url(img/common/ico-toggle.svg) 50% 79% no-repeat;
    background-size: 12px;
  }
  .shrink  .menu-parent.toggle{background-position: 50% 90%;}
  .nav-contact, .nav-request{
    align-items: center;
    display: flex;
    font-size: 1.5rem;
    max-width: 76px;
    padding: 20px;
    writing-mode: vertical-rl;
  }
  .header-nav{
    flex-direction: column;
    gap: clamp(0.625rem, -4.375rem + 7.81vw, 1.875rem);
    max-width: 4.5%;
    position: fixed;
    right: 0;
    top: 16%;
    z-index: 500;
  }
  .header-nav a:hover{opacity: .7;}
  .nav-contact img, .nav-request img{margin-bottom: 16px;}
}
/*footer*/
.footer{position: relative;}
.footer-btm {padding: clamp(2.75rem, 2.336rem + 1.77vw, 3.75rem) 0 clamp(3.125rem, 3.021rem + 0.44vw, 3.375rem);}
.footer-btm .contact-btn{margin-bottom:clamp(0.875rem, 0.202rem + 2.87vw, 2.5rem);}
.contact-box .txt{font-weight: var(--medium);}
@media screen and (max-width: 1023.98px){
  .footer{text-align:center}
  .footer .logo img{width: 152px;}
  .footer-btm .contact-box{margin-top: 2.375rem;}
}
@media screen and (min-width: 1024px){
  .footer-top{border-bottom: 1px dashed;}
  .fnav{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(55px, 5fr));
    gap:2.5rem 7.5rem;
    padding: 0 1rem 4.125rem 3.75rem;
  }
  .fnav a{color: var(--font-color);}
  .fnav a:hover{text-decoration: underline;}
  .fnav-parent{white-space: nowrap;}
  .fnav-parent ul{margin-top: 1rem;}
  .fnav-child{margin-top: .625rem;}
  .fnav-child::before{content:"- "}
  .footer-btm{justify-content: center;}
  .footer-btm .tel-box{
    border-left: 1px solid;
    order: 2;
    padding-left: 5%;
  }
  .footer-btm .contact-box{
    order: 1;
    padding-right: 5%;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1279.98px){
  .footer-btm .tel-box, .footer-btm .contact-box {width: 50%;}
}
@media screen and (min-width: 1280px){
  .footer-btm .tel-box, .footer-btm .contact-box {width: 45%;}
}
@media screen and (min-width: 1024px) and (max-width: 1799.98px) {
  .footer-top{display: flex;}
  .footer .logo{width: 180px;}
  .fnav{width: calc(100% - 240px);}
}
@media screen and (min-width: 1800px) {
  .fnav{padding: 0 3.75rem 4.125rem;}
  .footer .logo{
    left: 5%;
    position: absolute;
  }
}
/**internal link**/
.pagetop{
  background: url(img/common/ico-arrow_white.svg) no-repeat var(--main-color) 50% 50%;
  border-radius: 50%;
  bottom: 5%;
  height: 3.125rem;
  position: fixed;
  right: 2.5%;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  width: 3.125rem;
}
.pagetop:hover{opacity: .7;}
#area, #pagetop {scroll-margin-top: 62px;}
@media screen and (min-width: 1024px){
  .pagetop{right: 5%;}
  #area, #pagetop {scroll-margin-top: 124px;}
}

/*Component*/
/**link**/
.link{
  background:url(img/common/ico-arrow_orange.svg) 0 50% no-repeat;
  background-size: 21px;
  color: var(--font-color);
  display: inline-block;
  font-weight: var(--medium);
  line-height: 21px;
  padding-left: clamp(1.875rem, 1.616rem + 1.1vw, 2.5rem);
  transition: .3s;
}
.link:hover{text-decoration: underline;}

.link-txt{
  color: var(--font-color);
  text-decoration: underline;
}
.link-txt:hover{text-decoration: none;}

.link-pdf {
  align-items: center;
  border: 1px solid #7C664e;
  border-radius: 6px;
  color: var(--font-color);
  display:flex;
  gap: clamp(0.5rem, 0.189rem + 1.33vw, 1.25rem);
  line-height: 0;
  justify-content: center;
  max-width: 100%;
  padding: clamp(0.375rem, 0.142rem + 0.99vw, 0.938rem);
  text-align: center;
  transition: .3s;
  width: 315px;
}
.link-pdf:hover{background: var(--bg-color);}
@media screen and (max-width: 767.98px){
  .link-pdf {width: 90%;}
}
/**btn**/
.btn {
  align-items: center;
  background: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
  color: #fff;
  display: inline-flex;
  font-size: clamp(0.875rem, 0.616rem + 1.1vw, 1.5rem);
  font-weight: var(--medium);
  height: clamp(2.25rem, 1.318rem + 3.98vw, 4.5rem);
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 90%;
  padding-bottom: clamp(0.063rem, 0.037rem + 0.11vw, 0.125rem);
  position: relative;
  transition: .3s;
  width: 400px;
}
.btn::before {
  background: url(img/common/ico-arrow.svg) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
  right: clamp(0.313rem, 0.132rem + 0.77vw, 0.75rem);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
}
.btn:hover{
  background: #fff;
  color:var(--main-color);
}

.btn_white {
  align-items: center;
  background: #fff;
  border: 1px solid #fff;
  border-radius: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
  color: var(--main-color);
  display: inline-flex;
  font-size: clamp(0.875rem, 0.616rem + 1.1vw, 1.5rem);
  font-weight: var(--medium);
  height: clamp(2.25rem, 1.318rem + 3.98vw, 4.5rem);
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 90%;
  padding-bottom: clamp(0.063rem, 0.037rem + 0.11vw, 0.125rem);
  position: relative;
  transition: .3s;
  width: 400px;
}
.btn_white::before {
  background: url(img/common/ico-arrow_orange.svg) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
  right: clamp(0.313rem, 0.132rem + 0.77vw, 0.75rem);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: box-shadow .5s;
  width: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
}
.btn_white:hover{
  background: var(--main-color);
  color: #fff;
}

.contact-btn{
  align-items: center;
  background: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
  color: #fff;
  display: flex;
  font-size: clamp(0.875rem, 0.667rem + 1.04vw, 1.5rem);
  font-weight: var(--medium);
  height: clamp(2.25rem, 1.318rem + 3.98vw, 4.5rem);
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 90%;
  padding-bottom: clamp(0.063rem, 0.037rem + 0.11vw, 0.125rem);
  padding-left: 10px;
  position: relative;
  transition: .3s;
  width: 476px;
}
.contact-btn::before{
  background: url(img/common/ico-mail_white.svg) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(1.625rem, 1.055rem + 2.43vw, 3rem);
  left: clamp(0.313rem, 0.132rem + 0.77vw, 0.75rem);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: clamp(1.625rem, 1.055rem + 2.43vw, 3rem);
}
.contact-btn:hover {
  background:#fff;
  color:var(--main-color);
}
@media screen and (min-width: 768px){
  .btn, .contact-btn {max-width: 100%;}
}

/*include*/
/**recruit**/
.recruit-module-wrap{color: #fff;}
.recruit-module{
  background-image: url(img/recruit/bg-recruit02.webp);
  background-position: 0 -180px;
  background-size: cover;
}
.recruit-lead {
  background: #26497a;
  font-size: clamp(1.125rem, 0.762rem + 1.55vw, 2rem);
  font-weight: var(--medium);
  padding: clamp(0.75rem, 0.387rem + 1.55vw, 1.625rem);
}
.recruit-inner{padding: clamp(1.25rem, 0.939rem + 1.33vw, 2rem) 0 40px 12%;}
.recruit-position{
  font-size: clamp(3.25rem, 2.11rem + 4.86vw, 6rem);
  font-weight: var(--medium);
  letter-spacing: .4em;
  margin-left: .4em;
}
.recruit-status{
  border: 2px solid;
  border-radius: 41px;
  display: inline-block;
  font-size: clamp(1.5rem, -1.125rem + 5.47vw, 3.25rem);
  font-weight: var(--medium);
  letter-spacing: .3em;
  margin-top: 1.375rem;
  max-width: 90%;
  padding: 0 .5em 4px .8em;
}
.recruit-message{
  line-height: 2.6;
  margin-top: 1.125rem;
}
.recruit-btn{margin-top: 34px;}
@media screen and (max-width: 1550px){
  .recruit-module {background-position: 23% 0;}
}

/**member-link**/
.sec-member-link {
  background: var(--main-color);
  color: #fff;
  margin-bottom: clamp(4.625rem, 1.569rem + 13.04vw, 12rem);
}
sec-member-link .flex{justify-content: space-around;}
.member-link-wrap{
  background: url(img/common/bg-member.png) no-repeat 100% 50%;
  background-size: contain;
  padding: clamp(2.25rem, 0.334rem + 8.18vw, 6.875rem) 0 clamp(2.25rem, 0.075rem + 9.28vw, 7.5rem);
}
.member-link_ttl{
  font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);
  font-weight: var(--medium);
  margin-bottom: clamp(0.875rem, 0.305rem + 2.43vw, 2.25rem);
}
.member-link-wrap .btn_white{margin-top: clamp(1.5rem, -0.08rem + 6.74vw, 5.313rem);}
.member-container{margin-bottom: clamp(1.5rem, 0.05rem + 6.19vw, 5rem);}
.member-last-lead{margin-top: clamp(3rem, 2.171rem + 3.54vw, 5rem);}
@media screen and (min-width: 1280px){
  .member-inner{margin-right: 5%;}
}

/**recruit-link**/
.sec-recruit-link{padding-bottom: clamp(2.375rem, -0.267rem + 11.27vw, 8.75rem);}
.sec-recruit-link .lead-area{margin-bottom: clamp(1.75rem, -0.218rem + 8.4vw, 6.5rem);}
.sec-recruit-link .slider{margin-bottom: clamp(2.5rem, 0.428rem + 8.84vw, 7.5rem);}

/**bnr**/
.bnr-area{
  align-items: center;
  gap:20px clamp(0.625rem, -0.313rem + 1.95vw, 1.25rem);
  justify-content: center;
  margin: 0 5%;
}
.bnr-area a:hover{opacity: .7;}
.recruit-module-wrap+.bnr-area{margin-top: clamp(2.5rem, -0.09rem + 11.05vw, 8.75rem);}
.bnr-area+.footer{margin-top: clamp(1.75rem, -5.242rem + 29.83vw, 18.625rem);}


/*animation*/
.zoom{
  display: block;
  overflow: hidden;
}
.zoom img{transition: .3s;}

/**slider**/
.slick-slider{font-size: 0;}
.slide{margin-right: clamp(1.875rem, 1.098rem + 3.31vw, 3.75rem);}
.slide:nth-of-type(odd){margin-top: clamp(1.875rem, 1.098rem + 3.31vw, 3.75rem);}

/**pararax**/
.para-wrap {
  height: clamp(11.25rem, -4.807rem + 68.51vw, 50rem);
  overflow: hidden;
  position: relative;
  z-index: -2;
}
.para {
  height: clamp(11.25rem, -4.807rem + 68.51vw, 50rem);
  transition: transform 0.1s linear;
  object-fit: cover;
  will-change: transform;
  width: 100%;
}
.para-wrap+.bg{margin-top: -80px;}
.bg{position: relative;}
.bg::before {
  clip-path: ellipse(100% clamp(26.25rem, -45.188rem + 148.83vw, 73.875rem) at 50% 100%);
  content: "";
  height: clamp(26.25rem, -45.188rem + 148.83vw, 73.875rem);
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.bgshort {overflow: hidden;}
.bgshort::after {
  background: linear-gradient(0, #fff, rgba(255, 255, 255, 0));
  bottom: 0;
  content: "";
  height: 100px;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}
.pattern-white{padding-top: clamp(3.375rem, -1.5rem + 10.16vw, 6.625rem);}
.pattern-white::before{background:#fff;}
.pattern-orange {padding-top: clamp(3.375rem, -2.438rem + 12.11vw, 7.25rem);}
.pattern-orange::before {background: linear-gradient(to bottom, var(--bg-color), #fff);}
.note {
  background-color: var(--bg-color);
  background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, var(--bg-color) 0%, var(--bg-color) 100%), repeating-linear-gradient(to bottom, transparent, transparent calc(100% - 1px), var(--font-sub-color) calc(100% - 1px), var(--font-sub-color) 100%);
  background-size: 6px 100%, 100% 2em;
  line-height: 2;
}
@media screen and (min-width: 768px){
  .para-wrap+.bg{margin-top: -160px;}
}

/**loader**/
.loader-wrapper {
  align-items: center;
  background: #fff;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}
.loader {
  -webkit-animation: load3 1.8s infinite linear;
  animation: load3 1.8s infinite linear;
  background: var(--main-color);
  background: -moz-linear-gradient(left, var(--main-color) 10%, rgba(255, 255, 255, 0) 42%);
  background: -webkit-linear-gradient(left, var(--main-color) 10%, rgba(255, 255, 255, 0) 42%);
  background: -o-linear-gradient(left, var(--main-color) 10%, rgba(255, 255, 255, 0) 42%);
  background: -ms-linear-gradient(left, var(--main-color) 10%, rgba(255, 255, 255, 0) 42%);
  background: linear-gradient(to right, var(--main-color) 10%, rgba(255, 255, 255, 0) 42%);
  border-radius: 50%;
  height: 5em;
  position: relative;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  width: 5em;
}
.loader:before {
  background: var(--main-color);
  border-radius: 100% 0 0 0;
  content: '';
  height: 50%;
  left: 0;
  position: absolute;
  top: 0;
  width: 50%;
}
.loader:after {
  background: #fff;
  border-radius: 50%;
  bottom: 0;
  content: '';
  height: 75%;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 75%;
}
@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*Modules*/
/**ttl**/
.ttl-head{
  background: linear-gradient(to right,var(--bg-color),#FFFAEE);
  margin-top: 63px;
  width: 100%;
}
.ttl-head+section{margin-top: clamp(3.75rem, 2.325rem + 6.08vw, 7.188rem);}
.ttl-head .inner {
  padding: clamp(1.5rem, -1.038rem + 10.83vw, 7.625rem) 0;
  position: relative;
}
.ttl-head .inner::after {
  background: url(img/common/bg-hinata.png) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(6.875rem, 0.556rem + 26.96vw, 22.125rem);
  position: absolute;
  right: 0;
  top: 0;
  width: clamp(6.25rem, 0.319rem + 25.3vw, 20.563rem);
}
.ttl-head h1{
  font-size: clamp(1.375rem, 1.012rem + 1.55vw, 2.25rem);
  font-weight: var(--bold);
  margin-bottom: clamp(0.25rem, 0.146rem + 0.44vw, 0.5rem);
  position: relative;
  z-index: 1;
}
.ttl-head p{
  position: relative;
  z-index: 1;
}
.lead-area{line-height: 1.7;}
.lead-area .ttl{
  font-size: clamp(1.375rem, 1.012rem + 1.55vw, 2.25rem);
  font-weight: var(--medium);
  text-align: center;
}
.lead-area .ttl-en{
  background: url(img/common/bg-ttl.png) no-repeat 50% 0;
  color: var(--main-color);
  font-family: var(--arial);
  font-size: clamp(0.75rem, 0.439rem + 1.33vw, 1.5rem);
  font-style: italic;
  margin-top: clamp(0.438rem, 0.101rem + 1.44vw, 1.25rem);
  padding-top: clamp(0.625rem, 0.211rem + 1.77vw, 1.625rem);
  text-align: center;
}
.lead-area .lead{
  font-family: "zen-maru-gothic", sans-serif;
  font-size: clamp(1.25rem, 1.146rem + 0.44vw, 1.5rem);
  font-weight: var(--medium);
  margin-top: clamp(1.75rem, 0.74rem + 4.31vw, 4.188rem);
  text-align: center;
}
.lead-area .txt{margin-top: clamp(0.625rem, 0.055rem + 2.43vw, 2rem);}
.lead-area .ttl-en+.txt{margin-top: clamp(2rem, 1.016rem + 4.2vw, 4.375rem);}
.lead{
  font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);
  line-height: 2;
}
.txt{line-height: 2;}
@media screen and (max-width: 767.988px){
  .lead-area .ttl-en{background-size: 35px;}
}
@media screen and (min-width: 1024px) {
  .ttl-head {margin-top: 124px;}
}

/**flow**/
.btn-application{background: var(--font-sub-color);}
.flow-col-wrap{
  margin-bottom: 80px;
  position: relative;
}
.flow-col-wrap::before{
  background: var(--sub-color);
  content: "";
  height: 100%;
  left: 40px;
  position: absolute;
  top: 40px;
  width: 72px;
  z-index: -1;
}
.flow-col-wrap::after {
  background: var(--sub-color);
  bottom: -90px;
  clip-path: polygon(0 20%, 100% 20%, 50% 80%);
  content: "";
  height: 66px;
  left: 21px;
  position: absolute;
  width: 108px;
  z-index: -1;
}
.flow-col-item{
  background: #fff;
  border: 4px solid var(--sub-color);
  border-radius: 20px;
  padding: clamp(1rem, 0.534rem + 1.99vw, 2.125rem) clamp(1.25rem, 0.836rem + 1.77vw, 2.25rem) clamp(1.5rem, 1.293rem + 0.88vw, 2rem);
}
.flow-col-item+.flow-col-item {margin-top: clamp(1.375rem, 0.909rem + 1.99vw, 2.5rem);}
.flow-col_step{
  color: var(--main-color);
  font-family: var(--arial);
  font-size: clamp(0.875rem, 0.72rem + 0.66vw, 1.25rem);
  font-style: italic;
  margin-bottom: clamp(0rem, -0.207rem + 0.88vw, 0.5rem);
}
.flow-col_ttl{font-size: clamp(1.25rem, 1.146rem + 0.44vw, 1.5rem);}
.flow-col_txt{margin-top:clamp(0.5rem, 0.293rem + 0.88vw, 1rem);}

.flow-row-wrap{
  counter-reset:cnt-flow;
  gap: clamp(2.5rem, 1.982rem + 2.21vw, 3.75rem);
}
.flow-row-item{
  background: #fff;
  border: 3px solid var(--main-color);
  border-radius: 20px;
  position: relative;
}
.flow-row-item::before {
  background: var(--main-color);
  border-radius: 50%;
  color: #fff;
  counter-increment: cnt-flow;
  content: counter(cnt-flow)"";
  font-family: var(--arial);
  font-size: clamp(1.75rem, 0.921rem + 3.54vw, 3.75rem);
  font-style: italic;
  font-weight: var(--bold);
  height: clamp(3.5rem, 2.309rem + 5.08vw, 6.375rem);
  left: 50%;
  line-height: clamp(3.5rem, 2.309rem + 5.08vw, 6.375rem);
  position: absolute;
  text-align: center;
  top: -1em;
  transform: translateX(-50%);
  width: clamp(3.5rem, 2.309rem + 5.08vw, 6.375rem);
}
.flow-row_ttl{
  font-size: 24px;
  font-weight: var(--medium);
  margin-bottom: 10px;
}
@media screen and (min-width: 768px){
  .flow-row-item+.flow-row-item::after {
    background: url(img/common/ico-flow-arrow.svg) no-repeat;
    background-size: contain;
    content: "";
    height: 24px;
    left: calc((clamp(2.5rem, 1.982rem + 2.21vw, 3.75rem) / -2) - 7px);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
  }
}

/***tag***/
.tag_dash {
  background: url(img/common/line-double.gif) repeat-x 100% 100%;
  display: inline-block;
}
/***member***/
.member-wrap+.member-wrap{margin-top: clamp(3.25rem, 2.68rem + 2.43vw, 4.625rem);}
.member-wrap+.member-card-wrap{margin-top: clamp(3.75rem, 3.232rem + 2.21vw, 5rem);}
.member-card{margin-top: clamp(0.75rem, 0.646rem + 0.44vw, 1rem);}
.member-left{
  position: relative;
  z-index: 1;
}
.member-img{
  margin-bottom: clamp(0.5rem, -0.225rem + 3.09vw, 2.25rem);
  position: relative;
}
.member-img img{width: 100%;}
.member-img-data{
  background: #fff;
  border-radius: 0 20px 0 0;
  bottom: 0;
  left: 0;
  line-height: 1.7;
  padding: clamp(0.75rem, 1.56vw, 1.25rem) 10px .625rem;
  position: absolute;
  text-align: center;
  width: clamp(8.75rem, 1.25rem + 15.63vw, 13.75rem);
}
.member-name{font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);}
.member-prof{margin-top: clamp(0.5rem, 0.293rem + 0.88vw, 1rem);}
.member-right{
  background: var(--bg-color);
  border-radius: 20px;
  padding: clamp(1.5rem, 1.086rem + 1.77vw, 2.5rem);
  position: relative;
}
.member-right::before {
  background: url(img/common/bg-circle02.png) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(3.875rem, 3.098rem + 3.31vw, 5.75rem);
  position: absolute;
  right: 2%;
  top: -40px;
  width: clamp(4.625rem, 3.718rem + 3.87vw, 6.813rem);
}
.member-right dd+dt {
  background: url(img/common/line.svg) no-repeat 50% 0 ;
  background-size: 51px 6px;
  padding-top: clamp(1.5rem, 0.982rem + 2.21vw, 2.75rem);
}
.member-right dd {margin: .875rem 0 clamp(1.625rem, 1.159rem + 1.99vw, 2.75rem);}
@media screen and (max-width: 769.98px){
  .member-right {
    margin-top: 30px;
    width: 100%;
  }
}
@media screen and (min-width: 768px){
  .member-card{
    display: flex;
    gap: 40px;
  }
  .member-left{width: 525px;}
  .member-right{width: 570px;}
  .member-right::before {right: -5%;}
}

/***faq***/
.faq-list dt{
  border-bottom: 1px dashed;
  font-size: clamp(0.75rem, 0.439rem + 1.33vw, 1.5rem);
  line-height: 1.7;
  padding:clamp(0.625rem, 0.47rem + 0.66vw, 1rem) clamp(1.25rem, 0.214rem + 4.42vw, 3.75rem) clamp(0.625rem, 0.47rem + 0.66vw, 1rem) clamp(1.625rem, -0.032rem + 7.07vw, 5.625rem);
  position: relative;
}
.faq-list dt:hover {opacity: .7;}
.faq-list dd {
  line-height: 0;
  opacity: 0;
  padding: 0 clamp(1.25rem, 0.214rem + 4.42vw, 3.75rem) 0 clamp(1.625rem, -0.032rem + 7.07vw, 5.625rem);
  position: relative;
  transition: .3s ease-in;
}
.faq-list dt::before {
  background: url(img/common/ico-q.svg) no-repeat;
  height: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
  top: clamp(0.7rem, 0.659rem + 0.18vw, 0.8rem);
}
.faq-list dd::before {
  background: url(img/common/ico-a.svg) no-repeat;
  height: 0;
  opacity: 0;
  top: 0;
  transition: .3s ease-in;
}
.faq-list dt.is-open~dd::before {
  height: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
  opacity: 1;
  top: clamp(0.625rem, 0.47rem + 0.66vw, 1rem);
}
.faq-list dt::before,.faq-list dd::before {
  background-size: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
  content: "";
  left: clamp(0rem, -0.518rem + 2.21vw, 1.25rem);
  position: absolute;
  width: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
}
.faq-list dt::after {
  background: url(img/common/ico-toggle.svg) no-repeat;
  content: "";
  height: 10px;
  right: clamp(0rem, -0.518rem + 2.21vw, 1.25rem);
  position: absolute;
  top: clamp(1.1rem, 0.686rem + 1.77vw, 2.1rem);
  width: 17px;
}
.faq-list dt.is-open::after {transform: rotate(-180deg);}
.faq-list dd+dt{margin-top: clamp(1rem, -0.243rem + 5.3vw, 4rem);}
.faq-list dt.is-open~dd{
  line-height: 2;
  opacity: 1;
  margin-bottom: clamp(0rem, -6rem + 12.5vw, 4rem);
  padding: clamp(0.625rem, 0.47rem + 0.66vw, 1rem) clamp(1.25rem, 0.214rem + 4.42vw, 3.75rem) clamp(0.625rem, 0.47rem + 0.66vw, 1rem) clamp(1.625rem, -0.032rem + 7.07vw, 5.625rem);
}
.faq-list div{margin-top: clamp(0.625rem, 0.262rem + 1.55vw, 1.5rem);}
.toggle{cursor: pointer;}

/***pill***/
.pill-item{
  align-items: center;
  display: flex;
  gap: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
}
.pill_ttl{
  align-items: center;
  background: url(img/common/bg-circle.png) no-repeat;
  background-size: contain;
  color: var(--accent-color);
  display: flex;
  flex: none;
  font-size: clamp(0.938rem, 0.394rem + 2.32vw, 2.25rem);
  height: clamp(7.125rem, 3.292rem + 16.35vw, 16.375rem);
  justify-content: center;
  width: clamp(7.125rem, 3.292rem + 16.35vw, 16.375rem);
}
.pill-item+.pill-item {margin-top: clamp(1.125rem, 0.555rem + 2.43vw, 2.5rem);}

/***voice***/
.voice-item{
  background: var(--bg-color);
  border-radius: 20px;
  padding: 20px;
}
.voice-item-inner{
  background: #fff;
  border-radius: 20px;
  padding: clamp(1.625rem, 0.227rem + 5.97vw, 5rem) clamp(1.25rem, 0.732rem + 2.21vw, 2.5rem) clamp(0.875rem, -0.523rem + 5.97vw, 4.25rem);
}
.voice_ttl{
  color: var(--accent-color);
  font-size: clamp(0.938rem, 0.394rem + 2.32vw, 2.25rem);
  font-weight: var(--medium);
  margin-bottom: .625rem;
}
.voice_subtxt{
  font-weight: var(--medium);
  margin-bottom: clamp(0.938rem, 0.445rem + 2.1vw, 2.125rem);
}
@media screen and (max-width: 767.98px){
  .voice_img{
    margin-top: 20px;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .voice-item-inner {
    display: flex;
    gap: 50px;
  }
  .voice-item-txt{
    flex:none;
    width: 73%;
  }
}

/**box**/
.label-on{position: relative;}
.label-on_ttl{
  background: #fff;
  font-weight: var(--medium);
  left: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
  max-width: calc(100% - (clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem) * 2));
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}

/**table**/
table{
  border-collapse:collapse;
  width: 100%;
}
.table{border: 1px solid var(--font-color);}
.table th{
  background: #f2efea;
  border: 1px solid var(--font-color);
  font-weight: var(--bold);
  padding: clamp(0.625rem, -0.998rem + 3.44vw, 1.75rem);
  text-align: center;
}
.table td{
  background: #fff;
  border: 1px solid var(--font-color);
  font-weight: var(--medium);
  line-height: 2;
  padding: clamp(0.625rem, -0.998rem + 3.44vw, 1.75rem);
}

/**list**/
.list-num-wrap{
  background: var(--main-color);
  border-radius: 30px;
  padding: clamp(1.25rem, 0.732rem + 2.21vw, 2.5rem);
}
.list-num-wrap .ttl{
  color: #fff;
  font-size: clamp(1.25rem, 0.836rem + 1.77vw, 2.25rem);
  margin-bottom: clamp(1.25rem, 0.732rem + 2.21vw, 2.5rem);
  text-align: center;
}
.list-num{
  background: #fff;
  border:2px solid #fff;
  border-right: none;
  border-radius: 30px;
  counter-reset: cnt;
}
.list-num li{display: flex;}
.list-num li:first-of-type::after {counter-set: cnt 1;}
.list-num li:first-of-type .list-num-cnt{border-radius:30px 0 0 0}
.list-num li:last-of-type .list-num-cnt{border-radius:0 0 0 30px}
.list-num .list-num-cnt {
  background: var(--main-color);
  flex:1;
  position: relative;
  width: clamp(3.125rem, 2.555rem + 2.43vw, 4.5rem);
}
.list-num li+li .list-num-cnt{border-top: 4px solid #fff;}
.list-num .list-num-cnt:after {
  background: #fff;
  border-radius: 50%;
  color: var(--main-color);
  content: counter(cnt);
  counter-increment: cnt;
  font-size: clamp(1rem, 0.482rem + 2.21vw, 2.25rem);
  font-weight: var(--medium);
  height: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
  line-height: calc(clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem) - .1em);
  left: 50%;
  position: absolute;
  text-align: center;
  top: 48%;
  transform: translate(-50%, -50%);
  width: clamp(1.313rem, 0.536rem + 3.31vw, 3.188rem);
}
.list-num .list-num-txt{
  padding: clamp(1.25rem, 0.732rem + 2.21vw, 2.5rem);
  width: calc(100% - clamp(3.125rem, 2.555rem + 2.43vw, 4.5rem));
}
.list-num li+li .list-num-txt{
  border-top: 4px solid var(--main-color);
}
.list-lead{
  color: var(--accent-color);
  font-size: clamp(0.875rem, 0.616rem + 1.1vw, 1.5rem);
  font-weight: var(--medium);
  margin-bottom: clamp(0.5rem, 0.241rem + 1.1vw, 1.125rem);
}

/**timetable**/
.timetable-container{
  gap: 5%;
  position: relative;
}
.timetable-wrap {
  position: relative;
  width: 65%;
}
.timetable_time {
  font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);
  font-weight: var(--medium);
  padding-right: clamp(1.25rem, 0.603rem + 2.76vw, 2.813rem);
  position: relative;
  text-align: right;
  vertical-align: text-top;
  white-space: nowrap;
}
.timetable_time::before {
  background: var(--sub-color);
  content: "";
  height: 100%;
  left: 100%;
  position: absolute;
  top: clamp(0.188rem, 0.006rem + 0.77vw, 0.625rem);
  width: 3px;
}
.timetable_time.last::before {content: none;}
.timetable_ttl {
  font-size: clamp(1rem, 0.586rem + 1.77vw, 2rem);
  font-weight: var(--medium);
  padding-left: clamp(1.25rem, 0.603rem + 2.76vw, 2.813rem);
  position:relative;
  text-align: left;
  vertical-align: text-top;
}
.timetable_ttl::before {
  background: url(img/common/ico-step.svg) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(1.25rem, 0.991rem + 1.1vw, 1.875rem);
  left: calc(clamp(1.25rem, 0.991rem + 1.1vw, 1.875rem) / -2);
  position: absolute;
  top: clamp(0.188rem, 0.006rem + 0.77vw, 0.625rem);
  width: clamp(1.25rem, 0.991rem + 1.1vw, 1.875rem);
}
.timetable_txt{padding: clamp(0.5rem, 0.293rem + 0.88vw, 1rem) 0 clamp(2rem, 0.912rem + 4.64vw, 4.625rem) clamp(1.25rem, 0.603rem + 2.76vw, 2.813rem);}

/**tel-box**/
.tel-item{
  align-items: center;
  display: flex;
  height: clamp(2.25rem, 1.991rem + 1.1vw, 2.875rem);
  justify-content: center;
}
.tel-item+.tel-item{margin-top: 1.625rem;}
.tel-add{
  border: 2px solid;
  border-radius: 17px;
  font-size: clamp(0.75rem, 0.543rem + 0.88vw, 1.25rem);
  font-weight: var(--medium);
  margin-top: 2px;
  margin-right: clamp(1.25rem, 0.732rem + 2.21vw, 2.5rem);
  padding: clamp(0.25rem, 0.224rem + 0.11vw, 0.313rem) 0 clamp(0.313rem, 0.26rem + 0.22vw, 0.438rem);
  line-height: 1;
  text-align: center;
  width: clamp(5.313rem, 4.666rem + 2.76vw, 6.875rem);
}
.tel-add::first-letter{margin-right:1rem;}
.tel-num{
  font-size: clamp(2.25rem, 1.991rem + 1.1vw, 2.875rem);
  font-weight: var(--medium);
  white-space: nowrap;
}
.tel-hours{margin-top: clamp(0.875rem, 0.564rem + 1.33vw, 1.625rem);}

/**pagination**/
.pagination{
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin-top: clamp(3.75rem, 2.196rem + 6.63vw, 7.5rem);
}
.page-numbers{
  border: 1px solid var(--main-color);
  padding: 2px 7px 5px;
}
span.page-numbers{
  background: var(--main-color);
  color: #fff;
}
a.page-numbers{
  color: var(--main-color);
  text-decoration: underline;
}

/**card**/
/***map***/
.map-card{
  margin-bottom: clamp(1.438rem, -0.039rem + 6.3vw, 5rem);
  text-align: center;
}
.map-card_ttl{
  font-size: 1.25rem;
  font-weight: var(--bold);
  flex-grow: 1;
}
.map-card_img {
  flex-grow: 3;
  margin-top: 36px;
}

/***office***/
.office-card{
  background: #fff;
  border: 4px solid var(--bg-color);
  border-radius: 30px;
  padding: clamp(1rem, 0.063rem + 1.95vw, 1.625rem) clamp(1rem, 0.063rem + 1.95vw, 1.625rem) clamp(1.625rem, -1rem + 5.47vw, 3.375rem);
}
.office-card_img {margin-bottom: clamp(0.875rem, -0.25rem + 2.34vw, 1.625rem);}
.office-card_img img{
  border-radius: 30px 30px 0 0;
  width: 100%;
}
.office-card_ttl {
  color: var(--accent-color);
  font-size: clamp(0.938rem, 0.094rem + 1.76vw, 1.5rem);
  font-weight: var(--bold);
  margin-bottom: clamp(0.875rem, -0.316rem + 5.08vw, 3.75rem);
}
.office-card_add {
  line-height: 1.4;
  margin-bottom: 10px;
}
.office-card_contact{
  display: flex;
  flex-wrap: wrap;
  font-size: clamp(1.25rem, 0.313rem + 1.95vw, 1.875rem);
  font-weight: var(--medium);
  gap: 0 20px;
  margin-bottom: clamp(1.375rem, 0.391rem + 4.2vw, 3.75rem);
}
.office-card_contact span{
  display: inline-block;
  font-size: clamp(0.75rem, 0.407rem + 0.66vw, 0.938rem);
  min-width: clamp(1.25rem, 0.887rem + 1.55vw, 2.125rem);
}
.office-card .link-pdf {
  font-size: clamp(0.813rem, 0.156rem + 1.37vw, 1.25rem);
  padding: clamp(0.625rem, 0.366rem + 1.1vw, 1.25rem) 0.625rem;
}
@media screen and (max-width: 767.98px){
  .map-card_ttl {
    align-items: center;
    color: var(--font-sub-color);
    display: flex;
    font-weight: 400;
  }
  .map-card_ttl::before, .map-card_ttl::after {
    background: var(--font-sub-color);
    content: "";
    flex-grow: 1;
    height: 2px;
  }
  .map-card_ttl::before{margin-right: 1.25rem;}
  .map-card_ttl::after {margin-left: 1.25rem;}
  .map-card_img {padding: 0 5%;}
}
@media screen and (min-width: 768px){
  .map-card{
    background: #fff;
    border: 1px solid;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    font-weight: var(--bold);
    padding: 40px 10px 30px;
    width: clamp(20.75rem, -0.438rem + 44.14vw, 34.875rem);
  }
  .office-card{width: clamp(20.75rem, -0.438rem + 44.14vw, 34.875rem);}
}

/*section*/
/**area**/
.sec-area .lead-area{margin-bottom: clamp(2.375rem, 1.391rem + 4.2vw, 4.75rem);}
.area-container+.area-container{margin-top: clamp(3.75rem, -1.125rem + 10.16vw, 7rem);}
.area-container_ttl{
  font-size: clamp(1.25rem, 1.146rem + 0.44vw, 1.5rem);
  margin-bottom: 42px;
  text-align: center;
}
.area-group{gap:clamp(1.25rem, -2.5rem + 7.81vw, 3.75rem);}
@media screen and (max-width: 767.98px){
  .area-group+.area-group{margin-top: 4.375rem;}
}
@media screen and (min-width: 768px){
  .area-container_ttl{
    align-items: center;
    color: var(--font-sub-color);
    display: flex;
    font-weight: 400;
  }
  .area-container_ttl::before, .area-container_ttl::after {
    background: var(--font-sub-color);
    content: "";
    flex-grow: 1;
    height: 2px;
  }
  .area-container_ttl::before{margin-right: 4.75rem;}
  .area-container_ttl::after {margin-left: 4.75rem;}
  .area-group .area-container_ttl::before {margin-right: clamp(2rem, -2.875rem + 10.16vw, 5.25rem);}
  .area-group .area-container_ttl::after {margin-left: clamp(2rem, -2.875rem + 10.16vw, 5.25rem);}
  .area-wrap{gap: clamp(1.875rem, -0.938rem + 5.86vw, 3.75rem);}
}

/**column**/
.sec-column{padding-bottom: clamp(3.75rem, 0.383rem + 14.36vw, 11.875rem);}
.sec-column .lead-area{margin-bottom: clamp(1.75rem, 0.61rem + 4.86vw, 4.5rem);}
.column-wrap{gap:clamp(1.25rem, 0.991rem + 1.1vw, 1.875rem) 2%;}
.column-wrap .slick-dots  {
  gap:20px;
  margin-top: clamp(1.25rem, -0.301rem + 6.62vw, 2.875rem);
}
.column-wrap .slick-dots button {
  appearance: none;
  background: var(--sub-color);
  border: none;
  border-radius: 50%;
  height: 16px;
  width: 16px;
}
.column{
  border: 2px solid var(--sub-color);
  border-radius: 20px;
  overflow:hidden;
  position: relative;
  width: 100%;
}
.column::before {
  background: var(--sub-color);
  border-radius: 50%;
  bottom: clamp(-2.875rem, -3.082rem + 0.88vw, -2.375rem);
  content: "";
  height: 83px;
  position: absolute;
  right: clamp(-2.125rem, -2.229rem + 0.44vw, -1.875rem);
  width: 83px;
  z-index: -1;
}
.column::after {
  background: url(img/common/ico-arrow_white.svg);
  background-size: contain;
  bottom: clamp(0.5rem, 0.345rem + 0.66vw, 0.875rem);
  content: "";
  height: 15px;
  position: absolute;
  right: clamp(0.5rem, 0.396rem + 0.44vw, 0.75rem);
  width: 20px;
  z-index: -1;
}
.column a{
  color: inherit;
  display: block;
  height: 100%;
  padding: clamp(1.125rem, 1.073rem + 0.22vw, 1.25rem) clamp(1.125rem, 1.073rem + 0.22vw, 1.25rem) 2.5rem;
}
.column_img{
  margin-bottom: 14px;
  position: relative;
  width: 100%;
}
.column_img img{
  display: block;
  height: clamp(13.625rem, 13.185rem + 1.88vw, 14.688rem);
  object-fit: cover;
  object-position: 50% 10%;
  width: 100%;
}
.column .zoom {border-radius: 20px;}
.column:hover .zoom img {transform: scale(1.2);}
.column_cat{
  border-radius: 15px 0 0 15px;
  bottom: -15px;
  color: #fff;
  font-size: 10px;
  font-weight: var(--bold);
  height: 30px;
  line-height: 28px;
  padding: 0 18px;
  position: absolute;
  right: 0;
}
.column_ttl{
  font-size: clamp(0.75rem, 0.672rem + 0.33vw, 0.938rem);
  font-weight: var(--medium);
  margin-top: 8px;
}
.episode{background:#f3916e}
.food{background:#6dc587}
@media screen and (max-width: 767.98px){
  .column_ttl{margin-bottom: 14px;}
}
@media screen and (min-width: 768px){
  .column{width: 49%;}
  .column_ttl{margin-top: 2px;}
}
@media screen and (min-width: 1024px){
  .column{width: 32%;}
}


/**columns**/
.single-container{
  margin-top: clamp(2.625rem, 0.605rem + 8.62vw, 7.5rem);
  padding-bottom: clamp(4.375rem, 1.008rem + 14.36vw, 12.5rem);
}
.art-single{margin-bottom: clamp(2.625rem, 1.33rem + 5.52vw, 5.75rem);}
.single-head{margin-bottom: clamp(1.75rem, 0.921rem + 3.54vw, 3.75rem);}
.single-meta{
  align-items: center;
  gap: 0 clamp(0.625rem, -0.048rem + 2.87vw, 2.25rem);
  margin-bottom: clamp(0.75rem, 0.543rem + 0.88vw, 1.25rem);
}
.single_date{font-size: clamp(0.75rem, 0.646rem + 0.44vw, 1rem);}
.columns_cat{
  border: 1px solid;
  border-radius: 3px;
  font-size: 0.625rem;
  padding: 1px 10px;
}
.single_ttl{
  border-bottom: 1px dashed;
  font-size: clamp(1.125rem, 0.659rem + 1.99vw, 2.25rem);
  font-weight:var(--bold);
  padding-bottom: clamp(1rem, 0.637rem + 1.55vw, 1.875rem);
}
.single-wrap .txt+img{margin-top: clamp(2.75rem, 2.439rem + 1.33vw, 3.5rem);}
.single-wrap h3{
  font-weight: var(--medium);
  margin-top: clamp(0.875rem, -0.265rem + 4.86vw, 3.625rem);
}
.single-wrap .txt{margin-top: clamp(0.625rem, 0.055rem + 2.43vw, 2rem);}
.single_link {
  font-size: clamp(0.75rem, 0.646rem + 0.44vw, 1rem);
  font-weight: var(--medium);
  margin-bottom: clamp(3.125rem, 1.312rem + 7.73vw, 7.5rem);
}
.single_link a{color: #0008ff;}
.share-area{
  align-items: center;
  border-bottom: 1px solid #efefef;
  border-top: 1px solid #efefef;
  font-size:clamp(0.625rem, 0.573rem + 0.22vw, 0.75rem);
  gap: 12px 56px;
  justify-content: center;
  margin-bottom: clamp(3rem, 2.223rem + 3.31vw, 4.875rem);
  padding: 14px 0;
}
.share-wrap{
  align-items: center;
  gap: 10px;
}
.share-wrap span{
  margin-right: 10px;
  white-space: nowrap;
}
.share-wrap img{cursor: pointer;}
.related-wrap{gap:clamp(1.25rem, 0.991rem + 1.1vw, 1.875rem) 2%}
.aside-related{margin-bottom: clamp(4.25rem, 0.676rem + 15.25vw, 12.875rem);}
.aside-related .lead-area{margin-bottom: clamp(2rem, 0.912rem + 4.64vw, 4.625rem);}
@media screen and (max-width: 767.98px) {
  .column+.column{margin-top: 1.25rem;}
  .top-column .column+.column{margin-top: 0;}
}
@media screen and (min-width: 768px) {
  .share-area {padding: 8px 0;}
  .share-wrap span{margin-right: 26px;}
}

/**information**/
.sec-information{padding-bottom: clamp(5rem, 0.649rem + 18.56vw, 15.5rem);}
.information-wrap li{
  align-items: center;
  border-bottom: 1px dashed;
  display: flex;
  gap: clamp(0.25rem, -0.423rem + 2.87vw, 1.875rem) clamp(0.625rem, 0.107rem + 2.21vw, 1.875rem);
  padding: clamp(1rem, 0.793rem + 0.88vw, 1.5rem) 0 clamp(0.375rem, -0.091rem + 1.99vw, 1.5rem);
}
.information_cat{
  background: var(--main-color);
  border-radius: 10px;
  color: #fff;
  font-size: 10px;
  font-weight: var(--medium);
  padding: clamp(0rem, -0.052rem + 0.22vw, 0.125rem) clamp(0.25rem, 0.095rem + 0.66vw, 0.625rem);
}
.information-wrap a {color: inherit;}
.information-wrap a:hover{text-decoration: underline;}
@media screen and (max-width: 767.98px){
  .information-wrap li {flex-wrap: wrap;}
  .information-wrap a{width: 100%;}
}
@media screen and (min-width: 768px){
  .information-container{justify-content: space-between;}
}

/**contact**/
.sec-contact{padding-bottom: clamp(8.125rem, 6.157rem + 8.4vw, 12.875rem);}
.form-container{
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  width: 960px;
}
.form-container .lead-area{margin-bottom: clamp(3.375rem, 1.821rem + 6.63vw, 7.125rem);}
.form-step {
  display: flex;
  font-size: clamp(0.75rem, 0.439rem + 1.33vw, 1.5rem);
  justify-content: space-between;
  margin-bottom: clamp(4.375rem, -5.544rem + 20.99vw, 11.25rem);
  position: relative;
}
.form-step::before {
  background-color: var(--sub-color);
  content: "";
  height: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  z-index: -1;
}
.form-step li {
  height: clamp(2.5rem, 1.775rem + 3.09vw, 4.25rem);
  position: relative;
  width: clamp(2.5rem, 1.775rem + 3.09vw, 4.25rem);
}
.form-step li span {
  display: block;
  left: 50%;
  position: absolute;
  top: clamp(2.625rem, 1.33rem + 5.52vw, 5.75rem);
  transform: translateX(-50%);
  white-space: nowrap;
}
.form-step li::before {
  background: #fff;
  border: 2px solid var(--sub-color);
  border-radius: 50%;
  content: "";
  height: clamp(2.25rem, 1.525rem + 3.09vw, 4rem);
  left: 0;
  position: absolute;
  top: 0;
  width: clamp(2.25rem, 1.525rem + 3.09vw, 4rem);
}
.form-step li.on::before {border-color: var(--sub-color);}
.form-step li.on::after {
  background: var(--sub-color);
  border-radius: 50%;
  content: "";
  height: clamp(1.125rem, 0.762rem + 1.55vw, 2rem);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  width: clamp(1.125rem, 0.762rem + 1.55vw, 2rem);
}
.form-item+.form-item{margin-top: clamp(2.5rem, 1.775rem + 3.09vw, 4.25rem);}
.form-item label{margin-bottom: clamp(0.875rem, 0.72rem + 0.66vw, 1.25rem);}
input,textarea,select,button{font-family: "noto-sans-cjk-jp", sans-serif;}
.req{
  display: block;
  font-weight: var(--medium);
  line-height: 27px;
  padding-left: 84px;
  position: relative;
}
.req::before{
  background: var(--main-color);
  border-radius: 10px;
  color: #fff;
  content: "必須";
  height: 29px;
  left: 0;
  min-width: 64px;
  position: absolute;
  text-align: center;
}
.form-item>div{gap: 3%;}
.confirm .form-item>div {padding-left: 2em;}
.form-item [type="text"],.form-item [type="tel"], .form-item [type="email"], .form-item [type="date"], .form-item textarea{
  background: var(--bg-color);
  border:1px solid;
  font-size: 1rem;
  padding: clamp(0.5rem, 0.293rem + 0.88vw, 1rem);
  width: 100%;
}
.form-item [type="date"]{width: 200px;}
.form-item input+p{margin-top: 4px;}
.form-wrap .link-txt{color:#0008ff;}
.form-btn-wrap{
  align-items: center;
  gap: 20px 5%;
  justify-content: center;
  margin-top:clamp(2.125rem, -0.465rem + 11.05vw, 8.375rem);
}
[type=checkbox] {display: none;}
[type=checkbox] + .wpcf7-list-item-label {
  padding-left:clamp(0.75rem, 0.595rem + 0.66vw, 1.125rem);
  position: relative;
}
[type=checkbox] + .wpcf7-list-item-label::before{
  border: 1px solid;
  content: "";
  height: clamp(0.5rem, 0.371rem + 0.55vw, 0.813rem);
  left: 0;
  position: absolute;
  top: calc(50% + .1em);
  transform: translateY(-50%);
  width: clamp(0.5rem, 0.371rem + 0.55vw, 0.813rem);
}
[type=checkbox]:checked + .wpcf7-list-item-label::after{
  border-bottom: 2px solid;
  border-left: 2px solid;
  content: "";
  position: absolute;
  height: .25rem;
  left: 2px;
  top: .625rem;
  transform: rotate(-45deg);
  width: .563rem;
}
.form-btn-wrap2 {margin-top: clamp(2.5rem, 0.428rem + 8.84vw, 7.5rem);}
.form-btn-wrap3 {margin-top: clamp(4.25rem, 0.831rem + 14.59vw, 12.5rem);}
.hidden-fields-container{display: none;}
.wpcf7-form-control-wrap{width: 100%;}
.wpcf7-list-item{display: block;}
.wpcf7-list-item [type="radio"]{margin-right:4px;}
.wpcf7-list-item+.wpcf7-list-item{margin-top: 12px;}
.btn-form {
  border-radius: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
  max-width: 90%;
  position: relative;
  text-align: center;
  width: 400px;
}
.btn-form::before {
  background: url(img/common/ico-arrow.svg) no-repeat;
  background-size: contain;
  content: "";
  height: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
  right: clamp(0.313rem, 0.132rem + 0.77vw, 0.75rem);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(1.626rem, 1.057rem + 2.43vw, 3rem);
}
.btn-form input{
  background: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: clamp(1.125rem, 0.037rem + 4.64vw, 3.75rem);
  color: #fff;
  font-size: clamp(0.875rem, 0.616rem + 1.1vw, 1.5rem);
  font-weight: var(--medium);
  height: clamp(2.25rem, 1.318rem + 3.98vw, 4.5rem);
  margin-left: auto;
  margin-right: auto;
  transition: .3s;
  width: 100%;
}
.btn-form:hover input{
  background: #fff;
  color: var(--main-color);
}
[data-status="init"] .wpcf7-not-valid-tip{display: none;}
[data-status="invalid"] .wpcf7-not-valid-tip{display: block;}
.screen-reader-response, .wpcf7-not-valid-tip {
  color: var(--main-color);
  margin-bottom: 20px;
}
.screen-reader-response ul{display: none;}
.wpcf7-response-output{
  color: var(--main-color);
  margin-top: 10px;
  text-align: center;
}
.sec-thanks {padding-bottom: clamp(4.25rem, 0.624rem + 15.47vw, 13rem);}
.sec-thanks h3{
  font-size: clamp(1rem, 0.793rem + 0.88vw, 1.5rem);
  font-weight: var(--medium);
  margin-bottom: clamp(2rem, 1.43rem + 2.43vw, 3.375rem);
}
.sec-thanks .form-btn-wrap{margin-top: clamp(3.25rem, -0.479rem + 15.91vw, 12.25rem);}
@media screen and (max-width: 767.98px){
  .form-wrap{font-size: .875rem;}
  .check{
    font-size: 1rem;
    font-weight: var(--medium);
    line-height: 3;
  }
  .check [type=checkbox]+.wpcf7-list-item-label {padding-left: 1.5rem;}
  .check [type=checkbox]+.wpcf7-list-item-label::before {
    height: .813rem;
    width: .813rem;
  }
}
@media screen and (min-width: 768px){
  .form-item>div{
    margin-left: 84px;
    width: calc(100% - 84px);
  }
  .check [type=checkbox]:checked+.wpcf7-list-item-label::after {top: .438rem;}
}

/**flow**/
.sec-flow .lead-area{margin-bottom: clamp(2rem, 0.912rem + 4.64vw, 4.625rem);}

#wpadminbar{display: none;}