@charset "utf-8";
@import (once) "../css/default.less";

/* eachtext バグ解除  ///////////////////////*/
.map{
.dn;
}

/* font  ///////////////////////*/
@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Kaisei+HarunoUmi&family=Yuji+Syuku&display=swap');


.ffm{
font-family: "Kaisei HarunoUmi", serif;
font-weight: 400;
font-style: normal;
}

.ffm2{
font-family: "Bodoni Moda", serif;
font-optical-sizing: auto;
font-weight: 700;
font-style: normal;
}

.ffm3{
font-family: "Bodoni Moda", serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;
}

@font-face {
font-family: "script";
src: url("../../css/font/script2.woff2") format('woff2');
}

.ffm4{
font-family: "script";
font-weight:500;
}


/* color  ///////////////////////*/
@text:#6E6667;
@bg:#FFF;

@c1:#ede4ca;
@c2:#ada88c;
@c3:#b6d6d1;
@c4:#9C9C9C;

a{
.tdn;
color:@text;
}


/* close ///////////////////////*/
.desklist dd:before,
.memory .photo:before,
.question dd:before{
background:@text;
}


/* body  ///////////////////////*/
body{
background:@bg;
color:@text;
}

body,div,td,th,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,address,a,p,sup,em,s.i,small,span{
.ffm;
}

.contents{
max-width:720px;
padding:0 15px;
.center;
}


/* anime  ///////////////////////*/
.zoom{
opacity:0;
}
.fade{
opacity:0;
}
.flip{
opacity:0;
}


/* canvas  ///////////////////////*/
.canvas:before{
content:"";
.db;
.pa;
top:0;
background:url(../image/texture/bg7.png);
opacity:.3;
width:100%;
height:100%;
}

.canvas{
.pf;
.oh;
top:0;
left:0;
width:100%;
height:100vh;
z-index:0;
background:@bg;
}

.canvas .cut1{
.pa;
top:-40px;
left:-10px;
width:50%;
max-width:320px;
.as(1/1.3);
background:#A6D4CD;
-webkit-mask-image:url(image/cut1.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut1.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas .cut2{
.pa;
top:-15px;
right:-60px;
width:50%;
max-width:320px;
.as(1/2);
background:#A6D4CD;
-webkit-mask-image:url(image/cut2.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut2.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas .cut3{
.pa;
bottom:-15px;
left:-15px;
width:50%;
max-width:320px;
.as(1/1);
background:#A6D4CD;
-webkit-mask-image:url(image/cut3.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut3.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas .cut4{
.pa;
bottom:30px;
right:-15px;
width:50%;
max-width:320px;
.as(1/1);
background:#A6D4CD;
-webkit-mask-image:url(image/cut4.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut4.png);
mask-repeat: no-repeat;
mask-size:cover;
}


/* canvas2  ///////////////////////*/
.canvas2:before{
content:"";
.db;
.pa;
top:0;
background:url(../image/texture/bg7.png);
opacity:.3;
width:100%;
height:100%;
}

.canvas2{
.pf;
z-index:-1;
inset:0;
width:100%;
height:100vh;
background:@c1
}

.canvas2 .cut1{
.pa;
top:-40px;
left:-10px;
width:50%;
max-width:320px;
.as(1/1.3);
background:#fffcf5;
-webkit-mask-image:url(image/cut1.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut1.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas2 .cut2{
.pa;
top:-15px;
right:-60px;
width:50%;
max-width:320px;
.as(1/2);
background:#fffcf5;
-webkit-mask-image:url(image/cut2.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut2.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas2 .cut3{
.pa;
bottom:-15px;
left:-15px;
width:50%;
max-width:320px;
.as(1/1);
background:#fffcf5;
-webkit-mask-image:url(image/cut3.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut3.png);
mask-repeat: no-repeat;
mask-size:cover;
}

.canvas2 .cut4{
.pa;
bottom:30px;
right:-15px;
width:50%;
max-width:320px;
.as(1/1);
background:#fffcf5;
-webkit-mask-image:url(image/cut4.png);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:cover;
mask-image:url(image/cut4.png);
mask-repeat: no-repeat;
mask-size:cover;
}


/* top  ///////////////////////*/
.is-active{
--opacity: 1;
}

.char{
.dib;
opacity: var(--opacity, 0);
transition: opacity 0.6s cubic-bezier(0.77, 0, 0.175, 1);
transition-delay: calc(~"0.1s * var(--char-index)");
}

/* top  ///////////////////////*/
.top{
.pr;
.oh;
width:100%;
height:100vh;

.article{
width:100%;
height:100%;
}

article{
.jc;
width:100%;
height:100%;
}

.contents{
.tac;
z-index:2;
width:100%;
}

.photo{
.center;
width:60%;
.as(1/1);
max-width:320px;
background:@c1;
padding:10px;
}
.photo p{
width:100%;
height:100%;
}

.title{
.pr;
.tac;
.center;
width:70%;
max-width:320px;
z-index:2;
padding:0 0 15px 0;
line-height:2rem;
.nw;

i{
.oh;
.dib;
}
i, span{
.ffm3;
font-size:2.3rem;
line-height:2.3rem;
letter-spading:.05rem;
}
}


h1{
padding:30px 0 15px 0;
}
h1 p{
.pr;
.nw;
.dib;
.vam;
font-size:1.3rem;
line-height:1.3rem;
letter-spacing:.1em;
}

h1 p:before{
content:"";
.dib;
.pa;
background:@c2;
-webkit-mask-image:url(../image/ornament/edge3.svg);
-webkit-mask-repeat: no-repeat;
mask-image:url(../image/ornament/edge3.svg);
mask-repeat: no-repeat;
width:60px;
left:-70px;
.as(1/.1);
top:.6rem;
transform:scale(-1,1);
}

h1 p:after{
content:"";
.dib;
.pa;
background:@c2;
-webkit-mask-image:url(../image/ornament/edge3.svg);
-webkit-mask-repeat: no-repeat;
mask-image:url(../image/ornament/edge3.svg);
mask-repeat: no-repeat;
width:60px;
right:-70px;
top:.6rem;
.as(1/.1);
}

h2{
padding:15px 0;
}
h2 p{
font-size:3.6rem;
line-height:3.6rem;
transform:scale(1.3, 1);
text-stroke-width: .3px;
text-stroke-color:@text;
-webkit-text-stroke-width: .3px;
-webkit-text-stroke-color:@text;
.ffm4;
.nw;
}

em p{
font-size:1rem;
line-height:1rem;
.ffm2;
.nw;
}

}


/* message  ///////////////////////*/
.message{
.pr;
.oh;
z-index:1;
padding:15px 15px 0 15px;

.article{
max-width:720px;
.center;
padding:0;
border:2px @c1 solid;
}

article{
width:100%;
}

.contents{
.pr;
.center;
padding:75px 15px;
background:rgba(255, 255, 255, .75);
}

.guest_name{
.tac;
span{
font-size:1.45rem;
line-height:2rem;
padding:0 10px;
}
}

.text p{
.tac;
padding:30px 0;
line-height:2rem;
}
.text span{
line-height:2rem;
}

.host_name p{
.tac;
font-size:1.3rem;
line-height:2rem;
}

}


/* seating  ///////////////////////*/
.seating{
.pr;
.oh;
.tac;
z-index:2;
margin:115px 0 0 0;

.title{
.jc;
.pr;
.tac;
.center;
width:60%;
max-width:320px;
.as(1/1);
background:@c4 url(../image/texture/bg7.png);
z-index:2;
}

.title header{

h2 p{
.ffm3;
font-size:2.3rem;
line-height:2.3rem;
color:#FFF;
}
em p{
padding:15px 0 0 0;
font-size:1.3rem;
color:#FFF;
}
}

.contents{
margin-top:-80px;
padding:80px 15px 15px 15px;
clip-path: polygon(0 0,0 100%,100% 100%,100% 0);
}

.memo{
.tal;
padding:15px 0 0 0;
font-size:.85rem;
}

}


/* desk ///////////////////////*/
.desk{
.pr;
.oh;
.tac;
padding:75px 0 0 0;

header{
padding:0 0 30px 0;

h3 p{
.tac;
.ffm2;
font-size:1.75rem;
line-height:1.75rem;
}
em p{
.tac;
font-size:.9rem;
line-height:.9rem;
padding:15px 0 0 0;
}
}

.wrap{
.center;
background:@bg url(../image/texture/bg4.png);
padding:15px 0 30px 0;
}

}


/* floor ///////////////////////*/
.floor{
.pr;
.oh;
.tac;
padding:75px 0 0 0;

header{
padding:0 0 30px 0;

h3 p{
.tac;
.ffm2;
font-size:1.75rem;
line-height:1.75rem;
}
em p{
.tac;
font-size:.9rem;
line-height:.9rem;
padding:15px 0 0 0;
}
}

.wrap{
.center;
background:@bg url(../image/texture/bg4.png);
}


}


/* desklist ///////////////////////*/
.desklist{

dl{
.dn;
.pf;
top:0;
left:0;
z-index:3;
opacity:0;
transition:1s;
background:@bg url(../image/texture/bg4.png);
width:100%;
height:100%;
}

dd{
.pr;
width:100%;
height:100%;
display:flex;
align-items:center;
padding:0 15px;
}

.desk{
flex:1;
width:100%;
max-width:600px;
.center;
padding:0 0 5vh 0;

h3 p{
font-size:4.5rem;
line-height:4.5rem;
}
em p{
.tac;
font-size:.85rem;
line-height:.85rem;
padding:0 0 0 0;
}
}

.desk svg .num{
.dn;
}

.chart{
background:transparent;
}

}


/* svg ///////////////////////*/
.desk svg,
.floor svg{

.text1{
fill:@text;
font-size:7px;
}
.text2{
fill:@text;
font-size:12px;
}
.text3{
fill:@text;
font-size:7px;
text-anchor:middle;
}
.text4{
fill:@text;
font-size:12px;
text-anchor:middle;
}
.num{
fill:@text;
font-size:40px;
text-anchor:middle;
.ffm3;
}
.object{
fill:@bg;
stroke:#DDD;
stroke-width:2px;
}
.active{
fill:#ede4ca;
stroke:rgba(227, 220, 182, .3);
stroke-width:5px;
opacity:1 !important;
}
a{
text-decoration:none;
}

.image{
.dn;
}
.object{
.ds;
}

}


/* menu  ///////////////////////*/
.menu{
.pr;
.oh;
.tac;
padding:115px 0 0 0;

.title{
padding:0 0 45px 0;
}

.title p{
font-size:3rem;
line-height:3rem;
.ffm3;
}

.contents{
}

.food, .drink{
header{
.dn;
padding:15px 0 30px 0;
}
h3 p{
font-size:2rem;
}
em p{
padding:15px 0 0 0;
font-size:1.2rem;
}
}

.food{
padding:0;
border:2px @c1 solid;
}

.drink{
margin:15px 0 0 0;
padding:0;
border:2px @c1 solid;
background:@c1 url(../image/texture/bg4.png);
}

dl{
padding:15px 15px 45px 15px;
background:rgba(255, 255, 255, .75);
}

dt{
.pr;
padding:75px 0 0 0;
}
dt p{
font-size:1.3rem;
.ffm2;
}
dt:before{
content:"";
.pa;
top:35px;
left:0;
right:0;
.center;
.db;
background:@c2;
-webkit-mask-image:url(../image/ornament/line3.svg);
-webkit-mask-repeat: no-repeat;
mask-image:url(../image/ornament/line3.svg);
mask-repeat: no-repeat;
width:75px;
.as(1/1);
}
dt:first-child{
padding:30px 0 0 0;
}
dt:first-child:before{
.dn;
}

dd{
opacity:0;
padding:15px 0 0 0;
}
dd p{
line-height:1.45rem;
}


.image{
.pr;
padding:15px 0 0 0;
}

.memo{
.tal;
padding:10px 0 0 0;
p{
font-size:.85rem;
line-height:1.3rem;
}
}

}


/* profile ///////////////////////*/
.profile{
.pr;
.oh;
.tac;
padding:115px 0 75px 0;

.title p{
font-size:3rem;
line-height:3rem;
.ffm3;
}

.contents{
padding:45px 15px 0 15px;
}

.data{
max-width:260px;
.center;

h4 p{
.ffm4;
font-size:2.3rem;
line-height:2.3rem;
text-stroke-width: .5px;
text-stroke-color:＠text;
-webkit-text-stroke-width: .5px;
-webkit-text-stroke-color:＠text;
padding:15px 0;
}
.name{
.pr;
font-size:1.15rem;
line-height:1.15rem;
padding:0 0 15px 0;
}
span{
font-size:.9rem;
line-height:1.75rem;
}
}

.sns{
padding:15px 0 0 0;

ul{
.dt;
.center;
}
li{
.dtc;
padding:3px;
}
img{
width:25px;
}
a{
.pr;
.jc;
}
a:before{
content:"";
.db;
.pa;
width:200%;
height:200%;
.r(50%);
box-shadow: inset 0px 0px 10px 0px rgba(166, 212, 205, 1);
border:2px @c3 solid;
}
}

}


/* profile photo ///////////////////////*/
.profile{

.host1{
opacity:0;
.dib;
.tac;
.left;
width:50%;
padding:0 5px 0 0;
}

.host2{
opacity:0;
.dib;
.tac;
.right;
width:50%;
padding:0 0 0 5px;
}

.host3{
opacity:0;
.tac;
.dib;
.center;
width:80%;
}

.photo{
.pr;
width:100%;
.as(1/1);
background: rgba(255, 255, 255, 0.85);
padding:5px;
}
.photo p{
.oh;
width:100%;
height:100%;
}
.photo img{
.of;
width:100%;
height:100%;
}

}



/* touch  ///////////////////////*/
.touch{
padding:75px 0;
}

.touch p:before{
box-shadow: inset 0px 0px 10px 0px rgba(166, 212, 205, 1), inset 0px 0px 5px 0px rgba(166, 212, 205, 1);
}

/* memory ///////////////////////*/
.memory .article{
.pf;
z-index:-1;
inset:0;
width:100vw;
height:100vh;
background:@c1 url(../image/texture/bg7.png);
}


/* memory ///////////////////////*/
.memory{
.pr;
.oh;
.tac;
height:100vh;
z-index:2;
clip-path: polygon(0 0,0 100%,100% 100%,100% 0);

.triggar{
.db;
height:8vh;
pointer-events:none;
}

.shadow{
.pa;
width:100vw;
height:100vh;
z-index:2;
box-shadow: inset 0px 0px 100px 0 rgba(255, 255, 255, .6);
pointer-events:none;
}

article{
.pa;
.jc;
width:100vw;
height:100vh;
}

.title{

h3 p{
.ffm4;
font-size:4.5rem;
line-height:4.5rem;
text-stroke-width: .3px;
text-stroke-color:＠text;
-webkit-text-stroke-width: .3px;
-webkit-text-stroke-color:＠text;
}
p{
line-height:2rem;
}
}


ul{
.pr;
.db;
width:116vw;
max-width:860px;
margin-left:-8vw;
.nw;
}
li{
.dib;
width:33%;
max-width:230px;
}

dt{
background:#FFF;
padding:5px;
opacity:0;

p{
.jc;
.as(1/1);
}
p:before{
content:"";
.db;
.pa;
width:120%;
height:120%;
z-index:2;
.r(50%);
box-shadow: inset 0px 0px 30px 0px rgba(255, 255, 255, 1), inset 0px 0px 5px 0px rgba(255, 255, 255, 1);
}
img{
.of;
width:100%;
height:100%;
}
}


.host1{
.pa;
top:0;

li:nth-child(even) dt{
transform:rotate(10deg);
}
li:nth-child(odd) dt{
transform:rotate(-5deg);
}

li:nth-child(4){
.pa;
left:-5vw;
top:20vh;
}
li:nth-child(5){
.pa;
left:-10vw;
top:40vh;
}
li:nth-child(6){
.pa;
left:-5vw;
top:60vh;
}
}


.host2{
.pa;
bottom:0;

li:nth-child(odd) dt{
transform:rotate(10deg);
}
li:nth-child(even) dt{
transform:rotate(-5deg);
}

li:nth-child(4){
.pa;
right:-10vw;
bottom:20vh;
}
li:nth-child(5){
.pa;
right:-15vw;
bottom:40vh;

}
li:nth-child(6){
.pa;
right:-10vw;
bottom:60vh;
}
}


dd{
.dn;
transition:1s;
background:rgba(255,255,255,.95);
background:@c3 url(../image/texture/bg4.png);
width:100%;
height:100%;
.pf;
top:0;
left:0;
z-index:99;
opacity:0;
}

dd:before{
content:"";
.db;
width:60%;
max-width:320px;
.as(1/.5);
background:#FFF;
-webkit-mask-image:url(../image/cut/star1.svg);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:contain;
mask-image:url(../image/cut/star1.svg);
mask-repeat: no-repeat;
mask-size:contain;
.pa;
top:50%;
right:0;
left:0;
margin:-40vh auto 0 auto;
z-index:0;
pointer-events:none;
}

dd:after{
content:"";
.db;
width:60%;
max-width:320px;
.as(1/.5);
background:#FFF;
-webkit-mask-image:url(../image/cut/star2.svg);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:contain;
mask-image:url(../image/cut/star2.svg);
mask-repeat: no-repeat;
mask-size:contain;
.pa;
top:50%;
right:0;
left:0;
margin:20vh auto 0 auto;
z-index:0;
pointer-events:none;
}

.wrap{
width:100%;
height:100%;
.db;
.jc;
.pr;
}

.photo{
width:80%;
padding:5px;
background:#FFF;

p{
padding:10px;
color:@text;
line-height:1.45rem;
}
}

}


/* question  ///////////////////////*/
.question{
.pr;
.tac;
.oh;
padding:30px 0 15px 0;

header{
.pr;
padding:15px 0 0 0;
}
header:before{
content:"";
.pa;
top:45px;
left:0;
right:0;
.center;
.db;
background:@c2;
-webkit-mask-image:url(../image/icon/profile1.svg);
-webkit-mask-repeat: no-repeat;
mask-image:url(../image/icon/profile1.svg);
mask-repeat: no-repeat;
width:80px;
.as(1/1);
}

.q2 header:before{
-webkit-mask-image:url(../image/icon/profile2.svg);
mask-image:url(../image/icon/profile2.svg);
}
.q3 header:before{
-webkit-mask-image:url(../image/icon/profile3.svg);
mask-image:url(../image/icon/profile3.svg);
}
.q4 header:before{
-webkit-mask-image:url(../image/icon/profile4.svg);
mask-image:url(../image/icon/profile4.svg);
}

h3 p{
padding:115px 0 45px 0;
}

dl{
border-top:1px #999 dotted;
}

dt p{
.db;
cursor:pointer;
padding:15px 0;
}
dt a{
.jc;
.pr;
border-bottom:1px #999 dotted;
}
dt a:before{
content:"";
.db;
.pa;
width:80px;
.as(1/1);
.r(50%);
box-shadow: inset 0px 0px 10px 0px rgba(166, 212, 205, 1), inset 0px 0px 5px 0px rgba(166, 212, 205, 1);
border:2px @c3 solid;
}


}

/* question 回答  ///////////////////////*/
.question{

dd{
.dn;
.pf;
top:0;
left:0;
opacity:0;
transition:1s;
background:rgba(255,255,255,.9);
background:@c1 url(../image/texture/bg4.png);
width:100%;
height:100%;
z-index:99;
}


.wrap{
.pr;
width:100%;
height:100%;
}

em{
.ffm4;
font-size:5rem;
color:#FFF;
.pa;
top:30px;
left:15px;
transform:rotate(-10deg);
z-index:-1;
text-stroke-width: .3px;
text-stroke-color:#FFF;
-webkit-text-stroke-width: .3px;
-webkit-text-stroke-color:#FFF;
}

.text{
.pa;
width:calc(~"100% - 20px");
height:calc(~"30vh - 20px");
border:2px #FFF solid;
left:10px;
top:10px;
.jc;

p{
.pr;
padding:15px;
background:;
color:@text;
line-height:1.4em;
z-index:1;
}
}
.text:after{
content:"";
.db;
width:40%;
max-width:130px;
.as(1/1);
background:#FFF;
-webkit-mask-image:url(../image/cut/hand2.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-size:contain;
mask-image:url(../image/cut/hand2.svg);
mask-repeat:no-repeat;
mask-size:contain;
.pa;
bottom:0;
right:-15px;
z-index:0;
}

.photo{
.pa;
.oh;
.tal;
top:30vh;
width:50%;
height:40vh;

img{
.pa;
.of;
top:0;
width:100%;
height:100%;
}
}

.host1,
.host2,
.host3{
.pa;
top:0;
width:100%;
height:100%;
}

.host2{

.text{
top:auto;
bottom:10px !important;
}
.photo{
right:0;
}
}

}


/* request  ///////////////////////*/
.request:before,
.request:after{
content:"";
.db;
height:5px;
background:@c2;
-webkit-mask-image:url(../image/ornament/line3.svg);
mask-image:url(../image/ornament/line3.svg);
}


/* request  ///////////////////////*/
.request{
.pr;
.oh;
.tac;
color:@text;
background:rgba(255,255,255,.85);
margin-top:7rem;

.article{
padding:7rem 0;
clip-path: polygon(0 0,0 100%,100% 100%,100% 0);
}

.title p{
font-size:3rem;
line-height:3rem;
.ffm3;
}

.contents{
padding:0 1rem;
}

dl{
.pr;
padding:3rem 0 2rem 0;
}
dl:after{
content:"";
.pa;
.dib;
.vam;
background:#FFF;
-webkit-mask-image:url(../image/ornament/point1.svg);
-webkit-mask-repeat: no-repeat;
mask-image:url(../image/ornament/point1.svg);
mask-repeat: no-repeat;
width:10px;
.as(1/1);
margin:2rem 0 0 -5px;
}

dd{
line-height:1.6rem;
}

}


/* event  ///////////////////////*/
.event{

.title p{
font-size:3rem;
line-height:3rem;
.ffm3;
}

}


/* footer  ///////////////////////*/
.footer{
.pr;
.tac;
padding:45vh 0 45vh 0;

.logo{
.center;
width:120px;
.as(1/.6);
background:@text;
-webkit-mask-image:url(../../image/logo.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-size:contain;
mask-image:url(../../image/logo.svg);
mask-repeat:no-repeat;
mask-size:contain;
}

.copy{
.ffg;
font-size:.8rem;
}

}


.pagetop{
a:before{
border-top:2px @text solid;
border-right:2px @text solid;
}
}