@charset "utf-8";
/* CSS Document */

/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/* ========== base style ========== */

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* ========== border ========== */
/* ========== float ========== */
/* ========== display ========== */
/* ========== position ========== */
/* ========== overflow ========== */
/* ========== width ========== */
/* ========== margin ========== */
/* ========== device displaying ========== */
/* ========== animation for ScrollTrigger.min.js  ========== */

/* other style
-----------------------------------------------*/



/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/**
* html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
* Richard Clark (http://richclarkdesign.com)
* http://cssreset.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
button, input, select, textarea,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body { line-height:1; }
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
nav ul { list-style:none; }
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}


/* ========== base style ========== */
* { box-sizing: border-box; scroll-behavior: smooth; }

html { height: 100%; }

body {
height: 100%;
min-height: 100%;
background: #fff;
color: #000;
font-size: 3.46666666vw;
font-family: adobe-garamond-pro, serif;
font-style: normal;
font-weight: 400;
font-feature-settings: "palt";
letter-spacing: 0.025em;
}
@media (min-width:375px){
	body {
	font-size: 13px;
	}
}

a:link,
a:visited {
color: #000;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a:hover,
a:hover img,
button:hover img {
opacity: 0.80;
filter: alpha(opacity=80);
}

.modal__container *,
div,p,h1,h2,h3,h4,h5,h6,li,dt,dd,th,td {
line-height: 100%;
font-family: adobe-garamond-pro, shippori-mincho-b1, serif;
font-style: normal;
font-weight: 400;
font-feature-settings: "palt";
letter-spacing: 0.025em;
}

div, article { box-sizing: border-box; }

ol, ul { list-style:none; }

img, picture, video {
width: 100%;
height: auto;
display: block;
margin-left: auto;
margin-right: auto;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}



/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* align */
.al_left { text-align: left; }
.al_center { text-align: center; }
.al_right { text-align: right; }

/* size */
.fs8 { font-size: 2.133333vw; }
.fs9 { font-size: 2.4vw; }
.fs10 { font-size: 2.666666vw; }
.fs11 { font-size: 2.933333vw; }
.fs12 { font-size: 3.2vw; }
.fs13 { font-size: 3.466666vw; }
.fs14 { font-size: 3.733333vw; }
.fs15 { font-size: 4vw; }
.fs16 { font-size: 4.266666vw; }
.fs17 { font-size: 4.533333vw; }
.fs18 { font-size: 4.8vw; }
.fs20 { font-size: 5.3333333vw; }
@media (min-width:375px){
	.fs8 { font-size: 8px; }
	.fs9 { font-size: 9px; }
	.fs10 { font-size: 10px; }
	.fs11 { font-size: 11px; }
	.fs12 { font-size: 12px; }
	.fs13 { font-size: 13px; }
	.fs14 { font-size: 14px; }
	.fs15 { font-size: 15px; }
	.fs16 { font-size: 16px; }
	.fs17 { font-size: 17px; }
	.fs18 { font-size: 18px; }
	.fs20 { font-size: 20px; }
}

/* weight */
.fw200 { font-weight: 200 !important; }
.fw300 { font-weight: 300 !important; }
.fw400 { font-weight: 400 !important; }
.fw500 { font-weight: 500 !important; }
.fw600 { font-weight: 600 !important; }
.fw700 { font-weight: 700 !important; }
.fw800 { font-weight: 800 !important; }
.fw900 { font-weight: 900 !important; }

/* line height */
.lh100 { line-height: 100%; }
.lh120 { line-height: 120%; }
.lh130 { line-height: 130%; }
.lh140 { line-height: 140%; }
.lh150 { line-height: 150%; }
.lh160 { line-height: 160%; }
.lh170 { line-height: 170%; }
.lh180 { line-height: 180%; }
.lh190 { line-height: 190%; }
.lh200 { line-height: 200%; }
.lh210 { line-height: 210%; }
.lh225 { line-height: 225%; }

/* letter space */
.ltrspace0 { letter-spacing: 0; }
.ltrspace0025 { letter-spacing: 0.025em; }
.ltrspace005 { letter-spacing: 0.05em; }
.ltrspace0075 { letter-spacing: 0.075em; }
.ltrspace01 { letter-spacing: 0.1em; }
.ltrspace0125 { letter-spacing: 0.125em; }
.ltrspace015 { letter-spacing: 0.15em; }

.deco_line { text-decoration: underline !important; }


/* ========== float ========== */
/* clearfix */
.clearfix:before,
.clearfix:after {
display: table;
content: " ";
}
.clearfix:after { clear: both; }

/* float */
.float_left { float: left; }
.float_right { float: right; }


/* ========== display ========== */
.disp_block { display: block !important;}
.disp_iblock { display: inline-block !important;}
.disp_inline { display: inline !important;}
.disp_none { display: none;}
.disp_flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }


/* ========== position ========== */
.posi_relative { position: relative !important; }
.posi_absolute { position: absolute !important; }
.posi_fixed { position: fixed !important; }


/* ========== overflow ========== */
.overflow_hidden { overflow: hidden !important; }


/* ========== margin ========== */
/* margin-auto */
.mx_auto { margin-left: auto; margin-right: auto; }


/* ========== device displaying ========== */
.sp_none, .tab_only, .pc_only { display: none; }
@media (min-width:768px){
	.sp_none, .tab_only { display: block; }
	.sp_only, .tab_none { display: none; }
}
@media (min-width:1200px){
	.tab_only, .pc_none { display: none; }
	.pc_only { display: block; }
}


@media (min-width:768px){.sp_only{display: none;}}
.spc_none{ display: block; }
@media (min-width:1099px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1100px){.pc_none{display: none;}
.pc_only{display: block;}
.tab_none{ display: block; }
}


/* ========== animation for ScrollTrigger.min.js  ========== */
.invisible {
transition: opacity 1s ease;
opacity: 0.0;
}
.visible {
transition: opacity 1s ease;
opacity: 1.0;
}



/* other style
-----------------------------------------------*/
.allwrapper { /* Xscroll bar hidden */
position: relative;
width: 100%;
margin-bottom: -100vw;
background: #c8c5c9;
animation-delay: 0.75s;
overflow: hidden;
}

.mv {
width: 100%;
min-height: 133vw;
}
.mv_img img {
animation-delay: 0.75s;
}
.mv_title {
top: 5.6vw;
left: 78.13333333%;
width: 18.13333333%;
animation-delay: 1.5s;
}
.mv_logo {
top: 116.53vw;
left: 5.33333333%;
width: 20%;
}
@media (min-width:768px){
	.mv {
	min-height: 66vw;
	}
	.mv_img01,
	.mv_img02 {
	width: 100%;
	height: 66vh;
	}
	.mv_img01 {
	background: url("../images/mv-img01_pc.jpg") center center / cover;
	}
	.mv_img02 {
	background: url("../images/mv-img02_pc.jpg") center center / cover;
	}
	.mv_title {
	top: auto;
	bottom: 3.33vw;
	left: 51.91666666%;
	width: 45%;
	}
	.mv_logo {
	top: auto;
	bottom: 3.33vw;
	left: 3.66666666%;
	width: 9.23333333%;
	}
}
@media (min-width:1200px){
	.mv {
	min-height: auto;
	height: 100vh;
	overflow: hidden;
	}
	.mv_img01,
	.mv_img02 {
	height: 100vh;
	}
}

.modal_open {
cursor: pointer;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.modal_open:hover img {
opacity: 0.70;
filter: alpha(opacity=70);
}
img.ico_plus {
bottom: 10px;
right: 10px;
width: 15px;
margin: 0;
}
@media (min-width:1200px){
	img.ico_plus {
	bottom: 15px;
	right: 15px;
	width: 22px;
	}
}

.look01-img01 { width: 61.33333333%; margin: 21.33vw auto 0 6.66666666%; }
.look02-img01 { width: 76%; margin: 2px 0 0 auto; }
.look03-img01 { width: 88%; margin: 20vw auto 0 0; }
.look03-img02 { width: 88%; margin: 0 auto 0 0; }
.look04-img01 { width: 61.33333333%; margin: 20.53vw auto 0 0; }
.look04-img02 { width: 61.33333333%; margin: 2px auto 0 34.66666666%; }
.look05-img01 { width: 96%; margin: 21.33vw auto 0 0; }
.look05-img01 img.ico_plus { bottom: calc(29.86vw + 10px); }
.look05-img02 { width: 92%; margin: -29.86vw 0 0 auto; }
.look06-img01 { width: 50%; margin: 20vw 1.6% 0 auto; }
.look06-img02 { width: 48.53333333%; margin: -61.86vw auto 0 0; }
.look07-img01 { width: 100%; margin: 2px auto 0; }
.look08-img01 { width: 100%; height: 132vw; margin: 2.4vw auto 0; overflow: hidden; }
.txt-thenostalgic { width: 40%; margin: 20vw auto 0 6.13333333%; }
.look09-img01 { width: 50.66666666%; margin: 8vw auto 0 0; }
.look10-img01 { width: 42.66666666%; margin: -96vw auto 0 51.2%; }
.look10-img02 { width: 76%; margin: 32.53vw auto 0 0; }
.look11-img01 { width: 88%; margin: 20vw 0 0 auto; }
.look11-img02 { width: 88%; margin: -99.46vw auto 0; animation-delay: 0.5s; }
.look11-img03 { width: 88%; margin: -99.46vw auto 0 0; animation-delay: 0.5s; }
.look12-img01 { width: 61.33333333%; margin: 20vw auto 0 0; }
.look12-img02 { width: 61.33333333%; margin: 2px auto 0; }
.look13-img01 { width: 80%; margin: 20vw 0 0 auto; }
.look13-img02 { width: 50%; margin: -74.93333333vw auto 0 0; }
.look14-img01 { width: 100%; height: 149.86666666vw; margin: 2px auto 0; overflow: hidden; }
.look15-img01 { width: 50.66666666%; margin: 20vw auto 0; }
.look16-img01 { width: 100%; height: 132vw; margin: 20vw auto 0; overflow: hidden; }
.flowtext {
width: 100%;
height: 15.2vw;
margin-top: 2.66vw;
background: url("../images/flowtext_sp.png") repeat-x;
background-size: auto 100%;
animation: bgLoop01_sp 12s linear infinite;
}
@keyframes bgLoop01_sp {
	0% { background-position: 0 0;}
	100% { background-position: 133.33333333vw 0; }
}
@keyframes bgLoop01_tab {
	0% { background-position: 0 0;}
	100% { background-position: 61.41666666vw 0; }
}
@keyframes bgLoop01_pc {
	0% { background-position: 0 0;}
	100% { background-position: 737px 0; }
}
@media (min-width:768px){
	.look01-img01 { width: 28.75%; margin: 6.25vw auto 0 17.5%; }
	.look02-img01 { width: 35.58333333%; margin: -43.125vw auto 0 47%; animation-delay: 0.5s; }
	.look03-img01 { width: 41.25%; margin: 27.91666666vw auto 0 8.75%; }
	.look03-img02 { width: 41.25%; margin: -61.83333333vw auto 0 50%; animation-delay: 0.5s; }
	.look04-img01 { width: 28.75%; margin: 8.33vw auto 0 26.66666666%; }
	.look04-img02 { width: 28.75%; margin: -25.66666666vw auto 0 56.25%; }
	.look05-img01 { width: 100%; margin: 8.33333333vw auto 0; }
	.look05-img01 img.ico_plus { bottom: 10px; }
	.look05-img02 { width: 45%; margin: -54.41666666vw auto 0 5%; animation-delay: 0.5s; }
	.look06-img01 { width: 23.41666666%; margin: 8.33333333vw auto 0; animation-delay: 0.5s; }
	.look06-img02 { width: 23.41666666%; margin: -29vw auto 0 14.83333333%; }
	.look07-img01 { width: 70.41666666%; margin-top: 0.83333333vw; }
	.look08-img01 { height: 53vw; margin: 1.0833vw auto 0; }
	.txt-thenostalgic { width: 18.75%; margin: 20vw auto 0 68.08333333%; }
	.look09-img01 { width: 23.75%; margin: -15.25vw auto 0 20%; animation-delay: 0.5s; }
	.look10-img01 { width: 20%; margin: -44.58333333vw auto 0 44.58333333%; }
	.look10-img02 { width: 35.58333333%; margin: 0.83333333vw auto 0 44.58333333%; }
	.look11-img01 { width: 41.25%; margin: 8.33333333vw auto 0 38.91666666%; }
	.look11-img02 { width: 41.25%; margin: -46.66666666vw auto 0 26.83333333%; }
	.look11-img03 { width: 41.25%; margin: -46.66666666vw auto 0 14.66666666%; }
	.look12-img01 { width: 28.75%; margin: 8.33333333vw auto 0 14.66666666%; }
	.look12-img02 { width: 28.75%; margin: -33.33333333vw auto 0 44.25%; }
	.look13-img01 { width: 37.5%; margin: 8.33333333vw auto 0 40.41666666%; }
	.look13-img02 { width: 23.41666666%; margin: -35.16666666vw auto 0 31%; }
	.look14-img01 { width: 93.66666666%; height: auto; margin-top: 0.83333333vw; }
	.look14-img01 picture { width: 50%; }
	.look14-img01 div picture:nth-child(2) { animation-delay: 0.3s; }
	.look14-img01 img.ico_plus { right: calc(50% + 10px); }
	.look15-img01 { width: 23.75%; margin-top: 8.33333333vw; }
	.look16-img01 { height: 53vw; margin: 8.3333333vw auto 0; }
	.flowtext {
	height: 7.0833333333vw;
	margin-top: 1.41666666vw;
	background: url("../images/flowtext_pc.png") repeat-x;
	background-size: auto 100%;
	animation: bgLoop01_tab 12s linear infinite;
	}
}
@media (min-width:1200px){
	.look01-img01 { width: 345px; margin: 75px auto 0 calc(50% - 392px); }
	.look02-img01 { width: 427px; margin: -517.5px auto 0 calc(50% - 37px); }
	.look03-img01 { width: 495px; margin: 333px auto 0 calc(50% - 495px); }
	.look03-img02 { width: 495px; margin-top: -742.5px; }
	.look04-img01 { width: 345px; margin: 100px auto 0 calc(50% - 280px); }
	.look04-img02 { width: 345px; margin: -310px auto 0 calc(50% + 75px); }
	.look05-img01 { width: 1200px; margin-top: 100px; }
	.look05-img01 img.ico_plus { bottom: 15px; }
	.look05-img02 { width: 540px; margin: -650px auto 0 calc(50% - 540px); }
	.look06-img01 { width: 281px; margin-top: 100px; }
	.look06-img02 { width: 280.5px; margin: -421.5px auto 0 calc(50% - 420px); }
	.look07-img01 { width: 845px; margin-top: 10px; }
	.look08-img01 { margin-top: 13px; }
	.txt-thenostalgic { width: 230px; margin: 155px auto 0 calc(50% + 215px); }
	.look09-img01 { width: 285px; margin: -182px auto 0 calc(50% - 360px); }
	.look10-img01 { width: 240px; margin: -542px auto 0 calc(50% - 65px); }
	.look10-img02 { width: 427px; margin: 10px auto 0 calc(50% - 65px); }
	.look11-img01 { width: 495px; margin: 100px auto 0 calc(50% - 133px); }
	.look11-img02 { width: 495px; margin: -557px auto 0 calc(50% - 279px); }
	.look11-img03 { width: 495px; margin: -557px auto 0 calc(50% - 424px); }
	.look12-img01 { width: 345px; margin: 100px auto 0 calc(50% - 424px); }
	.look12-img02 { width: 345px; margin: -400px auto 0 calc(50% - 69px); }
	.look13-img01 { width: 450px; margin: 100px auto 0 calc(50% - 115px); }
	.look13-img02 { width: 281px; margin: -421.5px auto 0 calc(50% - 228px); }
	.look14-img01 { width: 1136px; margin-top: 10px; }
	.look14-img01 img.ico_plus { right: calc(50% + 15px); }
	.look15-img01 { width: 285px; margin-top: 100px; }
	.look16-img01 { margin-top: 100px; }
	.flowtext {
	height: 85px;
	margin-top: 20px;
	animation: bgLoop01_pc 12s linear infinite;
	}
}

.outro {
width: 100%;
margin-top: 28vw;
}
.outro_title {
top: 6.66vw;
right: 3.73333333%;
width: 18.13333333%;
}
@media (min-width:768px){
	.outro {
	width: 91.66666666%;
	margin-top: 8.33333333vw;
	}
	.outro_title {
	top: 3vw;
	right: 2.416666666%;
	width: 8.636363636%;
	}
}
@media (min-width:1200px){
	.outro {
	width: 1100px;
	margin-top: 100px;
	}
	.outro_title {
	top: 25px;
	}
}

.staffcredit {
width: 66.66666666%;
margin: 20vw auto 0 0;
}
.staffcredit_text {
bottom: 3.2vw;
left: 4.5333vw;
color: #f6ebd3;
}
@media (min-width:768px){
	.staffcredit { width: 230px; margin: 100px auto 0 calc(50% - 230px); }
	.staffcredit_text { bottom: 12px; left: 18px; }
}
@media (min-width:1200px){
	.staffcredit { width: 360px; margin: 110px auto 0 calc(50% - 360px); }
	.staffcredit_text { bottom: 12px; left: 18px; line-height: 190%; font-size: 11px; }
}
.banner {
margin-top: 33.33333333%;
}
@media (min-width:768px){
	.banner {
	width: 41.25%;
	margin-top: 10.83vw;
	}
}
@media (min-width:1200px){
	.banner {
	width: 495px;
	margin-top: 125px;
	}
}

.bottomlink {
margin-top: 24vw;
}
.footer_insta {
width: 40px;
margin-top: 80px;
}
.footer_logo {
width: 98px;
margin-top: 65px;
}
.footer_copy {
margin-top: 30px;
padding-bottom: 50px;
}
@media (min-width:768px){
	.bottomlink {
	margin-top: 75px;
	}
}


/* ========== modal ========== */
body.is-modal-active,
body.is-concept-active {
overflow: hidden;
}
body.is-concept-active .wrapper {
transform: translateX(-86.66vw);
}

.modal {
z-index: 200;

}
.modal__container{
z-index:9000;
position: fixed;
top: 0;
right: 0;
width: 100%;
height: 101%;
text-align: center;
background: rgba(0, 0, 0, 0.5);
overflow: auto;
opacity: 0;
visibility: hidden;
box-sizing: border-box;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.modal__container.is-active{
visibility: visible;
opacity: 1;
}
.modal__close-btn{
position: fixed;
top: 50px;
right: 4.5vw;
width: 12px;
cursor: pointer;
color: #fff;
}
.modal__content{
background: #634521;
padding-bottom: 32.27vw;
text-align: left;
}
.modal_item {
width: 78.66666666vw;
}
.modal_item {
padding-top: 50px;
}
.modal_price {
margin-top: 10px;
}
.modal_price li {
line-height: 220%;
}
.modal_price li.properties {
margin-top: 1.2em;
line-height: 180%;
}
.modal_price li a {
color: #fff;
}
.modal_price li a span.buy {
text-decoration: underline;
}
.modal_shoponly,
.modal_price_shoponly li {
color: #e9c788;
}
.modal_shoponly {
margin-top: 20px;
}
.modal_price_shoponly {
margin-top: 10px;
}
.modal_price_shoponly li {
line-height: 176%;
}
@media (min-width:768px){
	.body.is-modal-active .modal {
	background: rgba(255, 255, 255, 0.3);
	}
	.modal__container{
	left: auto;
	right: 0;
	}
	.modal__content {
	width: 520px;
	margin: 0 0 0 auto;
	padding-bottom: 100px;
	}
	.modal__close-btn {
	top: 50px;
	right: 485px;
	}
	.modal_item {
	width: 400px;
	}
}
@media (min-width:1200px){
	.modal__content{
	width: 620px;
	}
	.modal__close-btn {
	left: calc(100% - 612px);
	right: auto;
	}
	.modal_item {
	width: 500px;
	}
}

