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

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

/* color  ///////////////////////*/
@text:#3b3e40;
@bg:#FFF;

@c1:#2B397D;
@c2:#54595F;
@c3:#E9F2FF;
@c4:#f7fbff;

@c5:#97acc9;
@c6:#aeb2b8;

@c7:#F6F3EF;


a{
.tdn;
color:@text;
}


/* font  ///////////////////////*/
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Opti&display=swap');

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

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');

.ffm2{
font-family: "Jost", sans-serif;
font-optical-sizing: auto;
font-weight: 400;
font-style: normal;
}


@import url('https://fonts.googleapis.com/css2?family=Righteous&display=swap');

.ffm3{
font-family: "Righteous", sans-serif;
font-weight: 400;
font-style: normal;
}

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

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


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

/* .question dd:before */


/* 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 1rem;
.center;
}


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


/* canvas  ///////////////////////*/
.canvas{
.pf;
.oh;
top:0;
left:0;
width:100%;
height:100vh;
z-index:0;
}


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

.article{
.pa;
top:0;
left:0;
width:100%;
height:100%;
}
article{
.jc;
width:100%;
height:100%;
}

.bg{
.pa;
top:0;
left:20%;
width:60%;
height:100%;
background:@c2;
background: repeating-linear-gradient(90deg, @c3, @c3 7.6%, @c4 7.6%, @c4 15.5%);
z-index:0;
}

.flag{
.pa;
top:0;
right:5%;
width:20%;
max-width:80px;
.as(1/1.2);
background:@c1;
-webkit-mask-image:url(image/flag.svg);
-webkit-mask-repeat:none;
-webkit-mask-size:cover;
mask-image:url(image/flag.svg);
mask-repeat:none;
mask-size:cover;
z-index:10;

color:#FFF;
.tac;
padding:1rem 0;

em{
.ffm3;
font-size:1.3rem;
}
p{
.ffm3;
font-size:1rem;
padding:10px 0 0 0;
}
}

.contents{
.pr;
.tac;
width:100%;
padding:0;
}

.photo{
.pr;
width:70%;
max-width:320px;
.as(1/1);
.center;
background:@c3;
border:10px #FFF solid;
.r(50%);
}

.photo:after{
content:"";
.pa;
top:0;
left:0;
width:100%;
height:100%;
.r(50%);
background:url(../image/texture/bg4.png);
z-index:1;
}
.photo p{
.center;
width:100%;
height:100%;
.r(50%);
filter:grayscale(50%);
z-index:0;
}

.title{
.pr;
.db;
.tac;
padding:2rem 0 0 0;

p{
.nw;
.ffm3;
font-size:2.6rem;
line-height:2.6rem;
letter-spacing:.3rem;
color:@c1;
}

small{
.dib;
.ffm4;
font-size:3.6rem;
transform:rotate(-20deg);
letter-spacing:0;
margin:0 .5rem 0 0;
text-stroke-width: .5px;
text-stroke-color:@c1;
-webkit-text-stroke-width: .5px;
-webkit-text-stroke-color:@c1;
}
}

.text{
padding:0 0 0 0;
}

h1{
.dn;
}
.text small{
.ffm2;
font-size:1rem;
line-height:1rem;
}
h2{
.db;
}
h2 p{
.nw;
.ffm2;
font-size:1.6rem;
line-height:1.6rem;
padding:1rem 0;
color:@c1;
}
em p{
.nw;
.ffm2;
font-size:1rem;
line-height:1rem;
color:@c1;
}

.scroll{
.dn;
}

}


/* message  ///////////////////////*/
.message{
.pr;
.oh;
z-index:1;
padding:1rem 1rem 5rem 1rem;
background:@c1 url(../image/texture/bg32.png);
color:#FFF;

.article{
}

article{
width:100%;
}

.contents{
.pr;
.center;
padding:7rem 1rem;
}

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

.text p{
.tac;
padding:2rem 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:3;
margin:-90px auto 0 auto;

.title{
.jc;
.pr;
.tac;
.center;
width:180px;
.as(1/1);
background:@c2 url(../image/texture/bg19.png);
z-index:2;
}

.title header{

h2 p{
.ffm2;
font-size:2rem;
line-height:2rem;
color:#FFF;
}
em p{
padding:1rem 0 0 0;
font-size:1.3rem;
color:#FFF;
}
}

.contents{
padding:0 1rem 7rem 1rem;
}

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

}


/* desk ///////////////////////*/
.desk{
.pr;
.oh;
.tac;
padding:5rem 0 0 0;

header{
padding:0 0 2rem 0;

h3 p{
.tac;
.ffm2;
font-size:1.75rem;
line-height:1.75rem;
color:@c2;
}
em p{
.tac;
font-size:.85rem;
line-height:.85rem;
padding:1rem 0 0 0;
}
}

.wrap{
.center;
background:@c4 url(../image/texture/bg4.png);
padding:1rem 0 2rem 0;
}

}


/* floor ///////////////////////*/
.floor{
.pr;
.oh;
.tac;
padding:5rem 0 0 0;

header{
padding:0 0 2rem 0;

h3 p{
.tac;
.ffm2;
font-size:1.75rem;
line-height:1.75rem;
color:@c2;
}
em p{
.tac;
font-size:.85rem;
line-height:.85rem;
padding:1rem 0 0 0;
}
}

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

}


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

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

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

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

h3 p{
font-size:4.5rem;
line-height:4.5rem;
.ffm3;
}
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:#FFF;
font-size:40px;
text-anchor:middle;
.ffm3;
}
.object{
fill:@c6;
stroke:rgba(255, 255, 255, .5);
stroke-width:5px;
}
.active{
fill:@c5;
stroke:rgba(255, 255, 255, .5);
stroke-width:5px;
}
a{
text-decoration:none;
}

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

}


.show{
.desk svg,
.floor svg{

.text1{
fill:@text;
}
.text2{
fill:@text;
}
.text3{
fill:@text;
}
.text4{
fill:@text;
}

.object{
fill:@c6;
}
.active{
fill:@c5;
}

}
}


/* menu  ///////////////////////*/
.menu{
.pr;
.oh;
.tac;
padding:7rem 0;
background:@c7 url(../image/texture/bg32.png);

/*
.article:before{
.pa;
top:0;
left:-1rem;
content:"";
width:40%;
.as(1/1.45);
background:#9C9C9C;
-webkit-mask-image:url(image/cut.svg);
-webkit-mask-repeat: no-repeat;
-webkit-mask-size:contain;
mask-image:url(image/cut.svg);
mask-repeat: no-repeat;
mask-size:contain;
transform:scale(-1,-1);
z-index:0;
}
*/

.title{
padding:0 0 3rem 0;
}

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

.contents{
.pr;
z-index:1;
}

.food, .drink{

header{
.dn;
padding:1rem 0 2rem 0;
}
h3 p{
font-size:2rem;
}
em p{
padding:1rem 0 0 0;
font-size:1.2rem;
}
}

.food{
padding:0 1rem;
border:0 @c2 solid;
background:#FFF url(../image/texture/bg4.png);
}

.drink{
margin:1rem 0 0 0;
padding:0 1rem;
background:@c1 url(../image/texture/bg32.png);
color:#FFF;

dt:before{
background:@c4 !important;
}
dt p{
color:#FFF;
}

}

dl{
padding:1rem 1rem 3rem 1rem;
}

dt{
.pr;
padding:5rem 0 0 0;
}
dt p{
font-size:1.3rem;
.ffm2;
color:@c1;
}
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;
opacity:.3;
.as(1/1);
}
dt:first-child{
padding:2rem 0 0 0;
}
dt:first-child:before{
.dn;
}

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

.image{
.pr;
padding:1rem 0 0 0;
}

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

}


/* profile ///////////////////////*/
.profile{
.pr;
.oh;
.tac;
padding:7rem 0;
background:@c1 url(../image/texture/bg32.png);
color:#FFF;

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

.contents{
padding:3rem 1rem 0 1rem;
}

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

h4 p{
.ffm4;
font-size:4rem;
line-height:4rem;
padding:1rem 0 2rem 0;
text-stroke-width: .5px;
text-stroke-color:#FFF;
-webkit-text-stroke-width: .5px;
-webkit-text-stroke-color:#FFF;
}
.name{
.pr;
padding:0 0 1rem 0;
}
span{
font-size:.85rem;
line-height:1.6rem;
}
}

.sns{
padding:1rem 0 0 0;

ul{
.dt;
.center;
}
li{
.dtc;
padding:3px;
}
img{
width:25px;
filter:invert();
}
a{
.pr;
.jc;
}
a:before{
content:"";
.db;
.pa;
width:200%;
height:200%;
.r(50%);
box-shadow: inset 0px 0px 10px 0px rgba(255, 255, 255, .75);
}
}

}


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

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

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

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


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

}


/* gallery  ///////////////////////*/
.gallery{
.pr;
z-index:1;
background:@c1;

.bg{
.dn;
top: 0 ;
height:100vh;
position:sticky;
opacity:.8;
filter: grayscale(100%);
}

}


/* memory ///////////////////////*/
.memory .article{
.pf;
z-index:-1;
inset:0;
width:100%;
height:100vh;
background:@text url(../image/texture/bg32.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;
}

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

.title{

h3 p{
.ffm2;
font-size:2rem;
line-height:2rem;
letter-spacing:.1em;
padding:0 0 1rem .1em;
color:#FFF;
}
p{
line-height:1.3rem;
color:#FFF;
}
}

ul{
width:100%;
max-width:420px;
padding:1rem;
}

li{
.dib;
width:33%;
}

dt{
padding:5px;
opacity:0;

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

.host1{
.pa;
top:0;
}

.host2{
.pa;
bottom:0;
}

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

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

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

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

}

/* question  ///////////////////////*/
.question{
.pr;
.tac;
.oh;
padding:4rem 0 1rem 0;

header{
.pr;
padding:5rem 0 0 0;
}

header:before{
content:"";
.pa;
top:4rem;
left:0;
right:0;
.center;
.db;
width:75px;
background:@c1 url(../image/texture/bg32.png);
.as(1/1);
}

header:after{
content:"";
.pa;
top:4rem;
left:0;
right:0;
.center;
.db;
-webkit-mask-image:url(../image/icon/profile1.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-position: -25px 5px;
-webkit-mask-size:145%;
mask-image:url(../image/icon/profile1.svg);
mask-repeat:no-repeat;
mask-position: -25px 5px;
mask-size:145%;
background:#FFF;
width:75px;
.as(1/1);
}

.q2 header:after{
-webkit-mask-image:url(../image/icon/profile2.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-position: 5px 5px;
mask-image:url(../image/icon/profile2.svg);
mask-repeat:no-repeat;
mask-position: 5px 5px;
}
.q3 header:after{
-webkit-mask-image:url(../image/icon/profile3.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-position: 5px 10px;
mask-image:url(../image/icon/profile3.svg);
mask-repeat:no-repeat;
mask-position: 5px 10px;
}
.q4 header:after{
-webkit-mask-image:url(../image/icon/profile4.svg);
-webkit-mask-repeat:no-repeat;
-webkit-mask-position: -5px -1rem;
mask-image:url(../image/icon/profile4.svg);
mask-repeat:no-repeat;
mask-position: -5px -1rem;
}

h3 p{
padding:5rem 0 3rem 0;
font-size:1.15rem;
}

dl{
margin:0 1rem;
border-top:1px @c2  dotted;
}

dt p{
.db;
cursor:pointer;
padding:1rem 0;
}
dt a{
.jc;
.pr;
border-bottom:1px @c2 dotted;
}
dt a:before{
content:"";
.db;
.pa;
width:80px;
.as(1/1);
.r(50%);
box-shadow:inset 0px 0px 10px 0px rgba(60, 72, 129, 1);
}

}


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

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

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

.text{
.pa;
width:60vw;
z-index:1;
padding:1rem;
transform:rotate(0deg);

em{
.tal;
.db;
.ffm4;
font-size:5rem;
line-height:5rem;
color:#FFF;
text-stroke-width: .5px;
text-stroke-color:#FFF;
-webkit-text-stroke-width: .5px;
-webkit-text-stroke-color:#FFF;
margin:0 0 1rem 0;
border-bottom:1px #FFF solid;
}
p{
.db;
.tal;
color:#FFF;
font-size:1.15em;
line-height:1.4em;
}
}

.photo{
.pa;
top:0;
width:45vw;
height:50vh;
z-index:0;
/* filter:grayscale(100%); */

img{
.of;
width:100%;
height:100%;
}
}

.host1,
.host3{
.pa;
top:0;
left:0;
width:100%;
height:50vh;

.text{
right:0;
bottom:2rem;
}
img{
clip-path: polygon(0 0, 100% 0, 70% 94%, 0 100%);
}
}

.host2{
.pa;
.tac;
width:100%;
height:50vh;
bottom:0;
right:0;

.text{
left:0;
}
.photo{
right:0;
}
img{
clip-path: polygon(30% 6%, 100% 0, 100% 100%, 0 100%);
}
}

}


/* requests  ///////////////////////*/
.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;
padding:5px 0;
background:@c4 url(../image/texture/bg4.png);
margin-top:7rem;

.article{
padding:7rem 0;
}

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

.contents{
padding:0 1rem;
}

dl{
.pr;
padding:3rem 0 1.5rem 0;
}
dl:after{
content:"";
.pa;
.dib;
.vam;
background:@c2;
-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;
}
}

