@charset "UTF-8";
*,
*::before,
*::after{
  box-sizing:border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure{
  border:0;
  font:inherit;
  font-size:100%;
  margin:0;
  padding:0;
  vertical-align:baseline;
}

html{
  line-height:1;
}

ol,
ul{
  list-style:none;
}

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

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

img{
  border:none;
  max-width:100%;
  height:auto;
}

a{
  cursor:pointer;
  text-decoration:none;
  color:inherit;
}
body{
  font-family:"aktiv-grotesk", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Roboto", sans-serif;
  font-size:min(1.1666666667vw, 14vw);
  font-weight:400;
  line-height:1.8;
  letter-spacing:min(0.0625vw, 0.75vw);
  padding-top:min(9.5vw, 114vw);
}
@media screen and (max-width: 767px){
  body{
    font-size:3.1818181818vw;
    padding-top:22.7272727273vw;
  }
}
@media screen and (max-width: 767px){
  body.is-menu-open{
    overflow:hidden;
  }
}

img{
  width:100%;
  max-width:100%;
  margin:auto;
  vertical-align:middle;
}

@media screen and (min-width: 768px){
  a.c-linkimg{
    transition:opacity 0.3s;
  }
  a.c-linkimg:hover{
    opacity:0.8;
  }
}

em{
  font-style:normal;
}

svg{
  overflow:visible;
}

[type=text],
[type=email],
[type=tel],
[type=password]{
  width:100%;
  padding:min(0.6666666667vw, 8vw);
  border:#ACA8A7 solid 1px;
  font-size:min(1vw, 12vw);
  background:#fff;
  border-radius:0;
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
}
[type=text]::-moz-placeholder, [type=email]::-moz-placeholder, [type=tel]::-moz-placeholder, [type=password]::-moz-placeholder{
  color:#bbb;
}
[type=text]::placeholder,
[type=email]::placeholder,
[type=tel]::placeholder,
[type=password]::placeholder{
  color:#bbb;
}
@media screen and (max-width: 767px){
  [type=text],
[type=email],
[type=tel],
[type=password]{
    padding:1.8181818182vw;
    font-size:2.7272727273vw;
  }
}

textarea{
  width:100%;
  height:min(12.5vw, 150vw);
  padding:min(0.6666666667vw, 8vw);
  border:none;
  font-size:min(1.1666666667vw, 14vw);
  border:#ACA8A7 solid 1px;
  box-shadow:none;
  background:#fff;
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
  border-radius:0;
}
@media screen and (max-width: 767px){
  textarea{
    font-size:3.1818181818vw;
    height:34.0909090909vw;
    padding:1.8181818182vw;
  }
}
textarea::-moz-placeholder{
  color:#bbb;
}
textarea::placeholder{
  color:#bbb;
}

select{
  width:100%;
  padding:min(0.6666666667vw, 8vw);
  font-size:min(1vw, 12vw);
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
  background-color:#fff;
  color:#231815;
  border:#ACA8A7 solid 1px;
  border-radius:0;
}
@media screen and (max-width: 767px){
  select{
    font-size:2.7272727273vw;
    padding:1.8181818182vw;
  }
}
[type=checkbox],
[type=radio]{
  accent-color:#555555;
}
[type=checkbox] + span,
[type=radio] + span{
  font-size:min(1.3333333333vw, 16vw);
  letter-spacing:0.05em;
}
@media screen and (min-width: 768px){
  [type=checkbox] + span,
[type=radio] + span{
    font-size:min(calc(21/1200*100vw), 21px);
  }
}

.l-header{
  position:fixed;
  top:0;
  left:0;
  z-index:999;
  width:100%;
  height:min(9.5vw, 114vw);
  background-color:#fff;
  padding:min(2.9166666667vw, 35vw) 0;
  transition:transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transform:translateY(0);
}
@media screen and (max-width: 767px){
  .l-header{
    height:auto;
    padding:4.5454545455vw 0 1.1363636364vw;
  }
}

.l-header__logo{
  font-size:min(1vw, 12vw);
  letter-spacing:min(0.1166666667vw, 1.4vw);
}
@media screen and (max-width: 767px){
  .l-header__logo{
    font-size:2.7272727273vw;
    letter-spacing:0.3181818182vw;
  }
}

.l-header__inner{
  display:flex;
  justify-content:space-between;
  width:93.66%;
  margin:0 auto;
}
@media screen and (max-width: 767px){
  .l-header__inner{
    width:82.72%;
  }
}

.l-header__nav{
  display:flex;
  gap:min(3.3333333333vw, 40vw);
  letter-spacing:min(0.1166666667vw, 1.4vw);
}
@media screen and (max-width: 767px){
  .l-header__nav{
    display:none;
  }
}

.l-header__navList{
  display:grid;
  grid-template-columns:repeat(2, auto);
  gap:0 min(3.3333333333vw, 40vw);
}

.l-header__navItem{
  font-size:min(1.0833333333vw, 13vw);
}
.l-header__navItem a{
  display:flex;
  align-items:center;
  gap:min(0.8333333333vw, 10vw);
  color:#333;
  text-decoration:none;
}
.l-header__navItem a:hover{
  color:#2c628c;
}
.l-header__navItem a svg{
  color:#2c628c;
}

.l-header__navSNS{
  display:flex;
  align-items:center;
}

.l-header__spMenuBtn{
  display:none;
}
@media screen and (max-width: 767px){
  .l-header__spMenuBtn{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:6.8181818182vw;
    height:5.9090909091vw;
    background:none;
    border:none;
    padding:0;
    cursor:pointer;
    right:-3.4090909091vw;
    z-index:1001;
  }
  .l-header__spMenuBtn span{
    position:absolute;
    display:block;
    width:4.7727272727vw;
    height:0.4545454545vw;
    background-color:#231815;
    transition:all 0.3s ease;
  }
  .l-header__spMenuBtn span:nth-child(1){
    top:1.8181818182vw;
  }
  .l-header__spMenuBtn span:nth-child(2){
    bottom:1.8181818182vw;
  }
  .l-header__spMenuBtn.is-active span:nth-child(1){
    top:50%;
    transform:translateY(-50%) rotate(45deg);
  }
  .l-header__spMenuBtn.is-active span:nth-child(2){
    bottom:50%;
    transform:translateY(50%) rotate(-45deg);
  }
}

.l-header__spNav{
  display:none;
  pointer-events:none;
}
@media screen and (max-width: 767px){
  .l-header__spNav{
    position:absolute;
    display:grid;
    align-content:center;
    left:0;
    width:100%;
    top:14.3181818182vw;
    height:calc(100svh - 14.3181818182vw);
    background-color:#fff;
    padding:0 8.6363636364vw;
    opacity:0;
    transition:transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    z-index:999;
    overflow-y:auto;
  }
  .l-header.is-menu-open .l-header__spNav{
    display:block;
    pointer-events:auto;
    opacity:1;
  }
}

@media screen and (max-width: 767px){
  .l-header__spNavList{
    display:grid;
    gap:3.6363636364vw;
  }
}

@media screen and (max-width: 767px){
  .l-header__spNavItem{
    font-size:3.8636363636vw;
  }
}
.l-header__spNavItem a{
  display:block;
}
@media screen and (max-width: 767px){
  .l-header__spNavItem svg{
    width:2.9545454545vw;
    height:2.9545454545vw;
    color:#2c628c;
    margin-right:4.5454545455vw;
  }
}

@media screen and (max-width: 767px){
  .l-header__spNavCompany{
    display:grid;
    gap:2.2727272727vw;
    margin:6.8181818182vw 0 4.5454545455vw;
    padding:4.5454545455vw 0 0;
    border-top:1px solid #dbdbdb;
  }
  .l-header__spNavCompany li{
    font-size:3.1818181818vw;
  }
}

@media screen and (max-width: 767px){
  .l-header__spNavSNS{
    border-top:1px solid #dbdbdb;
    padding:6.8181818182vw 0;
  }
  .l-header__spNavSNS svg{
    width:5vw;
    height:5vw;
  }
}

.l-header{
  width:100%;
  z-index:999;
}
.l-header.is-scroll-header{
  position:fixed;
  top:0;
  left:0;
  transition:transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transform:translateY(0);
}
.l-header.is-scrolled{
  box-shadow:0 2px 10px rgba(0, 0, 0, 0.1);
}
.l-header.is-hidden{
  transform:translateY(-100%);
}
.l-header.is-visible{
  transform:translateY(0);
}
.l-header.is-menu-open .l-header__spNav{
  transform:translateY(0);
  opacity:1;
  pointer-events:auto;
}
.l-header.is-menu-open .l-header__spMenuBtn .l-header__spMenuBtn__bar:nth-child(1){
  transform:translateY(8px) rotate(45deg);
}
.l-header.is-menu-open .l-header__spMenuBtn .l-header__spMenuBtn__bar:nth-child(2){
  transform:translateY(-8px) rotate(-45deg);
}

.l-header__spNav{
  position:fixed;
  top:100%;
  left:0;
  width:100%;
  height:100vh;
  background:#fff;
  opacity:0;
  pointer-events:none;
  transition:opacity 0.3s;
  z-index:999;
}

body.is-menu-open{
  overflow:hidden;
}

.l-header.is-scroll-header + body{
  padding-top:var(--header-height, 80px);
}

.l-footer{
  padding:min(3.75vw, 45vw) 0 0;
}
@media screen and (max-width: 767px){
  .l-footer{
    padding:9.0909090909vw 0 0;
  }
}
.l-footer__inner{
  display:grid;
  grid-template-columns:auto auto;
  align-items:center;
  width:min(55vw, 660vw);
  margin:0 auto min(4.8333333333vw, 58vw);
}
@media screen and (max-width: 767px){
  .l-footer__inner{
    width:82.72%;
    grid-template-columns:auto;
    margin:0 auto 13.1818181818vw;
  }
}
.l-footer__book{
  width:min(16.6666666667vw, 200vw);
}
@media screen and (max-width: 767px){
  .l-footer__book{
    width:45.4545454545vw;
    margin:0 auto;
  }
}
.l-footer__info{
  width:min(30.3333333333vw, 364vw);
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .l-footer__info{
    width:100%;
    font-size:2.7272727273vw;
  }
}
.l-footer__infoHeading{
  font-size:min(1.1666666667vw, 14vw);
}
@media screen and (max-width: 767px){
  .l-footer__infoHeading{
    font-size:3.1818181818vw;
  }
}
.l-footer__infoBtn{
  margin:min(0.8333333333vw, 10vw) 0;
}
@media screen and (max-width: 767px){
  .l-footer__infoBtn{
    margin:2.2727272727vw 0;
  }
}
.l-footer__infoBtn a{
  font-size:min(1.3333333333vw, 16vw);
}
@media screen and (max-width: 767px){
  .l-footer__infoBtn a{
    font-size:3.6363636364vw;
  }
}
.l-footer__company{
  display:grid;
  grid-template-columns:auto auto;
  align-items:center;
  width:min(55vw, 660vw);
  margin:0 auto min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .l-footer__company{
    width:100%;
    grid-template-columns:auto;
    margin:0 auto 6.8181818182vw;
    gap:6.8181818182vw;
  }
}
.l-footer__companyHeading{
  font-size:min(1.1666666667vw, 14vw);
  font-weight:bold;
  text-align:center;
  margin-bottom:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .l-footer__companyHeading{
    font-size:3.1818181818vw;
    margin-bottom:4.5454545455vw;
  }
}
.l-footer__companyList{
  display:flex;
  justify-content:center;
  gap:min(1.6666666667vw, 20vw);
}
@media screen and (max-width: 767px){
  .l-footer__companyList{
    gap:6.8181818182vw;
  }
}
.l-footer__companyList li{
  width:min(7vw, 84vw);
}
@media screen and (max-width: 767px){
  .l-footer__companyList li{
    width:19.0909090909vw;
  }
}
.l-footer__companyList--single li{
  width:min(13.3333333333vw, 160vw);
}
@media screen and (max-width: 767px){
  .l-footer__companyList--single li{
    width:36.3636363636vw;
  }
}

.l-footer__bottom{
  display:flex;
  font-size:min(0.8333333333vw, 10vw);
  border-top:#dbdbdb solid 1px;
  margin:0 min(2.9166666667vw, 35vw);
  justify-content:space-between;
  padding:min(1.6666666667vw, 20vw) 0;
}
@media screen and (max-width: 767px){
  .l-footer__bottom{
    font-size:2.2727272727vw;
    margin:0 7.9545454545vw;
    padding:4.5454545455vw 0;
  }
}

.l-container{
  width:93.66%;
  margin:0 auto;
}
@media screen and (max-width: 767px){
  .l-container{
    max-width:initial;
    width:82.72%;
  }
}

.l-container-narrow{
  max-width:min(63.3333333333vw, 760vw);
  width:82.72%;
  margin:0 auto;
}
@media screen and (max-width: 767px){
  .l-container-narrow{
    max-width:initial;
    width:82.72%;
  }
}

.c-l{
  display:grid;
}
.c-l--2{
  grid-template-columns:1fr 1fr;
  gap:min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .c-l--2{
    grid-template-columns:1fr;
    gap:6.8181818182vw;
  }
}
@media screen and (max-width: 767px){
  .c-l--sp-reverse .c-l__item:last-child{
    order:-1;
  }
}

body.is-hidden{
  overflow:hidden;
}

body.home .wrap{
  opacity:0;
  transition:opacity 1s ease-in-out;
}
body.home .wrap.is-visible{
  opacity:1;
}

.p-intro{
  position:fixed;
  z-index:1000;
  top:0;
  left:0;
  width:100%;
  height:100vh;
}
.p-intro.is-hidden{
  transition:opacity 0.5s ease-in-out;
  opacity:0;
  pointer-events:none;
}
.p-intro__text{
  opacity:0;
  transition:opacity 1s ease-in-out;
  position:absolute;
  z-index:1;
  writing-mode:vertical-rl;
  top:calc(50% - min(10vw, 120vw));
  left:50%;
  transform:translate(-50%, -50%);
  font-size:min(1.6666666667vw, 20vw);
  color:#fff;
  white-space:pre-line;
  letter-spacing:min(0.375vw, 4.5vw);
  line-height:2;
}
@media screen and (max-width: 767px){
  .p-intro__text{
    font-size:4.5454545455vw;
    top:calc(50% - 27.2727272727vw);
    letter-spacing:1.0227272727vw;
  }
}
.p-intro__text.is-visible{
  opacity:1;
  transition:opacity 1s ease-in-out;
}
.p-intro__bg{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
}
.p-life{
  position:relative;
}
.p-life__heading{
  position:absolute;
  z-index:2;
  writing-mode:vertical-rl;
  font-size:min(1.25vw, 15vw);
  letter-spacing:min(0.1666666667vw, 2vw);
  top:0;
  left:min(2.6666666667vw, 32vw);
}
@media screen and (max-width: 767px){
  .p-life__heading{
    font-size:3.4090909091vw;
    letter-spacing:0.4545454545vw;
    left:7.2727272727vw;
  }
}
.p-life__btn{
  text-align:center;
  padding:min(3.3333333333vw, 40vw) 0 min(4.1666666667vw, 50vw);
}
@media screen and (max-width: 767px){
  .p-life__btn{
    padding:9.0909090909vw 0 11.3636363636vw;
  }
}

.p-lifestyle{
  position:relative;
  margin:0 0 min(0.0833333333vw, 1vw);
  min-height:min(25vw, 300vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle{
    min-height:68.1818181818vw;
    margin:0 0 0.2272727273vw;
  }
}
.p-lifestyle__meta{
  position:absolute;
  top:0;
  left:0;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  background-color:#fff;
  width:min(8.3333333333vw, 100vw);
  height:100%;
}
@media screen and (max-width: 767px){
  .p-lifestyle__meta{
    width:22.7272727273vw;
  }
}
.p-lifestyle__meta:after{
  content:"";
  position:absolute;
  bottom:-1px;
  right:min(0.5833333333vw, 7vw);
  width:min(4.75vw, 57vw);
  height:1px;
  background:#dbdbdb;
}
@media screen and (max-width: 767px){
  .p-lifestyle__meta:after{
    right:1.5909090909vw;
    width:12.9545454545vw;
  }
}
.p-lifestyle__metaLabel{
  writing-mode:vertical-rl;
  font-size:min(0.8333333333vw, 10vw);
  margin-bottom:min(0.3333333333vw, 4vw);
  padding-left:min(2.9166666667vw, 35vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle__metaLabel{
    font-size:2.2727272727vw;
    margin-bottom:0.4545454545vw;
    padding-left:7.9545454545vw;
  }
}
.p-lifestyle__metaNumber{
  font-size:min(1.75vw, 21vw);
  padding-left:min(2.9166666667vw, 35vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle__metaNumber{
    font-size:4.7727272727vw;
    padding-left:7.9545454545vw;
  }
}
.p-lifestyle__btn{
  position:absolute;
  bottom:min(1.6666666667vw, 20vw);
  right:min(2.9166666667vw, 35vw);
  z-index:1;
}
@media screen and (max-width: 767px){
  .p-lifestyle__btn{
    bottom:3.4090909091vw;
    right:3.4090909091vw;
  }
}
.p-lifestyle__btn a{
  min-width:min(24.1666666667vw, 290vw);
}
@media screen and (min-width: 768px){
  .p-lifestyle__btn a{
    transition:opacity 0.3s;
  }
  .p-lifestyle__btn a:hover{
    opacity:0.8;
  }
}
@media screen and (max-width: 767px){
  .p-lifestyle__btn a{
    min-width:65.9090909091vw;
  }
}
.p-lifestyle .c-lifestyle-gallery{
  height:auto;
}

.p-about__content{
  text-align:center;
  padding:min(5vw, 60vw) 0 min(6.6666666667vw, 80vw);
}
@media screen and (max-width: 767px){
  .p-about__content{
    text-align:left;
    padding:13.6363636364vw 0 18.1818181818vw;
  }
}
.p-about__contentTitle{
  font-size:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-about__contentTitle{
    font-size:2.2727272727vw;
  }
}
@media screen and (max-width: 767px){
  .p-about__contentWrap{
    display:grid;
    justify-content:center;
  }
}
.p-about__contentHeading{
  font-size:min(1.6666666667vw, 20vw);
  margin:min(4.1666666667vw, 50vw) 0 min(4.1666666667vw, 50vw);
  letter-spacing:min(0.1666666667vw, 2vw);
}
@media screen and (max-width: 767px){
  .p-about__contentHeading{
    font-size:4.5454545455vw;
    margin:11.3636363636vw 0 9.0909090909vw;
    letter-spacing:0.4545454545vw;
  }
}
.p-about__contentText{
  font-size:min(1.25vw, 15vw);
  line-height:2.1;
}
@media screen and (max-width: 767px){
  .p-about__contentText{
    text-align:left;
    font-size:3.4090909091vw;
  }
}

.p-siding{
  padding:min(3.75vw, 45vw) 0 min(4.5833333333vw, 55vw);
  background-color:#edeeea;
}
@media screen and (max-width: 767px){
  .p-siding{
    padding:7.9545454545vw 0 12.5vw;
  }
}
.p-siding__content{
  border-radius:min(0.8333333333vw, 10vw);
  padding:min(2.5vw, 30vw) min(4.5833333333vw, 55vw);
  background-color:#fff;
}
@media screen and (max-width: 767px){
  .p-siding__content{
    border-radius:2.2727272727vw;
    padding:6.8181818182vw 6.8181818182vw;
  }
}
.p-siding__heading{
  text-align:center;
  font-size:min(1.1666666667vw, 14vw);
  margin-bottom:min(0.8333333333vw, 10vw);
  letter-spacing:min(0.1666666667vw, 2vw);
}
@media screen and (max-width: 767px){
  .p-siding__heading{
    font-size:3.1818181818vw;
    margin-bottom:0.9090909091vw;
    letter-spacing:0.4545454545vw;
  }
}
.p-siding__lead{
  text-align:center;
  font-size:min(1.5833333333vw, 19vw);
  margin-bottom:min(1.6666666667vw, 20vw);
  line-height:1.4;
}
@media screen and (max-width: 767px){
  .p-siding__lead{
    font-size:4.0909090909vw;
    margin-bottom:4.5454545455vw;
  }
}
.p-siding__lead em{
  font-size:min(2.6666666667vw, 32vw);
  vertical-align:max(-0.25vw, -3vw);
}
@media screen and (max-width: 767px){
  .p-siding__lead em{
    font-size:7.2727272727vw;
    vertical-align:-0.6818181818vw;
  }
}
.p-siding__img{
  text-align:center;
  margin:min(1.6666666667vw, 20vw) auto 0;
  width:min(35.5833333333vw, 427vw);
}
@media screen and (max-width: 767px){
  .p-siding__img{
    margin:4.5454545455vw auto 0;
    width:68.1818181818vw;
  }
}
.p-siding__note{
  color:#666;
  font-size:min(0.8333333333vw, 10vw);
  margin-top:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-siding__note{
    font-size:2.2727272727vw;
    margin-top:2.2727272727vw;
  }
}

.p-siding__section{
  margin:min(3.3333333333vw, 40vw) 0;
}
@media screen and (max-width: 767px){
  .p-siding__section{
    margin:9.0909090909vw 0;
  }
}
.p-siding__section:last-child{
  margin-bottom:0;
}
.p-siding__sectionIcon{
  color:#2c628c;
  text-align:center;
  font-size:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-siding__sectionIcon{
    font-size:2.2727272727vw;
  }
}
.p-siding__sectionIcon img{
  display:block;
  width:min(1vw, 12vw);
  margin:min(0.3333333333vw, 4vw) auto 0;
}
@media screen and (max-width: 767px){
  .p-siding__sectionIcon img{
    width:2.7272727273vw;
    margin:0.9090909091vw auto 0;
  }
}
.p-siding__sectionHeading{
  font-size:min(1.1666666667vw, 14vw);
  font-weight:bold;
  text-align:center;
  margin-bottom:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-siding__sectionHeading{
    font-size:3.1818181818vw;
    margin-bottom:2.2727272727vw;
  }
}
.p-siding__sectionList{
  display:grid;
  gap:min(0.25vw, 3vw);
}
@media screen and (max-width: 767px){
  .p-siding__sectionList{
    gap:0.6818181818vw;
  }
}
.p-siding__sectionList li{
  font-size:min(1.25vw, 15vw);
  font-weight:bold;
}
@media screen and (max-width: 767px){
  .p-siding__sectionList li{
    font-size:3.4090909091vw;
  }
}
.p-siding__sectionList li a{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:min(1.6666666667vw, 20vw) 0;
  background-color:#fff;
}
@media screen and (min-width: 768px){
  .p-siding__sectionList li a{
    transition:opacity 0.3s;
  }
  .p-siding__sectionList li a:hover{
    opacity:0.8;
  }
}
@media screen and (max-width: 767px){
  .p-siding__sectionList li a{
    padding:4.5454545455vw 0;
  }
}
.p-siding__sectionList li svg{
  position:absolute;
  right:min(1.6666666667vw, 20vw);
}
@media screen and (max-width: 767px){
  .p-siding__sectionList li svg{
    right:4.5454545455vw;
  }
}

.p-study{
  margin:min(3.3333333333vw, 40vw) 0;
}
@media screen and (max-width: 767px){
  .p-study{
    margin:9.0909090909vw 0 18.1818181818vw;
  }
}
.p-study__head{
  padding:0 0 min(3.3333333333vw, 40vw);
  border-bottom:#2c628c solid 1px;
}
@media screen and (max-width: 767px){
  .p-study__head{
    padding:0 0 9.0909090909vw;
  }
}
.p-study__icon{
  color:#2c628c;
  text-align:center;
  font-size:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-study__icon{
    font-size:2.2727272727vw;
  }
}
.p-study__icon img{
  display:block;
  width:min(1vw, 12vw);
  margin:min(0.3333333333vw, 4vw) auto 0;
}
@media screen and (max-width: 767px){
  .p-study__icon img{
    width:2.7272727273vw;
    margin:0.9090909091vw auto;
  }
}
.p-study__heading{
  font-size:min(1.3333333333vw, 16vw);
  font-weight:bold;
  text-align:center;
  margin:min(0.8333333333vw, 10vw) 0 min(1.6666666667vw, 20vw);
}
@media screen and (max-width: 767px){
  .p-study__heading{
    font-size:3.6363636364vw;
    margin:2.2727272727vw 0 4.5454545455vw;
  }
}
.p-study__img{
  text-align:center;
  margin:min(1.6666666667vw, 20vw) auto 0;
  width:min(34.8333333333vw, 418vw);
}
@media screen and (max-width: 767px){
  .p-study__img{
    margin:4.5454545455vw auto 0;
    width:76.1363636364vw;
  }
}

.c-section{
  padding:min(3.3333333333vw, 40vw) 0 0;
}
@media screen and (max-width: 767px){
  .c-section{
    padding:9.0909090909vw 0 0;
  }
}

.p-study__section{
  padding:0 0 min(3.3333333333vw, 40vw);
  border-bottom:#ccc solid 1px;
}
@media screen and (max-width: 767px){
  .p-study__section{
    padding:0 0 9.0909090909vw;
  }
}
.p-study__section--noborder{
  border-bottom:none;
}

.p-study__box{
  margin:min(3.3333333333vw, 40vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-study__box{
    margin:9.0909090909vw 0 0;
  }
}

.p-study-typeimg{
  display:flex;
  flex-wrap:wrap;
  gap:min(0.5vw, 6vw);
}
@media screen and (max-width: 767px){
  .p-study-typeimg{
    gap:1.3636363636vw;
  }
}
.p-study-typeimg p{
  width:100%;
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .p-study-typeimg p{
    font-size:2.7272727273vw;
  }
}
.p-study-typeimg figure{
  width:min(9.6666666667vw, 116vw);
}
@media screen and (max-width: 767px){
  .p-study-typeimg figure{
    width:26.3636363636vw;
  }
}
.p-study-typeimg figcaption{
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .p-study-typeimg figcaption{
    font-size:2.7272727273vw;
  }
}

.p-cnav{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:min(1.6666666667vw, 20vw);
  margin:min(2.5vw, 30vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-cnav{
    grid-template-columns:repeat(2, 1fr);
    gap:min(1.25vw, 15vw);
    margin:6.8181818182vw 0 0;
  }
}
.p-cnav li a{
  display:block;
  border-radius:min(4.1666666667vw, 50vw);
  border:#231815 solid 1px;
  padding:min(0.3333333333vw, 4vw) 0;
  letter-spacing:0;
  text-align:center;
}
@media screen and (max-width: 767px){
  .p-cnav li a{
    border-radius:11.3636363636vw;
    padding:0.9090909091vw 0;
  }
}
@media screen and (min-width: 768px){
  .p-cnav li a:hover{
    background-color:#2c628c;
    color:#fff;
  }
}

.p-lineup-section{
  margin:min(6.6666666667vw, 80vw) 0;
  padding:min(4.1666666667vw, 50vw) 0 0;
  border-top:#2c628c solid 1px;
}
@media screen and (max-width: 767px){
  .p-lineup-section{
    margin:9.0909090909vw 0;
    padding:9.0909090909vw 0 0;
  }
}

.p-lineup-section__heading{
  font-size:min(1.5vw, 18vw);
  font-weight:bold;
  text-align:center;
}
@media screen and (max-width: 767px){
  .p-lineup-section__heading{
    font-size:4.0909090909vw;
  }
}

.p-lineup-section__content{
  display:grid;
  grid-template-columns:min(39.3333333333vw, 472vw) 1fr;
  gap:min(3.3333333333vw, 40vw);
  margin:min(3.3333333333vw, 40vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-lineup-section__content{
    grid-template-columns:1fr;
    gap:4.5454545455vw;
    margin:4.5454545455vw 0 0;
  }
}

@media screen and (max-width: 767px){
  .p-lineup-section__figure{
    width:100%;
    height:82.7272727273vw;
  }
  .p-lineup-section__figure img{
    width:100%;
    height:100%;
    -o-object-fit:cover;
       object-fit:cover;
  }
}

.p-lineup-section__color{
  font-size:min(1vw, 12vw);
  font-weight:bold;
  border-top:#999 solid 1px;
  margin:min(2.5vw, 30vw) 0 min(0.3333333333vw, 4vw);
  padding:min(2.5vw, 30vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-lineup-section__color{
    font-size:2.7272727273vw;
    margin:6.8181818182vw 0 0.9090909091vw;
    padding:6.8181818182vw 0 0;
  }
}

.p-lineup-section__colorlist{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-lineup-section__colorlist{
    grid-template-columns:repeat(2, 1fr);
    gap:3.4090909091vw 5.6818181818vw;
  }
}

.p-lineup-section__colorFigure figcaption{
  font-size:min(1vw, 12vw);
  padding:min(0.4166666667vw, 5vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-lineup-section__colorFigure figcaption{
    font-size:2.7272727273vw;
    padding:1.1363636364vw 0 0;
  }
}
.p-lifestyle-section{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:min(2.9166666667vw, 35vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle-section{
    grid-template-columns:1fr;
    gap:7.9545454545vw;
  }
}
@media screen and (min-width: 768px){
  .p-lifestyle-section a{
    transition:opacity 0.3s;
  }
  .p-lifestyle-section a:hover{
    opacity:0.8;
  }
}

.p-lifestyle-section__meta{
  position:relative;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle-section__meta{
    gap:2.2727272727vw;
    margin-top:1.1363636364vw;
  }
}

.p-lifestyle-section__number{
  justify-self:start;
  font-size:min(1.75vw, 21vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle-section__number{
    font-size:4.7727272727vw;
  }
}

.p-lifestyle-section__heading{
  justify-self:center;
  font-size:min(1.1666666667vw, 14vw);
}
@media screen and (max-width: 767px){
  .p-lifestyle-section__heading{
    font-size:3.1818181818vw;
  }
}
.p-life-hero{
  display:grid;
  grid-template-columns:repeat(2, 50%);
}
@media screen and (max-width: 767px){
  .p-life-hero{
    grid-template-columns:1fr;
  }
}

.p-life-hero__img img{
  width:100%;
}
@media screen and (min-width: 768px){
  .p-life-hero__img img{
    height:min(45.8333333333vw, 550vw);
    -o-object-fit:cover;
       object-fit:cover;
  }
}

.p-life-heading{
  text-align:center;
  margin:min(3.3333333333vw, 40vw) 0 min(6.6666666667vw, 80vw);
}
@media screen and (max-width: 767px){
  .p-life-heading{
    margin:4.5454545455vw 0 15.9090909091vw;
  }
}

.p-life-heading__no{
  font-size:min(1.75vw, 21vw);
}
@media screen and (max-width: 767px){
  .p-life-heading__no{
    font-size:4.7727272727vw;
  }
}

.p-life-heading__label{
  font-size:min(1.3333333333vw, 16vw);
  margin:min(0.8333333333vw, 10vw) 0;
}
@media screen and (max-width: 767px){
  .p-life-heading__label{
    font-size:3.6363636364vw;
  }
}

.p-life-heading__en{
  font-size:min(0.8333333333vw, 10vw);
  margin:min(0.8333333333vw, 10vw) 0 min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-life-heading__en{
    font-size:2.2727272727vw;
  }
}

.p-life-heading__desc{
  margin:min(2.5vw, 30vw) 0;
}
@media screen and (max-width: 767px){
  .p-life-heading__desc{
    margin:6.8181818182vw 0;
  }
}

.p-life-faq__heading{
  text-align:center;
  font-size:min(0.8333333333vw, 10vw);
  margin:0 0 min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-life-faq__heading{
    font-size:2.2727272727vw;
    margin:0 0 4.5454545455vw;
  }
}

.p-life-faq{
  margin:0 0 min(6.6666666667vw, 80vw);
}
@media screen and (max-width: 767px){
  .p-life-faq{
    margin:0 0 18.1818181818vw;
  }
}
.p-life-faq dt, .p-life-faq dd{
  display:grid;
  grid-template-columns:min(2.0833333333vw, 25vw) 1fr;
  gap:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-life-faq dt, .p-life-faq dd{
    grid-template-columns:5.6818181818vw 1fr;
    gap:2.2727272727vw;
  }
}
.p-life-faq dt::before, .p-life-faq dd::before{
  font-family:yu-gothic-pr6n, "Yu Gothic", "游ゴシック", "YuGothic";
  font-size:min(1.25vw, 15vw);
  margin-right:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-life-faq dt::before, .p-life-faq dd::before{
    font-size:3.4090909091vw;
    margin-right:2.2727272727vw;
  }
}
.p-life-faq dt{
  border-bottom:#999 solid 1px;
  margin:min(4.75vw, 57vw) 0 min(0.8333333333vw, 10vw);
  padding:0 0 min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-life-faq dt{
    margin:4.5454545455vw 0 2.2727272727vw;
    padding:0 0 2.2727272727vw;
  }
}
.p-life-faq dt::before{
  content:"Q";
}
.p-life-faq dd{
  margin:0 0 min(5vw, 60vw);
}
@media screen and (max-width: 767px){
  .p-life-faq dd{
    margin:0 0 13.6363636364vw;
  }
}
.p-life-faq dd::before{
  content:"A";
}

.p-life-data{
  margin:min(3.75vw, 45vw) 0;
}
@media screen and (max-width: 767px){
  .p-life-data{
    display:flex;
    flex-wrap:wrap;
    width:100%;
    gap:0 4.5454545455vw;
    margin:10.2272727273vw 0;
  }
}

.p-life-data__heading{
  text-align:center;
  font-size:min(1vw, 12vw);
  margin:0 0 min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-life-data__heading{
    font-size:3.1818181818vw;
    margin:0 0 2.2727272727vw;
  }
}

.p-life-data__list{
  text-align:center;
  margin:0 0 min(3.3333333333vw, 40vw);
}
@media screen and (max-width: 767px){
  .p-life-data__list{
    text-align:left;
    margin:0;
  }
}

.p-life-color{
  width:100%;
  display:grid;
  grid-template-columns:auto auto;
  justify-content:center;
  gap:min(2.5vw, 30vw);
  border-top:#d7d7d7 solid 1px;
  margin:min(3.3333333333vw, 40vw) 0;
  padding:min(3.3333333333vw, 40vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-life-color{
    grid-template-columns:auto;
    gap:6.8181818182vw;
    margin:5.6818181818vw 0;
    padding:5.6818181818vw 0 0;
  }
}

.p-life-color__section{
  display:grid;
  grid-template-columns:1fr min(7.3333333333vw, 88vw);
  gap:min(1.6666666667vw, 20vw);
  width:min(23.3333333333vw, 280vw);
}
@media screen and (max-width: 767px){
  .p-life-color__section{
    grid-template-columns:1fr 20vw;
    gap:4.5454545455vw;
    width:100%;
  }
}

.p-life-other{
  margin:min(8.3333333333vw, 100vw) 0 min(5vw, 60vw);
  padding:0 0 min(3.3333333333vw, 40vw);
}
@media screen and (max-width: 767px){
  .p-life-other{
    margin:13.6363636364vw 0 13.6363636364vw;
  }
}

.p-life-other__heading{
  text-align:center;
  font-size:min(1vw, 12vw);
  margin:0 0 min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-life-other__heading{
    font-size:2.2727272727vw;
    margin:0 0 6.8181818182vw;
  }
}

.p-life-other__content{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:min(0.6666666667vw, 8vw);
}
@media screen and (max-width: 767px){
  .p-life-other__content{
    grid-template-columns:repeat(2, 1fr);
    gap:3.4090909091vw 1.8181818182vw;
  }
}

.p-life-other__articleHeading{
  font-size:min(1vw, 12vw);
  text-align:center;
  margin:min(0.8333333333vw, 10vw) 0 0;
}
@media screen and (max-width: 767px){
  .p-life-other__articleHeading{
    font-size:2.7272727273vw;
    margin:2.2727272727vw 0 0;
  }
}

.p-life__btnback{
  text-align:center;
  margin:min(5vw, 60vw) 0 min(12.5vw, 150vw);
}
@media screen and (max-width: 767px){
  .p-life__btnback{
    margin:11.3636363636vw 0 22.7272727273vw;
  }
}

.p-contact-head{
  border-top:#2c628c solid 1px;
  padding:min(3.3333333333vw, 40vw) 0 0;
  margin:min(3.75vw, 45vw) 0;
}
@media screen and (max-width: 767px){
  .p-contact-head{
    padding:9.0909090909vw 0 0;
    margin:10.2272727273vw 0;
  }
}

.p-contact-head__heading{
  font-size:min(1.5vw, 18vw);
  font-weight:bold;
  text-align:center;
  margin:0 0 min(1.6666666667vw, 20vw);
}
@media screen and (max-width: 767px){
  .p-contact-head__heading{
    font-size:4.0909090909vw;
    margin:0 0 4.5454545455vw;
  }
}

.p-contact-head__img{
  width:min(23.3333333333vw, 280vw);
  margin:0 auto min(1.6666666667vw, 20vw);
}
@media screen and (max-width: 767px){
  .p-contact-head__img{
    width:45.4545454545vw;
    margin:0 auto 4.5454545455vw;
  }
}

.p-contact-head__desc{
  text-align:center;
}
@media screen and (max-width: 767px){
  .p-contact-head__desc{
    text-align:left;
  }
}

.p-contact-form{
  background-color:#eeeeee;
  padding:min(2.5vw, 30vw) 0 min(3.3333333333vw, 40vw);
}
@media screen and (max-width: 767px){
  .p-contact-form{
    padding:6.8181818182vw 0 9.0909090909vw;
  }
}

.p-contact-form__inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:min(2.5vw, 30vw);
  margin:min(1.6666666667vw, 20vw) 0;
}
@media screen and (max-width: 767px){
  .p-contact-form__inner{
    grid-template-columns:1fr;
    gap:3.4090909091vw;
    margin:4.5454545455vw 0;
  }
}

.p-contact-form__box{
  display:flex;
  align-items:center;
  gap:0 min(0.5vw, 6vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__box{
    gap:2.2727272727vw;
  }
}
.p-contact-form__box--full{
  flex-wrap:wrap;
}

.p-contact-form__input{
  width:min(18.8333333333vw, 226vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__input{
    width:45.4545454545vw;
  }
}
.p-contact-form__input--half{
  width:min(10.4166666667vw, 125vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__input--half{
    width:28.4090909091vw;
  }
}

.p-contact-form__select{
  width:min(14.1666666667vw, 170vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__select{
    width:34.0909090909vw;
  }
}

.p-contact-form__boxselect{
  position:relative;
}
.p-contact-form__boxselect::before{
  content:"";
  position:absolute;
  right:min(1vw, 12vw);
  top:min(0.9166666667vw, 11vw);
  width:min(0.9166666667vw, 11vw);
  height:min(0.6666666667vw, 8vw);
  background-color:#231815;
  clip-path:polygon(100% 0%, 0% 0%, 50% 100%);
}
@media screen and (max-width: 767px){
  .p-contact-form__boxselect::before{
    right:2.7272727273vw;
    top:2.7272727273vw;
    width:2.5vw;
    height:1.8181818182vw;
  }
}

.p-contact-form__title{
  margin:min(0.25vw, 3vw) auto min(0.25vw, 3vw) 0;
  font-size:min(1vw, 12vw);
}
.p-contact-form__title--inline{
  margin:0;
}
@media screen and (max-width: 767px){
  .p-contact-form__title{
    font-size:2.7272727273vw;
    margin:min(0.25vw, 3vw) auto 0.6818181818vw 0;
  }
}

.c-checkbox label{
  display:flex;
  align-items:center;
  flex-direction:row-reverse;
  gap:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .c-checkbox label{
    gap:2.2727272727vw;
  }
}
.c-checkbox .mwform-checkbox-field-text{
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .c-checkbox .mwform-checkbox-field-text{
    font-size:2.7272727273vw;
  }
}

.p-contact-form__check{
  -moz-appearance:none;
       appearance:none;
  -webkit-appearance:none;
  width:min(2.3333333333vw, 28vw);
  height:min(2.3333333333vw, 28vw);
  border:1px solid #ACA8A7;
  display:inline-block;
  position:relative;
  margin-right:min(0.6666666667vw, 8vw);
  background-color:#fff;
  cursor:pointer;
  transition:all 0.2s;
}
@media screen and (max-width: 767px){
  .p-contact-form__check{
    width:6.3636363636vw;
    height:6.3636363636vw;
    margin-right:1.8181818182vw;
  }
}
.p-contact-form__check:checked{
  background-color:#fff;
}
.p-contact-form__check:checked::after{
  content:"";
  position:absolute;
  top:min(0.25vw, 3vw);
  left:min(0.5833333333vw, 7vw);
  width:min(0.8333333333vw, 10vw);
  height:min(1.25vw, 15vw);
  border-right:min(0.25vw, 3vw) solid #231815;
  border-bottom:min(0.25vw, 3vw) solid #231815;
  transform:rotate(45deg);
}
@media screen and (max-width: 767px){
  .p-contact-form__check:checked::after{
    top:0.6818181818vw;
    left:1.5909090909vw;
    width:2.2727272727vw;
    height:3.4090909091vw;
    border-right-width:0.6818181818vw;
    border-bottom-width:0.6818181818vw;
  }
}

.p-contact-form__area{
  margin-top:min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__area{
    margin-top:4.5454545455vw;
  }
}

.p-contact-form__note li{
  font-size:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__note li{
    font-size:2.2727272727vw;
  }
}
.p-contact-form__note li::before{
  content:"※";
  margin-right:min(0.4166666667vw, 5vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__note li::before{
    margin-right:1.1363636364vw;
  }
}

.p-contact-form__btn{
  text-align:center;
  margin:min(1.6666666667vw, 20vw) 0 min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__btn{
    margin:4.5454545455vw 0 6.8181818182vw;
  }
}

.c-btn-submit{
  cursor:pointer;
  border-radius:0;
  -moz-appearance:none;
       appearance:none;
  -webkit-appearance:none;
  background-color:#2c628c;
  color:#fff;
  border:none;
  width:min(20vw, 240vw);
  padding:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .c-btn-submit{
    width:54.5454545455vw;
    padding:2.2727272727vw;
  }
}
.c-btn-submit[data-disabled=true]{
  cursor:not-allowed;
  background-color:#999 !important;
}

.c-btn-confirm{
  cursor:pointer;
  -moz-appearance:none;
       appearance:none;
  -webkit-appearance:none;
  background-color:#999;
  color:#fff;
  border:none;
  width:min(20vw, 240vw);
  padding:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .c-btn-confirm{
    width:100%;
  }
}

.p-contact-form__privacy{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:min(0.8333333333vw, 10vw);
  margin-top:min(2.5vw, 30vw);
  text-align:center;
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__privacy{
    gap:2.2727272727vw;
    margin-top:4.5454545455vw;
    padding:2.2727272727vw;
    font-size:2.7272727273vw;
  }
}
.p-contact-form__privacy .p-contact-form__privacy__text .p-contact-form__privacy__link{
  color:#2c628c;
  text-decoration:underline;
  text-underline-offset:2px;
  font-weight:bold;
}
.p-contact-form__privacy .p-contact-form__privacy__checkbox{
  display:flex;
  justify-content:center;
  align-items:center;
}
.p-contact-form__privacy .p-contact-form__privacy__checkbox input{
  cursor:pointer;
  margin:0;
}
.p-contact-form__privacy .p-contact-form__privacy__checkbox label{
  display:flex;
  justify-content:center;
  align-items:center;
}
.p-contact-form__privacy .p-contact-form__privacy__checkbox .mwform-checkbox-field-text{
  font-size:min(1vw, 12vw);
  margin-left:min(0.6666666667vw, 8vw);
}
@media screen and (max-width: 767px){
  .p-contact-form__privacy .p-contact-form__privacy__checkbox .mwform-checkbox-field-text{
    font-size:2.7272727273vw;
    margin-left:1.8181818182vw;
  }
}

body.page-template-page-contact-complete .p-contact-form__privacy{
  display:none;
}

.mw_wp_form_confirm .p-contact-form__box{
  flex-wrap:wrap;
}
.mw_wp_form_confirm .p-contact-form__title{
  width:100%;
}
.mw_wp_form_confirm .p-contact-form__boxselect::before{
  display:none;
}

.mw_wp_form_complete{
  margin:min(1.6666666667vw, 20vw) 0;
}

.p-flowwrap{
  margin:0 0 min(5vw, 60vw);
}
@media screen and (max-width: 767px){
  .p-flowwrap{
    margin:0 0 13.6363636364vw;
  }
}

.p-flow{
  display:grid;
  grid-template-columns:min(2.0833333333vw, 25vw) 1fr;
  gap:min(2.5vw, 30vw);
  margin:0 0 min(1.25vw, 15vw);
}
@media screen and (max-width: 767px){
  .p-flow{
    grid-template-columns:5.6818181818vw 1fr;
    gap:5vw;
    margin:0 0 3.4090909091vw;
  }
}

.p-flow__line{
  position:relative;
}
.p-flow__line::before{
  content:"";
  display:block;
  position:absolute;
  width:min(0.5vw, 6vw);
  height:min(0.5vw, 6vw);
  border-radius:min(0.5vw, 6vw);
  left:min(0.75vw, 9vw);
  background-color:#2c628c;
}
@media screen and (max-width: 767px){
  .p-flow__line::before{
    width:1.3636363636vw;
    height:1.3636363636vw;
    border-radius:1.3636363636vw;
    left:2.0454545455vw;
  }
}
.p-flow__line::after{
  content:"";
  display:block;
  position:absolute;
  width:min(0.5833333333vw, 7vw);
  height:min(0.5vw, 6vw);
  bottom:0;
  left:min(0.7083333333vw, 8.5vw);
  background-color:#2c628c;
  clip-path:polygon(0 0, 100% 0, 50% 100%);
}
@media screen and (max-width: 767px){
  .p-flow__line::after{
    width:1.5909090909vw;
    height:1.3636363636vw;
    left:1.8181818182vw;
  }
}
.p-flow__line span{
  writing-mode:rl;
  line-height:1;
}
.p-flow__line p{
  position:relative;
  top:min(1.6666666667vw, 20vw);
  z-index:1;
  display:inline-block;
  letter-spacing:0;
  writing-mode:vertical-rl;
  text-orientation:upright;
  white-space:nowrap;
  font-size:min(1vw, 12vw);
  color:#fff;
  background-color:#2c628c;
  padding:min(1vw, 12vw) min(0.0833333333vw, 1vw);
  border-radius:min(4.1666666667vw, 50vw);
}
@media screen and (max-width: 767px){
  .p-flow__line p{
    top:4.5454545455vw;
    font-size:2.7272727273vw;
    padding:3.4090909091vw 0.2272727273vw;
    border-radius:11.3636363636vw;
  }
}

.p-flow__lineBorder{
  position:absolute;
  top:0;
  left:min(0.9583333333vw, 11.5vw);
  width:min(0.0833333333vw, 1vw);
  height:100%;
  background-color:#2c628c;
}
@media screen and (max-width: 767px){
  .p-flow__lineBorder{
    left:2.5vw;
    width:1px;
  }
}

.p-flow__section{
  padding:0 0 min(5vw, 60vw);
}
@media screen and (max-width: 767px){
  .p-flow__section{
    padding:0 0 13.6363636364vw;
  }
}

.p-flow__heading{
  display:flex;
  align-items:center;
  gap:min(0.8333333333vw, 10vw);
  font-size:min(1.3333333333vw, 16vw);
  font-weight:bold;
  line-height:1;
  margin:0 0 min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-flow__heading{
    gap:2.2727272727vw;
    font-size:3.6363636364vw;
    margin:0 0 2.2727272727vw;
  }
}
.p-flow__heading span{
  font-size:min(2.25vw, 27vw);
  color:#2c628c;
  font-weight:normal;
}
@media screen and (max-width: 767px){
  .p-flow__heading span{
    font-size:6.1363636364vw;
  }
}

.p-flow__content{
  display:grid;
  grid-template-columns:min(36.0833333333vw, 433vw) 1fr;
  gap:min(2.5vw, 30vw);
  margin:0 0 min(3.3333333333vw, 40vw);
}
@media screen and (max-width: 767px){
  .p-flow__content{
    grid-template-columns:1fr;
    gap:2.2727272727vw;
    margin:0 0 6.8181818182vw;
  }
}

.p-flow__note{
  border:#999 solid 1px;
  margin:min(1.25vw, 15vw) 0;
  padding:min(2.0833333333vw, 25vw) min(2.5vw, 30vw);
}
@media screen and (max-width: 767px){
  .p-flow__note{
    margin:3.4090909091vw 0;
    padding:5.6818181818vw 5.6818181818vw;
  }
}

.p-flow__noteHeading{
  font-weight:bold;
  margin:0 0 min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .p-flow__noteHeading{
    margin:0 0 2.2727272727vw;
  }
}

.p-flow__list li{
  font-size:min(1vw, 12vw);
}
@media screen and (max-width: 767px){
  .p-flow__list li{
    font-size:2.7272727273vw;
  }
}
.p-flow__list li::before{
  content:"＊";
  margin-right:min(0.1666666667vw, 2vw);
}
@media screen and (max-width: 767px){
  .p-flow__list li::before{
    margin-right:0.4545454545vw;
  }
}

.icon-arrow{
  width:min(0.9166666667vw, 11vw);
  height:min(0.75vw, 9vw);
}
@media screen and (max-width: 767px){
  .icon-arrow{
    width:2.5vw;
    height:2.0454545455vw;
  }
}

.icon-carrow{
  width:min(1.8333333333vw, 22vw);
  height:min(1.8333333333vw, 22vw);
}
@media screen and (max-width: 767px){
  .icon-carrow{
    width:5vw;
    height:5vw;
  }
}

.icon-insta{
  width:min(1.4166666667vw, 17vw);
  height:min(1.4166666667vw, 17vw);
}
@media screen and (max-width: 767px){
  .icon-insta{
    width:3.8636363636vw;
    height:3.8636363636vw;
  }
}

.pc{
  display:block;
}
@media screen and (max-width: 767px){
  .pc{
    display:none;
  }
}

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

.self-center{
  align-self:center;
}

.btn{
  display:inline-block;
  background-color:#2c628c;
  color:#fff;
  border:none;
  font-size:min(1.0833333333vw, 13vw);
  border-radius:min(4.1666666667vw, 50vw);
  padding:min(0.6666666667vw, 8vw) min(1.8333333333vw, 22vw);
  cursor:pointer;
}
@media screen and (max-width: 767px){
  .btn{
    font-size:2.9545454545vw;
    border-radius:11.3636363636vw;
    padding:1.8181818182vw 5vw;
  }
}
@media screen and (min-width: 768px){
  .btn{
    transition:background-color 0.3s;
  }
  .btn:hover{
    background-color:#204765;
  }
}
.btn svg{
  flex-shrink:0;
}

.btn--block{
  display:block;
  text-align:center;
}

.btn--large{
  font-size:min(1.3333333333vw, 16vw);
  padding:min(1vw, 12vw) min(2.5vw, 30vw);
  min-width:min(30.3333333333vw, 364vw);
  letter-spacing:min(0.1666666667vw, 2vw);
}
@media screen and (max-width: 767px){
  .btn--large{
    font-size:3.6363636364vw;
    padding:2.7272727273vw 6.8181818182vw;
    min-width:82.7272727273vw;
    letter-spacing:0.4545454545vw;
  }
}

.btn--white{
  background-color:#fff;
  color:#231815;
}
.btn--white:hover{
  opacity:0.8;
  background-color:#fff;
}

.btn--arrowleft svg{
  margin-right:min(1.25vw, 15vw);
}
@media screen and (max-width: 767px){
  .btn--arrowleft svg{
    margin-right:3.4090909091vw;
  }
}

.btn--arrowright{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
}
.btn--arrowright svg{
  margin-left:min(1.25vw, 15vw);
}
@media screen and (max-width: 767px){
  .btn--arrowright svg{
    margin-left:3.4090909091vw;
  }
}

.btn--line{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  justify-content:center;
  color:#2c628c;
  background-color:#fff;
  border:1px solid #2c628c;
  font-size:min(1.3333333333vw, 16vw);
  width:min(30vw, 360vw);
  margin:0 auto;
}
@media screen and (max-width: 767px){
  .btn--line{
    font-size:3.6363636364vw;
    width:100%;
  }
}
.btn--line:hover{
  background-color:#f2f2f2;
}
.btn--line svg{
  justify-self:start;
  transform:scaleX(-1);
}

.c-bnr:not(.c-bnr:first-child){
  border-bottom:#fff solid 1px;
}

.c-bnr__anchor{
  display:grid;
  grid-template-areas:"stack";
  place-items:center;
}
@media screen and (min-width: 768px){
  .c-bnr__anchor{
    transition:opacity 0.3s;
  }
  .c-bnr__anchor:hover{
    opacity:0.8;
  }
}

.c-bnr__meta{
  color:#fff;
  grid-area:stack;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

.c-bnr__title{
  font-size:min(0.8333333333vw, 10vw);
}
@media screen and (max-width: 767px){
  .c-bnr__title{
    font-size:2.2727272727vw;
  }
}

.c-bnr__heading{
  font-size:min(1.8333333333vw, 22vw);
  margin:min(0.8333333333vw, 10vw) 0;
}
@media screen and (max-width: 767px){
  .c-bnr__heading{
    font-size:5vw;
    margin:2.2727272727vw 0;
  }
}

.c-bnr__link{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:min(0.8333333333vw, 10vw);
  font-size:min(1.25vw, 15vw);
  font-weight:bold;
  margin-top:min(1.25vw, 15vw);
}
@media screen and (max-width: 767px){
  .c-bnr__link{
    gap:2.2727272727vw;
    font-size:3.4090909091vw;
    margin-top:3.4090909091vw;
  }
}

.c-bnr__img{
  grid-area:stack;
  width:100%;
}
.c-bnr__img img{
  width:100%;
  max-width:100%;
  height:100%;
  display:block;
  -o-object-fit:cover;
     object-fit:cover;
}

.c-lifestyle-gallery{
  width:100%;
  overflow:hidden;
  position:relative;
}
.c-lifestyle-gallery__item{
  flex-shrink:0;
  width:min(24.4166666667vw, 293vw);
}
@media screen and (max-width: 767px){
  .c-lifestyle-gallery__item{
    width:66.5909090909vw;
    height:92.5vw;
  }
}
.c-lifestyle-gallery__item picture, .c-lifestyle-gallery__item img{
  width:100%;
  height:100%;
  display:block;
}
.c-lifestyle-gallery__item img{
  -o-object-fit:cover;
     object-fit:cover;
  opacity:0;
  animation:fadeIn 0.6s ease-in-out forwards;
}

@keyframes fadeIn{
  to{
    opacity:1;
  }
}
.swiper{
  width:100%;
  height:100%;
}
.swiper .swiper-slide{
  display:flex;
  justify-content:center;
  align-items:center;
}
.swiper .swiper-slide img{
  width:100%;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  display:block;
}
.swiper .swiper-pagination{
  position:absolute !important;
  bottom:20px !important;
  right:20px !important;
  left:auto !important;
  width:auto !important;
  text-align:right;
}
@media screen and (max-width: 767px){
  .swiper .swiper-pagination{
    bottom:15px !important;
    right:15px !important;
  }
}
.swiper .swiper-pagination-bullet-custom{
  width:min(0.5833333333vw, 7vw);
  height:min(0.5833333333vw, 7vw);
  background:#fff;
  border-radius:50%;
  margin:0 4px;
  cursor:pointer;
  transition:all 0.3s ease;
  display:inline-block;
}
@media screen and (max-width: 767px){
  .swiper .swiper-pagination-bullet-custom{
    width:1.5909090909vw;
    height:1.5909090909vw;
  }
}
.swiper .swiper-pagination-bullet-custom:hover{
  background:rgba(255, 255, 255, 0.8);
}
.swiper .swiper-pagination-bullet-custom-active{
  background:#2c628c;
}

.p-about__gallery{
  position:relative;
  width:100%;
  height:min(36.6666666667vw, 440vw);
  overflow:hidden;
}
@media screen and (max-width: 767px){
  .p-about__gallery{
    height:100vw;
  }
}
.p-about__gallery .swiper{
  height:100%;
}
.p-about__gallery .p-about__galleryImg{
  width:100%;
  height:100%;
}
.p-about__gallery .p-about__galleryImg img{
  width:100%;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  opacity:0;
  animation:fadeInImage 0.8s ease-in-out forwards;
}

@keyframes fadeInImage{
  to{
    opacity:1;
  }
}
.swiper-fade .swiper-slide{
  pointer-events:none;
  transition-property:opacity;
}
.swiper-fade .swiper-slide-active{
  pointer-events:auto;
}

.c-heading{
  margin:min(3.3333333333vw, 40vw) 0 min(5.8333333333vw, 70vw);
}
@media screen and (max-width: 767px){
  .c-heading{
    margin:9.0909090909vw 0;
  }
}

.c-heading__label{
  text-align:center;
  font-size:min(1.5vw, 18vw);
  font-weight:bold;
}
@media screen and (max-width: 767px){
  .c-heading__label{
    font-size:4.0909090909vw;
  }
}
.c-heading__label--en{
  font-weight:normal;
}

.c-heading__tag{
  text-align:center;
  font-size:min(0.8333333333vw, 10vw);
  color:#2c628c;
}
@media screen and (max-width: 767px){
  .c-heading__tag{
    font-size:2.2727272727vw;
  }
}

.c-heading__desc{
  display:flex;
  justify-content:center;
  margin:min(2.5vw, 30vw) 0 0;
}
@media screen and (max-width: 767px){
  .c-heading__desc{
    text-align:left;
    margin:6.8181818182vw 0 0;
  }
}
.c-heading__desc--center{
  text-align:center;
}
@media screen and (max-width: 767px){
  .c-heading__desc--center{
    text-align:left;
  }
}

.c-pagination{
  margin:min(7.5vw, 90vw) 0;
}
@media screen and (max-width: 767px){
  .c-pagination{
    margin:13.6363636364vw 0;
  }
}

.c-pagination__nav{
  display:flex;
  justify-content:center;
  gap:min(0.6666666667vw, 8vw);
}
@media screen and (max-width: 767px){
  .c-pagination__nav{
    gap:1.8181818182vw;
  }
}
.c-pagination__nav a, .c-pagination__nav span{
  min-width:min(1.6666666667vw, 20vw);
  text-align:center;
}
@media screen and (max-width: 767px){
  .c-pagination__nav a, .c-pagination__nav span{
    min-width:4.5454545455vw;
  }
}
.c-pagination__nav .active{
  text-decoration:underline;
}
@media screen and (min-width: 768px){
  .c-pagination__nav a:hover{
    text-decoration:underline;
  }
}
.js-reveal{
  opacity:0;
  transform:translateY(30px);
  transition:opacity 0.8s ease-out, transform 0.8s ease-out;
}
.js-reveal.is-hidden{
  opacity:0;
  transform:translateY(30px);
}
.js-reveal.is-revealed{
  opacity:1;
  transform:translateY(0);
}

.no-js .js-reveal{
  opacity:1 !important;
  transform:none !important;
}

.js-reveal[data-reveal-delay]{
  transition-delay:var(--reveal-delay, 0s);
}

@media screen and (max-width: 767px){
  .js-reveal.is-hidden{
    transform:translateY(20px);
  }
}
@media (prefers-reduced-motion: reduce){
  .js-reveal{
    transition:none !important;
  }
  .js-reveal.is-hidden{
    opacity:0;
    transform:none;
  }
  .js-reveal.is-revealed{
    opacity:1;
    transform:none;
  }
}