@charset "utf-8";
/* CSS Document */

/* base
-----------------------------------------------*/
/* ========== base style ========== */

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* ========== border ========== */
/* ========== float ========== */
/* ========== display ========== */
/* ========== position ========== */
/* ========== overflow ========== */
/* ========== width ========== */
/* ========== margin ========== */
/* ========== background ========== */
/* ========== device displaying ========== */
/* ========== animation for ScrollTrigger.min.js  ========== */

/* other style
-----------------------------------------------*/



/* base
-----------------------------------------------*/
picture {
display: block;
}

/* ========== base style ========== */
.allwrapper {
font-family: 'fot-cezanne-pron', sans-serif;
font-style: normal;
font-weight: 500;
font-size: 2.9333333333vw;
line-height: 100%;
letter-spacing: 0;
}
.allwrapper * {
box-sizing: border-box;
}
.allwrapper {
width: 100%;
padding-bottom: 0;
color: #3e4343;
background: #ffffff;
animation-delay: 0.75s;
}
@media (min-width:768px){
	.allwrapper {
		font-size: 13px;
	}
}
@media (min-width:1200px){
	.allwrapper {
		font-size: 16px;
	}
}
.allwrapper a:link, .allwrapper a:visited {
color: #3e4343;
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;
}
.allwrapper a:hover, .allwrapper button:hover {
opacity: 0.65;
filter: alpha(opacity=65);
}
.allwrapper ol, .allwrapper ul {
list-style:none;
}
.allwrapper img, .allwrapper video, .allwrapper button {
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.1333333333vw; }
.fs9 { font-size: 2.4vw; }
.fs10 { font-size: 2.6666666666vw; }
.fs11 { font-size: 2.9333333333vw; }
.fs12 { font-size: 3.2vw; }
.fs13 { font-size: 3.4666666666vw; }
.fs14 { font-size: 3.7333333333vw; }
.fs15 { font-size: 4vw; }
.fs16 { font-size: 4.2666666666vw; }
.fs17 { font-size: 4.5333333333vw; }
.fs18 { font-size: 4.8vw; }
.fs19 { font-size: 5.0666666666vw; }

/* 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; }

/* line height */
.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%; }

/* 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; }

/* decotarion */
.deco_line { text-decoration: underline; }


/* ========== 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{ display: none; }
img.sp_none{ display: none; }
.sp_only{ display: block; }
img.sp_only{ display: block; }
@media (min-width:600px){
	.sp_none{display: block;}
	img.sp_none{display: block;}
	.tab_none { display: none; }
	img.tab_none { display: none; }
	.sp_only{display: none;}
	img.sp_only{display: none;}
	.sp_only{display: none;}
	img.sp_only{display: none;}
}
.spc_none{ display: block; }
@media (min-width:1199px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1200px){.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 { width: 100vw; overflow: hidden; animation-delay: 0.75s; }
@media (max-width:767px){
	.allwrapper { padding-top: 0 !important; padding-bottom: 110px; }
}
@media (min-width:768px){
	body.static .wrapper { margin-top: 0; }
	.sp-menu { display: none; }
}
@media (min-width:1200px){
	.allwrapper { width: 100%; padding-bottom: 140px; }
}
.sp-menu,
.pc-menu {
position: relative;
background: #fff;
z-index: 100;
}

.ff_trajan {
font-family: trajan-pro-3, serif;
font-weight: 400;
}
.ff_shipporimin {
font-family: shippori-mincho-b1, sans-serif;
}

.mv {
width: 100%;
min-height: 133.333333333vw;
overflow: hidden;
}
.mv_title {
top: 33%;
left: 4.8%;
width: 31.2%;
animation-delay: 1.5s;
}
@media (min-width:768px){
	.mv {
	min-height: 66vw;
	}
	.mv_title {
	top: 36%;
	left: 28%;
	width: 15.5555555555%;
	}
}

.intro {
padding: 10vw 0 0;
}
.intro_text01 {
margin-top: 1.8em;
letter-spacing: 0.04em;
}
.intro_text01:first-child {
margin-top: 0;
}
.intro_title {
margin-top: 13.6vw;
font-size: 6.4vw;
background: #eee;
line-height: 12vw;
letter-spacing: 0.03em;
}
.intro_text02 {
margin-top: 6.93vw;
line-height: 218%;
}
.intro_img {
width: 64%;
margin-top: 6.6666666666vw;
}
@media (min-width:768px){
	.intro {
	padding: 50px 0 0;
	}
	.intro_text01 {
	margin-top: 2.14em;
	line-height: 214%;
	}
	.intro_title {
	width: 350px;
	margin-top: 50px;
	font-size: 23px;
	line-height: 42px;
	}
	.intro_text02 {
	margin-top: 40px;
	line-height: 218%;
	}
	.intro_img {
	width: 310px;
	margin-top: 40px;
	}
}
@media (min-width:1220px){
	.intro {
	padding: 75px 0 0;
	}
	.intro_text01 {
	font-size: 14px;
	}
	.intro_title {
	width: 564px;
	margin-top: 95px;
	font-size: 36px;
	line-height: 68px;
	}
	.intro_text02 {
	margin-top: 45px;
	}
	.intro_img {
	width: 480px;
	margin-top: 50px;
	}
}

.lineup {
padding: 26.66vw 0 15.2vw;
}
.lineup_title {
font-size: 6.1333333333vw;
}
.lineup_list_wrapper {
width: 90.6666666666%;
margin-top: 8vw;
}
.lineup_list_wrapper li {
width: 25%;
height: 30.6666666666vw;
overflow: hidden;
}
.lineup_list_wrapper li:nth-child(2) {
animation-delay: 0.2s;
}
.lineup_list_wrapper li:nth-child(3) {
animation-delay: 0.4s;
}
.lineup_list_wrapper li:nth-child(4) {
animation-delay: 0.6s;
}
.lineup_list_wrapper li img {
top: 0;
left: 0;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all  0.5s ease;
}
.lineup_list_wrapper li:hover img {
opacity: 0.6;
transform: scale(1.075);
}
.lineup_list_wrapper li a {
position: relative;
display: flex;
align-items: center;
width: 100%;
height: 30.6666666666vw;
overflow: hidden;
text-align: center;
color: #fff !important;
letter-spacing: 0.03em;
}
.lineup_list_wrapper li a div {
width: 100%;
}
@media (min-width:768px){
	.lineup {
	padding: 85px 0 50px;
	}
	.lineup_title {
	font-size: 25px;
	}
	.lineup_list_wrapper {
	width: 544px;
	margin-top: 27px
	}
	.lineup_list_wrapper li,
	.lineup_list_wrapper li a {
	height: 184px;
	}
	.lineup_list_wrapper li a div {
	font-size: 18px;
	}
}
@media (min-width:1220px){
	.lineup {
	padding: 160px 0 80px;
	}
	.lineup_title {
	font-size: 46px;
	}
	.lineup_list_wrapper {
	width: 1020px;
	margin-top: 50px;
	}
	.lineup_list_wrapper li,
	.lineup_list_wrapper li a {
	height: 345px;
	}
	.lineup_list_wrapper li a div {
	font-size: 18px;
	}
}

.secbox {
padding: 13.33vw 0 15.2vw;
}
.secbox_title {
margin-top: 2.66vw;
font-size: 8vw;
}
.secbox_title_jp {
margin-top: 5.33vw;
}
.secbox_text {
width: 84.2666666666%;
margin-top: 5.86vw;
line-height: 218%;
}
.secbox_price {
margin-top: 7.46vw;
}
img.secbox_color {
width: auto;
height: 4vw;
margin-top: 4.8vw;
}
.secbox_buy {
width: 48%;
margin-top: 6.66vw;
line-height: 9.0666666666vw;
font-size: 3.7333333333vw;
color: #fff !important;
background: #aaa;
}
.secbox_other {
width: 48%;
margin-top: 13.8666666666vw;
}
.secbox_other dt {
margin-bottom: 2.66vw;
padding-bottom: 3.46vw;
border-bottom: 1px solid #ddd;
letter-spacing: 0.03em;
}
.secbox_other dd + dd {
margin-top: 1.6vw;
}
.secbox_other dd .disp_flex {
align-items: center;
}
.secbox_other_buy {
width: 12vw;
background: #aaa;
text-align: center;
color: #fff;
line-height: 5.3333333333vw;
letter-spacing: 0.1em;
}
.secbox_keypoint {
margin-top: 13.33vw;
}
.secbox_keypoint_title {
letter-spacing: 0.03em;
}
.secbox_keypoint_box {
width: 85.3333333333%;
margin-top: 4.8vw;
padding: 5.3333333333vw;
background: #e0dcd2;
}
.secbox_keypoint_box dl {
align-items: center;
}
.secbox_keypoint_box dl + dl {
margin-top: 4.26vw;
}
.secbox_keypoint_box dt {
width: 9.6vw;
color: #000;
}
.secbox_keypoint_box dd {
width: 64.5333333333vw;
padding-left: 4vw;
border-left: 1px solid #000;
}	
.secbox01_img01 { width: 79.4666666666%; margin: 13.33vw auto 0 3.2%; }
.secbox01_img02 { width: 72.8%; margin: 2.66vw auto 0 24.8%; }
.secbox02_img { width: 100%; margin-top: 13.33vw; }
.secbox03_img01 { width: 94.6666666666%; margin-top: 13.33vw; }
.secbox03_img02 { width: 94.6666666666%; margin-top: 0.533vw; }
.secbox04_img { width: 100%; margin-top: 13.33vw; }
@media (min-width:768px){
	.secbox {
	padding: 50px 0;
	}
	.secbox_title {
	margin-top: 15px;
	font-size: 30px;
	}
	.secbox_num {
	font-size: 14px;
	}
	.secbox_title_jp {
	margin-top: 15px;
	font-size: 13px;
	}
	.secbox_text {
	width: 400px;
	margin-top: 25px;
	line-height: 225%;
	}
	.secbox_price {
	margin-top: 25px;
	font-size: 13px;
	}
	img.secbox_color {
	height: 15px;
	margin-top: 15px;
	}
	.secbox_buy {
	width: 200px;
	margin-top: 25px;
	line-height: 34px;
	font-size: 15px;
	}
	.secbox_other {
	width: 200px;
	margin-top: 55px;
	}
	.secbox_other dt {
	margin-bottom: 10px;
	padding-bottom: 12px;
	font-size: 20px;
	}
	.secbox_other dd + dd {
	margin-top: 7px;
	}
	.secbox_other_price {
	font-size: 12px;
	}
	.secbox_other_buy {
	width: 40px;
	line-height: 16px;
	font-size: 10.5px;
	}
	.secbox_keypoint {
	margin-top: 55px;
	}
	.secbox_keypoint_title {
	font-size: 22px;
	}
	.secbox_keypoint_box {
	width: 400px;
	margin-top: 20px;
	padding: 20px 25px;
	}
	.secbox_keypoint_box dl + dl {
	margin-top: 20px;
	}
	.secbox_keypoint_box dt {
	width: 40px;
	font-size: 14px;
	}
	.secbox_keypoint_box dd {
	width: 310px;
	padding-left: 20px;
	line-height: 186%;
	}	
	.secbox01_img01 { width: 380px; margin: 35px auto 0 calc(50% - 220px); }
	.secbox01_img02 { width: 330px; margin: 10px auto 0 calc(50% - 118px); }
	.secbox02_img.sp_none { display: flex !important; width: 738px; margin-top: 40px; }
	.secbox02_img div { width: 50%; }
	.secbox03_img01 { width: 460px; margin-top: 40px; }
	.secbox03_img02 { width: 460px; margin-top: 10px; }
	.secbox04_img.sp_none { display: flex !important; width: 738px; margin-top: 40px; }
	.secbox04_img div { width: 50%; }
}
@media (min-width:1200px){
	.secbox {
	padding: 90px 0;
	}
	.secbox_title {
	margin-top: 18px;
	font-size: 45px;
	}
	.secbox_num {
	font-size: 24px;
	}
	.secbox_title_jp {
	margin-top: 20px;
	font-size: 18px;
	}
	.secbox_text {
	width: 500px;
	}
	.secbox_price {
	font-size: 16px;
	}
	img.secbox_color {
	height: 22px;
	}
	.secbox_buy {
	width: 280px;
	line-height: 44px;
	font-size: 22px;
	}
	.secbox_other {
	width: 280px;
	margin-top: 70px;
	}
	.secbox_other dt {
	margin-bottom: 13px;
	padding-bottom: 15px;
	font-size: 24px;
	}
	.secbox_other dd + dd {
	margin-top: 9px;
	}
	.secbox_other_price {
	font-size: 16px;
	}
	.secbox_other_buy {
	width: 55px;
	line-height: 24px;
	font-size: 15px;
	}
	.secbox_keypoint {
	margin-top: 70px;
	}
	.secbox_keypoint_title {
	font-size: 30px;
	}
	.secbox_keypoint_box {
	width: 564px;
	margin-top: 35px;
	padding: 30px;
	}
	.secbox_keypoint_box dl + dl {
	margin-top: 24px;
	}
	.secbox_keypoint_box dt {
	width: 45px;
	font-size: 20px;
	}
	.secbox_keypoint_box dd {
	width: 458px;
	padding: 5px 0 5px 20px;
	}	
	.secbox01_img01 { width: 596px; margin: 70px auto 0 calc(50% - 355px); }
	.secbox01_img02 { width: 545px; margin: 20px auto 0 calc(50% - 190px); }
	.secbox02_img.sp_none { width: 95%; max-width: 1380px; margin-top: 70px; }
	.secbox03_img01 { width: 710px; margin-top: 65px; }
	.secbox03_img02 { width: 710px; margin-top: 5px; }
	.secbox04_img.sp_none { width: 95%; max-width: 1380px; margin-top: 70px; }
}

.alllineup {
padding: 8vw 0;
background: #eee;
}
.alllineup_title {
font-size: 6.1333333333vw;
letter-spacing: 0.03em;
}
.alllineup_list_wrapper {
row-gap: 6.66vw;
width: 83.2%;
margin-top: 5.86vw;
}
.alllineup_list_wrapper li {
width: 40vw;
}
.alllineup_price {
margin-top: 2.66vw;
letter-spacing: -0.03em;
}
.btn_rptop {
margin-top: 26.66vw;
width: 63.2%;
line-height: 10.4vw;
color: #fff !important;
background: #3e4343;
}
@media (min-width:768px){
	.alllineup {
	margin-top: 50px;
	padding: 40px 0;
	}
	.alllineup_title {
	font-size: 24px;
	}
	.alllineup_title span {
	font-size: 20px;
	}
	.alllineup_list_wrapper {
	row-gap: 0;
	width: 640px;
	margin-top: 25px;
	}
	.alllineup_list_wrapper li {
	width: 25%;
	}
	.alllineup_price {
	margin-top: 7px;
	letter-spacing: 0.03em;
	font-size: 10px;
	}
	.btn_rptop {
	margin-top: 85px;
	width: 220px;
	line-height: 45px;
	font-size: 14px;
	}
}
@media (min-width:1200px){
	.alllineup {
	margin-top: 110px;
	padding: 70px 0;
	}
	.alllineup_title {
	font-size: 30px;
	}
	.alllineup_title span {
	font-size: 24px;
	}
	.alllineup_list_wrapper {
	width: 80%;
	max-width: 1200px;
	margin-top: 35px;
	}
	.alllineup_price {
	margin-top: 10px;
	font-size: 14px;
	}
	.btn_rptop {
	margin-top: 160px;
	width: 290px;
	line-height: 60px;
	font-size: 18px;
	}
}