@charset "UTF-8";
/* CSS Document */ :root {
  --fnt-serif: "Noto Serif JP", 游明朝体, YuMincho, 游明朝, Yu Mincho, serif;
  --fnt-sans: 'Noto Sans JP', sans-serif;
  --fnt-mos:'Montserrat',sans-serif;
  
  --head2:min(46px, 6.5vw);
  --head2_wid:min(42px, calc(100vw/16));
  --clr-pink: #e48581;
  --clr-org:#ebd199;
  --clr-mos-pink:#dfc5c4;
  --wall_beg: #f7eff2;
  --wall-pink:#f6cac7;
  --wall-opa-pink:rgba(223,197,196,.4);
  --wall-gry: #f2f4f7;
  --wall-beg:#f1ede8;
}
/*Common 
===============================================================*/
body {
  font-family: var(--fnt-sans);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-size: min(16px, 3.6vw);
  width: 100%;
  height: 100%;
  background: #FFFAFA;
  color: #333;
}
.inner {
  width: min(1300px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-left: min(50px, 6vw);
  padding-right: min(50px, 6vw);
}
.fl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.fl_c {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.ai_c {
  -ms-align-items: center;
  align-items: center;
}
.fnt-sans {
  font-family: var(--fnt-sans);
}
.fnt-serif {
  font-family: var(--fnt-serif);
}
.fnt-mos{
  font-family: 'Montserrat';
  font-weight: 200;
}
#pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  cursor: pointer;
  z-index: 5;
  display: none;
}
#pagetop.is-fit {
  position: absolute;
  bottom: auto;
  top: 0;
  transform: translateY(-100%);
}
.in-text {
  line-height: 1.6;
  text-align: justify;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.in-text.cnt {
  text-align: center;
}
.in-text.min {
  line-height: calc(20/12);
  font-size: min(14px, 3vw);
}
a.cvr {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.wall-gry {
  background: var(--wall-gry);
}
.pd-btm {
  padding-bottom: min(50px, 15vw);
}

/*fix nav*/
#fix-nav{
  z-index: calc(infinity);
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 0;
  background: #fff;
  padding-bottom: env(safe-area-inset-bottom);
  border-top: 1px solid #dddddd;
  translate:0 100%;
  transition:translate .3s ease;
}
#fix-nav.is-show{
  translate:0 0;
}
#fix-nav.is-fixed.is-show{
  position: absolute;
  bottom: auto;
  top: 0;
  translate:0 -100%;
  padding-bottom: 0;
}
.fix-nav-wrap{
  display: grid;
  grid-template-columns: repeat(4,1fr);
}
.fix-nav-wrap > div{
  display: grid;
  grid-template-columns: 25% auto;
  -ms-align-items: center;
  align-items: center;
  border-bottom: 3px solid;
  border-bottom-color: var(--bdr-clr);
  padding: min(3vw,10px) min(1.5vw,5px) min(3vw,10px) 2px;
  gap:2px;
}
.fix-nav-wrap > div:not(:first-child){
  border-left: 1px solid #ddd;
}
.fix-nav-wrap > div.active{
  background: var(--active-bg);
}
.fix-nav-wrap > div .text{
  font-size: min(9px,calc(100vw/22));
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: calc(25/18);
}
.fix-nav-wrap > div[data-tag="link-que"]{
  --bdr-clr: #ddd;
  --active-bg:rgba(221,221,221,.2);
}
.fix-nav-wrap > div[data-tag="link-part01"]{
  --bdr-clr: #ddb5b3;
  --active-bg:rgba(221,181,179,.2);
}
.fix-nav-wrap > div[data-tag="link-part02"]{
  --bdr-clr: #ddb3c8;
  --active-bg:rgba(221,179,200,.2);
}
.fix-nav-wrap > div[data-tag="link-part03"]{
  --bdr-clr: #d7c4a9;
  --active-bg:rgba(215,196,169,.2);
}

/*Container 
===============================================================*/
#container {
  width: 100vw;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  min-height: 100dvh;
  overflow-x: hidden;
  /*
  -ms-overflow-style: none;
  scrollbar-width: none;
*/
}
/*
#container::-webkit-scrollbar {
  display: none;
}
*/
.js-shade p {
  overflow: hidden;
}
.js-shade p::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 5rem);
  background-image: linear-gradient(180deg, hsla(0, 0%, 100%, 0), #fff 5rem, #fff);
  content: "";
  transition: translate 3s;
  transition-delay: .5s;
}
.js-shade p {
  transform: translateY(-2rem);
  opacity: 0;
  transition: opacity 1s cubic-bezier(.22, .46, 0, .98), transform 1.5s cubic-bezier(.22, .46, 0, .98);
  transition-delay: .5s, .5s;
}
.js-shade.aos-animate p {
  transform: translateY(0);
  opacity: 1;
  line-height: 2;
}
.js-shade.aos-animate p::after {
  translate: 0 100%;
}
/*header hero
========================================*/
header {
  width: 100%;
  aspect-ratio: 1/1.5833;
  overflow: hidden;
}
#hero {
  width: 100%;
  height: 100svh;
  overflow: hidden;
}
#hero img {
  object-fit: cover;
  height: 100%;
  object-position: center top;
}
header::after{
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../images/fv/fv_cover_sp.png");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.head-title{
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
  top: 0;
  left: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: flex-end;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: min(20vw,100px);  
}
.head-title h1{
  width: min(90%,830px);
}
/*Main
========================================*/
main {
  flex: 1;
}
.wall_diag_btm::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: min(140px, 8vw);
  clip-path: polygon(0 0, 100% 100%, 100% 0);
  translate: 0 calc(100% - 1px);
  background: var(--wall_beg);
  z-index: 1;
}
.clr-pink {
  color: var(--clr-pink);
}
.wall_trg_top::after {
  content: "";
  width: 100%;
  aspect-ratio: 1/0.1293;
  background: var(--wall_beg);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  top: 0;
  left: 0;
}
.icn-arrow {
  height: 4.25em;
}
.icn-arrow svg {
  object-fit: cover;
  height: 100%;
  object-position: center top;
  scale: 1 0;
  transition: scale 1s ease-in-out;
  transition-delay: .5s;
  transform-origin: top;
}
.udl_pink {
  padding: 0 5px;
  background: linear-gradient(rgba(236, 220, 220, 0)70%, rgba(236, 220, 220, 1)70%);
}
.udl_org {
  background: linear-gradient(rgba(235, 209, 153, 0)70%, rgba(235, 209, 153, .6)70%);
}
.sup-voice {
  width: 100%;
  display: grid;
  grid-template-columns: min(100px, 12vw) auto;
  gap: min(15px, 3vw);
  --cmnt-wall: var(--wall-clr);
  --title-wall: var(--wall-title);
}
.sup-voice .thumb figure {
  width: 100%;
  aspect-ratio: 1/1;
  background: #ccc;
  border-radius: 100vmax;
}
.sup-voice .comment {
  padding: min(15px, 4vw) min(15px, 3vw);
  background: var(--wall-clr);
  border-radius: min(10px, 2vw);
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.sup-voice .comment::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 1em;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  width: min(10px, 2.5vw);
  aspect-ratio: 1/1.25;
  background: var(--wall-clr);
  translate: -100% 0;
}
.sup-voice .comment .in-title {
  background: var(--title-wall);
  color: #fff;
  font-family: var(--fnt-serif);
  padding: 4px 10px;
  border-radius: 100vmax;
  font-weight: 600;
}
.sup-voice .comment .in-text {
  font-size: min(14px, 3.35vw);
  margin-top: .5em;
  line-height: calc(20/14);
}
.js-acd-list dt {
  cursor: pointer;
  border: 1px solid;
}
.js-acd-list dt::before, .js-acd-list dt::after {
  content: "";
  width: 1.5em;
  height: 1px;
  background: #000;
  position: absolute;
  right: 1em;
  top: 50%;
  translate: 0 -50%;
  transition: rotate .3s ease;
}
.js-acd-list dt::after {
  rotate: 90deg;
}
.js-acd-list dt.is-open::before {
  rotate: -45deg;
}
.js-acd-list dt.is-open::after {
  rotate: 45deg;
}
.js-acd-list dt p {
  padding: 1em 1.5em;
}
.js-acd-list dd {
  display: none;
}
.d-line-upper::before{
  content: "";
  width: calc(100% - min(100px,10vw));
  height: 5px;
  position: absolute;
  top: 0;
  left: 50%;
  translate:-50% 0;
  background: url("../images/svg/double-line.svg") repeat-x center top/auto 100%;
}
/*Content
=====================================*/
#content {
  background: var(--wall_beg);
}
/*section - intro
*/
.sec-intro-blc {
  padding-bottom: min(50px, 8vw);
}
.sec-intro_comment {
  padding-top: min(50px, 15vw);
  padding-bottom: 8em;
  padding-left: min(50px, 3vw);
  padding-right: min(50px, 3vw);
  background: linear-gradient(180deg, rgba(255, 255, 255, 1) calc(100% - (100vw * 0.444)), rgba(255, 255, 255, 0) calc(100% - (100vw * 0.444)));
  overflow: hidden;
}
.sec-intro_comment::before {
  content: "";
  width: 100vw;
  aspect-ratio: 1/0.444;
  background: url("../images/wall/h_ccl.svg") no-repeat bottom center/cover;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
}
.sec-intro_comment::after {
  content: "";
  width: 1px;
  height: 5em;
  background: #333;
  position: absolute;
  left: 50%;
  bottom: 1.5em;
  translate: -50% 0;
  scale: 1 0;
  transition: scale 1s ease;
  transition-delay: 2s;
  transform-origin: top center;
}
.sec-intro_comment.aos-animate::after {
  scale: 1 1;
}
/*contents index*/
.sec-intro-index {
  margin-top: min(80px, 10vw);
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  gap: min(80px, 10vw) min(75px, 5vw);
  padding-bottom: min(40px,5vw);
}
.intro-movie-wrap {
  width: min(370px, 90%);
  aspect-ratio: 9/16;
  background: #333;
}
.items-index-title {
  display: flex;
  justify-content: center;
  font-size: min(24px, 5vw);
  padding-bottom: 10px;
  font-weight: 700;
}
.items-index-title::after {
  content: "";
  width: 3em;
  height: 1px;
  background: #333;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
}
.items-index-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(15vw, 50px) min(10vw, 30px);
  margin-top: min(50px, 8vw);
}
.items-index-list li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap: min(20px, 3vw);
}
.items-index-list li .thumb {
  width: 100%;
}
.items-index-list li .thumb .tag {
  position: absolute;
  top: 0;
  left: .5em;
  z-index: 1;
  translate: 0 -50%;
  width: 18%;
  aspect-ratio: 1/1.641;
}
.items-index-list li .thumb .tag.que{
  aspect-ratio:1/1.3415;
  width: 25%;
}
.items-index-list li .thumb .tag img {
  object-fit: contain;
  height: 100%;
  object-position: center;
}
.items-index-list li .thumb figure {
  width: 100%;
  aspect-ratio: 1/1.3365;
}
.items-index-list li .thumb figure img {
  object-fit: cover;
  height: 100%;
}
.items-index-list li .in-title {
  font-family: var(--fnt-serif);
  text-align: center;
  line-height: 1.5;
  padding-bottom: 1em;
}
.items-index-list li .in-title::after {
  content: "";
  width: .5em;
  aspect-ratio: 1/1;
  border: 1px solid;
  border-color: transparent #333 #333 transparent;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  rotate: 45deg;
}
.sec-intro_preface {
  padding-top: min(100px, 15vw);

}

.preface-title {
  width: min(410px,100%);
}
.preface-title .title {
  font-size: min(calc(100vw/15), 30px);
  font-weight: 600;
  line-height: calc(40/30);
}
.sup-profile-box {
  display: grid;
  grid-template-columns: 1fr;
  place-items:center;
  gap: min(100px, 10vw);
}
.sup-profile-box .thumb-area{
  display: grid;
  grid-template-columns: min(5vw,15px) minmax(60vw,100%) min(5vw,15px);
  place-content:center;
  place-items:center;
  gap:min(3vw,20px);
}
.sup-profile-box .thumb-area figure.thumb{
  mask-image:url("../images/mask/round_top.svg");
  mask-size:100% 100%;
  overflow: hidden;
}
.sup-profile-box .thumb-area figure.thumb img{
  scale:1.1;
  transition:scale 1.4s ease-in-out;
  transition-delay: .5s;
}
.sup-profile-box .thumb-area.aos-animate figure.thumb img{
  scale:1;
}
.sup-profile-box .profile-area{
  gap:min(30px,4vw);
}
.profile_head {
  display: grid;
  grid-template-columns: auto auto;
  gap: min(30px, 5vw);
  place-items: center;
} 
.profile_head .thumb {
  width: min(calc(100vw/3.5), 143px);
}
.profile_head .data{
  text-align: center;
  line-height: calc(24/15);
}
.profile_head .data .pos{
  font-size: min(15px,3.4vw);
}
.profile_head .data .name{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap:5px;
  font-size: min(18px,3.7vw);
}
.profile_head .data .name span:first-child{
  padding-bottom: 2px;
  border-bottom: 1px solid #333;
}
.profile_head .data .name span:last-child{
  font-size: 1.25em;
}
.profile_detail {
  gap: min(30px, 5vw);
}
.profile_detail .in-box {
  padding: 1em;
  border: 1px solid;
  border-color: transparent #bbb #bbb;
}
.profile_detail .in-box::before, .profile_detail .in-box::after {
  content: "";
  width: calc((100% - 5em)/2);
  height: 1px;
  background: #bbb;
  position: absolute;
  top: -1px;
}
.profile_detail .in-box::before {
  left: -1px;
}
.profile_detail .in-box::after {
  right: -1px;
}
.profile_detail .in-box .in-title {
  position: absolute;
  left: 50%;
  top: 0;
  translate: -50% -50%;
}
/*アンケート*/
.sec-survey-blc {
  padding-top: min(120px, 20vw);
  padding-bottom: min(80px, 12vw);
  background: url("../images/wall/grid.png") repeat left top/min(calc(100vw/10), 50px);
}
.sec-survey_head{
  display: grid;
  grid-template-columns: 1fr;
  gap:min(20px,3vw);
place-items:center;
}
.survey-title {
  width: min(70vw,390px);
}
.survey-que-list {
  margin-top: min(80px, 15vw);
}
.survey-que-list > li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap: min(30px, 5vw);
}
.survey-que-list > li:not(:last-child) {
  background-image:
    linear-gradient(to right, #000, #000 10px, transparent 10px, transparent 8px);
  background-size: 14px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
.survey-que-list > li:not(:first-child) {
  padding-top: min(10vw,80px);
}
.survey-que-list > li:not(:last-child) {
  padding-bottom: 2em;
}
.survey-que-list > li.que01 .que-head{
  padding-right: min(15vw,80px);
}
.survey-que-list > li.que02 .que-head{
  padding-left: min(15vw,80px);
}
.survey-que-list > li .pos-pic{
  position: absolute;
  height: min(32vw,180px);
}
.survey-que-list > li .pos-pic img{
  object-fit: contain;
  object-position: center;
  height: 100%;
}
.survey-que-list > li .pos-pic.pic01{
  aspect-ratio:1/2.3333;
  top: 0;
  right: 0;
  translate:0 -25%;
}
.survey-que-list > li .pos-pic.pic02{
  aspect-ratio:1/2.3333;
  top: 50%;
  left: 0;
  translate:0 -40%;
}
.survey-que-list > li .que {
 height:min(16.8vw,80px);
}
.survey-que-list > li:nth-child(1) .que{
  margin-right: auto;
}
.survey-que-list > li:nth-child(2) .que{
  margin-left: auto;
}
.survey-que-list > li .que img{
  object-fit: contain;
  height: 100%;
}
.survey-que-list > li .comment {
  padding: .5em min(20px, 4vw);
  border-left: 1px solid;
  border-right: 1px solid;
}
.survey-que-list > li .comment::before, .survey-que-list > li .comment::after {
  content: "";
  width: 10px;
  height: calc(100% - 2px);
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  border: 1px solid;
  border-color: #000 transparent;
}
.survey-que-list > li .comment::before {
  left: -1px;
}
.survey-que-list > li .comment::after {
  right: -1px;
}
.sec-survey-box .answer {
  margin-top: min(70px, 10vw);
  width: min(400px, 80%);
  z-index: 1;
}
.ans-graph-wrap{
  display: grid;
  grid-template-columns: auto auto;
  gap:min(30px,5vw);
  -ms-align-items: center;
  align-items: center;
}
.graph-ans-list > li{
  padding-left: 1.2em;
}
.graph-ans-list > li:not(:first-child){
  margin-top: 10px;
}
.graph-ans-list > li::before{
  content: "";
  width: .85em;
  aspect-ratio:1/1;
  position: absolute;
  border-radius: 100vmax;
  left: 0;
  top: 0;
  translate:0 .2em;
}
.graph-ans-list > li:nth-child(1)::before{
  background:#e57a74;
}
.graph-ans-list > li:nth-child(2)::before{
  background:#ff9090;
}
.graph-ans-list > li:nth-child(3)::before{
  background:#cfb8b5;
}
.graph-ans-list > li:nth-child(4)::before{
  background:#ddb3c8;
}
.graph-ans-list > li:nth-child(5)::before{
  background:#e9cedb;
}
.graph-ans-list > li:nth-child(6)::before{
  background:#f5e8ef;
}
.graph-ans-list > li:nth-child(7)::before{
  background:#aaaaaa;
}
.graph-ans-list > li:nth-child(8)::before{
  background:#dedede;
}
.graph-ans-list > li span{
  font-size: .65em;
}
/*コーディネート*/
.sec-outfit-blc {
  padding-top: min(80px, 15vw);
  padding-bottom: min(30px, 5vw);
}
.sec-outfit-blc .icn-arrow {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -50%;
}
.icn-arrow.aos-animate svg {
  scale: 1 1;
}
.sec-outfit-blc::before, .sec-outfit-blc::after {
  content: "";
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  width: 50%;
  aspect-ratio: 1/0.3813;
  background: var(--wall_beg);
  position: absolute;
  top: 0;
  translate: 0 calc(-100% + 1px);
}
.sec-outfit-blc::before {
  left: 0;
}
.sec-outfit-blc::after {
  right: 0;
  scale: -1 1;
}
.sec-outfit-list {
  gap: min(50px, 10vw);
}
.outfit-item {
  gap: min(50px, 10vw);
}
.outfit-title{
  gap:10px;
}
.outfit-title .num{
  width: min(80px,25vw);
}
.outfit-title .title {
  font-family: var(--fnt-serif);
  font-weight: 600;
  font-size: var(--head2_wid);
  text-align: center;
  line-height: 1.3;
  font-feature-settings: "palt";
  letter-spacing: .05em;
}
.outfit-title .title .line_pink::before{
  content: "";
  width: 11em;
  aspect-ratio:1/0.041;
  position: absolute;
  left: 50%;
  bottom: 0;
  translate:-50% 25%;
  background: url("../images/line_pink.png") no-repeat center bottom/100%;
}
.outfit-item .detail figure {
}
.outfit-item .detail figure img {
  scale: 1.1;
  transition: scale 1s ease-in-out;
  transition-delay: .5s;
  transform-origin: center;
}
.outfit-item.aos-animate .detail figure img {
  scale: 1;
}

.outfit-voice {
  --wall-clr: #fff;
  --wall-title: #e47973;
}
.items-voice {
  --wall-clr: #f3f4f8;
  --wall-title: #333;
}
/*コーディネート*/
.sec-items-blc {
  background: #fff;
  padding-top: min(25vw, 90px);
}
.sec-items-blc .icn-arrow {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 25%;
  z-index: 1;
}
.sec-items-title {
  font-size: min(30px, 5vw);
  gap: .5em;
  line-height: 1.4;
  padding-bottom: min(80px, 15vw); 
  font-feature-settings: "palt";
  font-weight: 600;
  z-index: 1;
}
.sec-items-title > span {
  font-size: 1.6em;
  font-feature-settings:normal;
}
span.dot::before {
  content: attr(data-dot);
  position: absolute;
  top: 0;
  left: 0;
  color: #e37a77;
  translate: 0 -.75em;
}
/*contents index*/
.items-detail-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  padding-bottom: min(80px, 15vw);
  gap:min(90px,15vw);
  padding-top: min(120px,20vw);
}
.items-detail_top{
  display: grid;
  gap: min(50px, 10vw) 0;
}
.items-detail_top .num{
  width: min(154px,30vw);
  margin-left: auto;
  margin-right: auto;
}
.detail-title
,.detail-title h3{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  font-weight: 600;
  line-height: 1.6;
  gap: 10px;
}
.detail-title .box {
  border: 1px solid var(--clr-mos-pink);
  padding: 2px 6px;
  font-size: min(24px,4vw);
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}
.detail-title .main {
  font-family: var(--fnt-serif);
  text-align: center;
  font-size: var(--head2_wid);
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.items-detail-box .main-thumb {
  background: #ddd;
  overflow: hidden;
  width: 100%
  aspect-ratio: 1/1.5027;
}
.items-detail-box .main-thumb figure {
  scale: 1.1;
  transition: scale 1.4s ease-in-out;
  transform-origin: center;
}
.items-detail-box .main-thumb.aos-animate figure {
  scale: 1;
}
.items-detail-box .main-thumb .text.left {
  justify-content: flex-start;
}
.items-detail-box .main-thumb .text p {
  font-family: var(--fnt-serif);
  writing-mode: vertical-rl;
  text-orientation: upright;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  line-height: 2.5;
  font-weight: 600;
  font-size: min(18px, 4vw);
  letter-spacing: .1em;
}
.items-detail-box .main-thumb .text p span:not(.line) {
  display: block;
  padding-top: 4.5em;
}
.items-detail-box .main-thumb .text p span.line {
  text-decoration: underline;
  text-underline-offset: 5px;
}
.items-detail_cat{
  display: grid;
  grid-template-columns: 1fr;
  gap:min(100px,12vw);
}
.items-detail_scene {
  gap: min(50px, 10vw);
}
.items-detail_scene .scene-title {
  width: 100%;
}
.items-detail_scene .scene-title h4{
  height: max(28vw,60px);
}
.items-detail_scene .scene-title img{
  object-fit: contain;
  height: 100%;
  object-position: center;
}
.items-detail_scene .thumb-area {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.items-detail_scene .thumb-area figure span {
  overflow: hidden;
  display: block;
  width: 100%;
  height: 100%;
  mask-size: 100% 100%;
}
.items-detail_scene .thumb-area figure img {
  scale: 1.1;
  transition: scale 1s ease-in-out;
  transition-delay: .3s;
  transform-origin: center;
}
.items-detail_scene .thumb-area figure.aos-animate img {
  scale: 1;
}
.items-detail_scene .thumb-area .text {
  width: 1em;
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  font-size: min(50px, 10vw);
  z-index: 1;
}
.items-detail_scene .thumb-area .text.style{
  padding-top: 4em;
}
.items-detail_scene .thumb-area .text.make{
  translate:0 -25%;
}
.items-detail_scene .thumb-area.left {
  padding-right: min(50px, 5vw);
}
.items-detail_scene .thumb-area.right {
  padding-left: min(50px, 5vw);
}
.items-detail_scene .thumb-area.right .text.make{
  scale:-1 -1;
}
.items-detail_scene .thumb-area.sdw .text {
  z-index: 1;
}
.items-detail_scene .thumb-area.left figure span, .items-detail_scene .thumb-area.left figure::before {
  mask-image: url("../images/mask/round_rr.svg");
}
.items-detail_scene .thumb-area.right figure span, .items-detail_scene .thumb-area.right figure::before {
  mask-image: url(../images/mask/round_rl.svg);
}
.items-detail_scene .thumb-area.left.round-btm figure span, .items-detail_scene .thumb-area.left.round-btm figure::before {
  mask-image: url("../images/mask/round_rr_btm.svg");
}
.items-detail_scene .thumb-area.right.round-btm figure span, .items-detail_scene .thumb-area.right.round-btm figure::before {
  mask-image: url(../images/thumb_mask_rl_btm.svg);
}
.items-detail_scene .thumb-area figure::before {
  content: "";
  width: 100%;
  height: calc(100% - min(30px, 5vw));
  position: absolute;
  background: var(--wall-opa-pink);
  mask-size: 100% 100%;
}
.items-detail_scene .thumb-area.sdw-top figure {
  padding-top: min(30px, 5vw);
}
.items-detail_scene .thumb-area.sdw-btm figure {
  padding-bottom: min(30px, 5vw);
}
.items-detail_scene .thumb-area.right figure::before {
  left: max(-30px, -5vw);
}
.items-detail_scene .thumb-area.sdw-top figure::before {
  top: 0;
}
.items-detail_scene .thumb-area.sdw-btm figure::before {
  bottom: 0;
}
.items-detail_scene .thumb-area.left figure::before {
  right: max(-30px, -5vw);
}
.items-detail_scene .thumb-area.cnt {
  justify-content: center;
}
.items-detail_scene .thumb-area.cnt figure {
  width: 65%;
  translate: max(-50px, -5vw);
}
.items-detail_scene .thumb-area.cnt figure::before {
  right: max(-30px, -5vw);
}
.items-detail_scene .style-comment {
  display: grid;
  place-items:center;
  border: 1px solid;
  border-color: #333 transparent #333 #333;
  min-width: 18em;
  padding: .5em 1.5em;
  font-size: min(18px,4.25vw);
}
.items-detail_scene .style-comment::before{
  content: "";
  width: 1px;
  height: calc(100% - 1.25em);
  position: absolute;
  top: -1px;
  right: -1px;
  background: #333;
}
.items-detail_scene .style-comment::after{
  content: "";
  width: 1.15em;
  aspect-ratio:1/0.7923;
  position: absolute;
  right: 0;
  bottom: 0;
  background: url("../images/colon.svg") no-repeat center/100%;
  translate:50% -25%;
}
.items-detail_scene .style-comment p{
  line-height: calc(25/18);
  text-align: center;
  z-index: 1;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}
.items-detail_scene .style-comment p span::before{
  content: "";
  width: calc(100% + .25em);
  aspect-ratio:1/0.0397;
  position: absolute;
  left: 50%;
  bottom: 0;
  translate:-50% 0;
  background: url("../images/line_pink_s.svg") no-repeat center/100%;
  z-index: -1;
}
* + .item-price-list {
  margin-top: min(50px, 8vw);
}
.item-price-list div {
  display: grid;
  grid-template-columns: min(35%, 12em) auto;
  line-height: 1.4;
  -ms-align-items: center;
  align-items: center;
}
.item-price-list div:not(:first-child) {
  margin-top: 5px;
}
.item-price-list dt > .price{
  display: block;
}
.item-price-list dt > .price > span{
  font-size: .85em;
}
.item-price-list dd {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  gap: 10px;
}
.item-price-list dd p {
  background: #dfc5c4;
  width: 100%;
  min-height: 2.25em;
}
.item-price-list dd p a{
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
}
.other-item-list {
  margin-top: min(30px, 5vw);
}
.other-item-list dt{
  color: var(--clr-pink);
  font-size: min(16px,3.7vw);
}
.other-item-list dd{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:10px 1em;
  margin-top: 10px;
  -ms-align-items: center;
  align-items: center;
}
.other-item-list dd a{
  text-decoration: underline;
  text-underline-offset:1.5px;
  text-underline-position: under;
  text-decoration-thickness: .5px;
}
/*Part2
==============================================================*/
#link-part02{
  padding-top: min(80px,10vw);
  background: #fff;
}
#link-part02::before{
  content: "";
  width: 100vw;
  aspect-ratio:1/2.3333;
  background: var(--wall-gry);
  position: absolute;
  left: 0;
  top: 0;
}
.items-featue_intro{
  gap:min(40px,5vw);
  padding-bottom: min(50px,10vw);
}
.featue-items-list{
  padding-top: min(80px,10vw);
}
.featue-items-list li .detail-title .box{
  background: #fff;
  padding-right: 2em;
  padding-left: 10px;
}
.featue-items-list li .detail-title .box::after{
  content: "";
  position: absolute;
  font-size: 3em;
  right: 0;
  bottom: 0;
  font-family: var(--fnt-serif);
  font-style: italic;
  font-weight: 400;
  color: #ce92b0;
  translate:-15% 15%;
}
.featue-items-list li .detail-title .box.num01::after{
  content: "1";
}
.featue-items-list li .detail-title .box.num02::after{
  content: "2";
}
.featue-items-list li .detail-title .box.num03::after{
  content: "3";
}
.featue-items-list li:not(:first-child){
  padding-top: min(80px,10vw);
}
.featue_intro-box{
  padding-bottom: min(100px,10vw);
}
.featue_intro-box .udl_pink{
  background: linear-gradient(rgba(231, 210, 221, 0)70%, rgba(231, 210, 221, 1)70%);
}

.items-point-comment{
}
.sec-items-featue .item-price-list dd p{
  background: #ddb3c8;
}
.sec-items-featue .other-item-list dt{
  color: #ddb3c8;
}
.featue_intro-box.d-line-upper::before{
  width: 100%;
}
.part2_thumb-area {
  margin-top: min(50px, 10vw);
  background: linear-gradient(rgba(243, 244, 248, 0)90%, rgba(243, 244, 248, 1)90%);
}
.part2_thumb-area::before {
  content: "";
  width: min(90%, 700px);
  height: 70%;
  background: #f3f4f8;
  position: absolute;
  top: 0;
  right: 0;
}

.part2_thumb-area .thumb-area.right {
  padding-left: min(150px, 20vw);
  margin-top: min(80px, 10vw);
}
.item-detail_explan .sup-profile-box{
  margin-top: min(80px,10vw);
}
.detail-wid-title {
  width: min(680px, 100%);
  display: grid;
  grid-template-columns: 1fr;
  place-items:center;
  gap:min(45px,3vw) min(5vw,60px);
}
.detail-wid-title .num{
  width: min(30%,170px);
}
.item-slide-box {
  width: 100%;
  margin-top: min(50px, 8vw);
  overflow: hidden;
}
.item-slider-wrap {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: min(40px,8vw);
}
.item-slider{
  border: 5px solid #333;
  overflow: hidden;
}
.items-pagination {
  margin-top: min(20px, 4vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  gap:10px;
  bottom: auto!important;
}
.items-pagination .swiper-pagination-bullet{
  margin: 0!important;
  width: min(2vw,8px);
  height: auto;
  aspect-ratio:1/1;
}
.items-pagination .swiper-pagination-bullet-active{
  background: #ddb3c8;
}
.items-point-comment {
  text-align: center;
  margin-top: min(30px, 5vw);
}
.items-point-comment::before, .items-point-comment::after {
  content: "";
  width: calc((100% - 5em)/2);
  aspect-ratio: 1/0.025;
  max-height: 8.7px;
  background: repeat-x url("../images/svg/double-line.svg") left bottom/auto 100%;
  position: absolute;
  top: 0;
  translate: 0 -50%;
}
.items-point-comment::before {
  left: 0;
}
.items-point-comment::after {
  right: 0;
}
.items-point-comment .in-title {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -55%;
  padding: 0 1em;
}
.items-point-comment .in-text {
  text-align: center;
  line-height: calc(24/16);
  padding-top: 1.5em;
  padding-bottom: 1em;
}
.items-feature_cat{
  background: linear-gradient(180deg,rgba(242,244,247,0)50%,rgba(242,244,247,1)50%);
  padding-bottom: min(100px,15vw);
}
.items-feature_cat::before{
  content: "";
  position: absolute;
  background: var(--wall-gry);
}
.items-feature_cat::before{
  width: 88vw;
  aspect-ratio:1/1.4333;
  right: 0;
  top: 0;
  translate:0 50%;
}
.featue-items-list li:nth-child(even) .items-feature_cat::before{
  right: auto;
  left: 0;
}
.items-feature_cat .thumb figure{
  overflow: hidden;
}

.items-feature_cat .main-thumb figure{
  width: 100%;
}
.p2-style-thumb figure{
  width: 75%;
  aspect-ratio:1/1.573;
}
.p2-other-thumb figure{
  width: min(400px,75%);
  margin-left: auto; 
  margin-right: auto;
}
.p2-style-thumb.right figure{
  margin-left: auto;
}
.items-feature_cat .thumb:not(.main-thumb){
  margin-top: min(80px,10vw);
  overflow: hidden;
}

.items-feature_cat .thumb:not(.p2-other-thumb) figure img{
  scale:1.1;
  transition: scale 1.4s ease-in-out;
  transform-origin: center;
  transition-delay: .25s;
}
.items-feature_cat .thumb figure.aos-animate img{
  scale:1;
}
.items-feature_cat .detail{
  margin-top: min(80px,6vw);
  padding-left: min(6vw,50px);
  padding-right: min(6vw,50px);
}
/*Part3
==============================================================*/
#link-part03{
  background: #fff;
  padding-top: min(80px, 15vw);
  padding-bottom: calc((100vw*0.164) + min(50px,10vw));
}
#link-part03::before{
  content: "";
  width: 100vw;
  aspect-ratio:1/1.6533;
  max-height: 700px;
  background: var(--wall-beg);
  position: absolute;
  top: 0;
  left: 0;
}
.sec-styling-box{
  gap:min(10vw,50px);
}
.sec-styling-box .detail-wid-title{
  width: min(600px,80%);
}
.sec-styling-box .detail-wid-title .main{
  translate:-8% 0;
}
.styling-slide-wrap{
  width: min(77vw,1330px);
}
#styling-slider{
  overflow: hidden;
}
.styling-item {
  border: 5px solid #333;
}
.style-pop-wrapper{
  display: grid;
  place-content:center;
  place-items:center;
  width: 100%;
  padding: min(100px,10vw) min(50px,5vw);
  min-height: 100%;
}
.style-pop-open{
  cursor: pointer;
}
.styling-item .check-btn{
  position: absolute;
  background: var(--clr-org);
  right: 10px;
  bottom: 10px;
  font-weight: 400;
  padding: 5px 10px;
  color: #333;
}
.styling-slide-nav{
  pointer-events: none;
  position: absolute;
  left: 50%;
  top: 50%;
  translate:-50% -50%;
  width: min(100% + min(18vw,100px));
  z-index: 2;
  display: flex;
}
.styling-slide-nav button{
  pointer-events: auto;
  position: relative;
  width: 2.5em;
  aspect-ratio:1/1;
}
.styling-slide-nav button::before{
  content: "";
  width: 50%;
  aspect-ratio:1/1;
  border: 3px solid;
  border-color: #333 transparent transparent #333;
  position: absolute;
  left: 50%;
  top: 50%;
  translate:-50% -50%;
  rotate:-45deg;
  border-radius: 1px;
}
.styling-slide-nav button.styling-btn-next{
  margin-left: auto;
}
.styling-slide-nav button.styling-btn-next::before{
  scale:-1 -1;
}
.styling-pagination{
  margin-top: min(30px,5vw);
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    gap: 10px;
  bottom: 0!important;
}
.styling-pagination .swiper-pagination-bullet-active{
  background: var(--clr-org);
}
.styling-pagination .swiper-pagination-bullet{
  width: min(2vw, 8px);
    height: auto;
    aspect-ratio: 1 / 1;
  margin: 0!important;
}
.style-pop-close{
  position: absolute;
  top: 0;
  right: min(20px,5vw);
  background: #ddd;
  width: min(10vw,40px);
  aspect-ratio:1/1;
  border-radius: 100vmax;
  translate:0 -50%;
}
.style-pop-close::before
,.style-pop-close::after{
  content: "";
  width: 60%;
  height: 1.5px;
  background: #333;
  position: absolute;
  top: 50%;
  left: 50%;
  translate:-50% -50%;
}
.style-pop-close::before{
  rotate:45deg;
}
.style-pop-close::after{
  rotate:-45deg;
}
.style-pop-in{
  width: min(760px,100%);
  background: #fff;
  border-radius: 15px;
  padding: min(50px,8vw) min(50px,4vw) min(50px,15vw) ;
}
.style-pop-in{
  display: grid;
  grid-template-columns: 33% auto;
  gap:min(5vw,50px) min(2vw,50px);
}
.style-pop-in .comment .head{
  display: grid;
  place-items:center;
  gap:10px;
}
.style-pop-in .comment .head .num{
  width: min(28%,80px);
}
.style-pop-in .comment .head .title{
  font-size: min(30px,calc(100vw/20));
  font-family: var(--fnt-serif);
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
}
.style-pop-in .comment .in-text{
  margin-top: 10px;
}
.style-pop-in .thumb{
  align-self: center;
}
.style-pop-in .style-data{
  grid-column: span 2 / span 2;
  font-weight: 600;
}
.style-pop-in .style-data .item-price-list dd p{
  background: var(--clr-org);
}
.style-pop-in .style-data .item-price-list dd.full{
  grid-template-columns: 1fr;
}
.style-pop-in .style-data .other-item-list dt{
  color: var(--clr-org);
}
/*Footer
========================================*/
footer {
  padding-top: min(10vw,90px);
  background: #fff;
}
.foot-links-blc{
  gap:min(10vw,100px);
  padding-bottom: min(80px,10vw);
}
.item-link-btn{
  color: #dcaba9;
  border: 1px solid #dcaba9;
  width: min(100%,410px);
}
.item-link-btn a{
  display: grid;
  width: 100%;
  aspect-ratio:1/0.1709;
  max-height: 90px;
  place-content:center;
  font-weight: 600;
  font-size: min(18px,4vw);
}
.foot-links-list{
  width: min(760px,100%);
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap:min(17px,3vw);
}
.foot-links-list li{
  width: 100%;
  aspect-ratio:1/0.3593;
  max-height: 80px;
  background: #dac6c4;
  display: grid;
  grid-template-columns: 1em auto;
  place-content:center;
  -ms-align-items: center;
  align-items: center;
  color: #fff;
  gap:min(2vw,10px);
  line-height: 1.3;
  letter-spacing: .08em;
}
.foot-links-list li p > span{
  display: block;
  font-size: .83em;
}
.foot-brand-logo{
  width: min(137px,calc(100vw/3));
}
.footer-nav-area{
  background: #fafafa;
  padding-top: min(100px,25vw);
  padding-bottom: min(30px,5vw);
}
.foot-sns-list{
  margin-top: min(15vw,50px);
  justify-content: center;
  gap:min(10vw,15px);
}
.foot-sns-list li{
  width: 25px;
}
.foot-nav-list{
  margin-top: min(12vw,50px);
  justify-content: center;
  gap:1.25em;
  font-size: min(12px,3.4vw);
}
.foot-company-logo{
  margin-top: min(15vw,40px);
  width: min(137px,calc(100vw/3));
}

footer .copy{
  margin-top: min(15vw,40px);
  text-align: center;
  font-size: min(12px,3.4vw);
}