@charset "UTF-8";
/* CSS Document */



@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
/*
font-family: 'Noto Sans JP', sans-serif;
Regular 400
*/


@font-face {
	font-family:'DINPro-Regular';
	src:url('../../fonts/DINPro-Regular.eot');
	src:url('../../fonts/DINPro-Regular.eot?#iefix') format('embedded-opentype'),
	url('../../fonts/DINPro-Regular.woff2') format('woff2'),
	url('../../fonts/DINPro-Regular.woff') format('woff'),
	url('../../fonts/DINPro-Regular.ttf') format('truetype'),
	url('../../fonts/DINPro-Regular.svg#DINPro-Regular') format('svg');
}

@font-face {
	font-family:'DINPro-Medium';
	src:url('../../fonts/DINPro-Medium.eot');
	src:url('../../fonts/DINPro-Medium.eot?#iefix') format('embedded-opentype'),
	url('../../fonts/DINPro-Medium.woff2') format('woff2'),
	url('../../fonts/DINPro-Medium.woff') format('woff'),
	url('../../fonts/DINPro-Medium.ttf') format('truetype'),
	url('../../fonts/DINPro-Medium.svg#DINPro-Bold') format('svg');
}

@font-face {
	font-family:'DINPro-Bold';
	src:url('../../fonts/DINPro-Bold.eot');
	src:url('../../fonts/DINPro-Bold.eot?#iefix') format('embedded-opentype'),
	url('../../fonts/DINPro-Bold.woff2') format('woff2'),
	url('../../fonts/DINPro-Bold.woff') format('woff'),
	url('../../fonts/DINPro-Bold.ttf') format('truetype'),
	url('../../fonts/DINPro-Bold.svg#DINPro-Bold') format('svg');
}




/* ---------- RESET ---------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, tt, var,
dl, dt, dd, b, u, i, center,
ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, textarea, input {
  margin:0;
  padding:0;
  border:0;
  font-size: 100%;
  font:inherit;
  vertical-align: baseline;
  text-decoration:none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
}
body {
  line-height: 1;
}
ol, ul, li {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
input, textarea, button{
  -webkit-apparence:none;
  border:none;
  background: none;
  outline: none;
}
input:focus, textarea:focus{
  -webkit-apparence:none;
  outline: none;
  border:none;
}
img{
	border:none;
	outline:none;
	vertical-align:top;
	font-size:0;
	line-height:0;
}
img a{
	border:none;
	outline: none;
}
a:focus{
	outline:none;
}
hr {
  height:0;
  margin:0;
  padding:0;
  border:0;
}
h1, h2, h3, h4, h5, h6, p{
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  text-decoration:none;
}

input, textarea, button{
  -webkit-apparence:none;
  border:none;
  background: none;
  outline: none;
}
img{
	width:100%;
	height:auto;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
	transform:translate3d(0,0,0);
}
*{
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    -webkit-box-shadow:none;
    box-shadow:none;   
    outline:none;
	box-sizing:border-box;
	margin:0;
	padding:0;
}
* {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-box-shadow: none;
    box-shadow: none;   
    outline: none;
}

html,body{
	height: 100%;
	min-height:100%;
	z-index:1;
	position:relative;
}

body{
	color:#000000;
	font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "verdana", sans-serif;
	-webkit-text-size-adjust: 100%;
	font-size: 16px;
	font-weight: 400;
	background: #E6E6E6;
    line-height: 1;
}



/* ---------------------------------------------------------------------------- */

#loader-bg{
    display:block;
    position:fixed;
    width:100vw;
    height:100vh;
    top:0px;
    left:0px;
    z-index:1000;
	background: #FFF;
}
/* ---------------------------------------------------------------------------- */


/*
body:before{
	content: '';
	position: fixed;
	width: 1px;
	left: 50%;
	top: 0;
	bottom: 0;
	background: #FF0004;
	opacity: 0.1;
	z-index: 1000;
}
/*
.guide:before{
	content: '';
	position: fixed;
	width: 1px;
	left: 10%;
	top: 0;
	bottom: 0;
	background: #FF0004;
	opacity: 0.5;
	z-index: 1000;
}
.guide:after{
	content: '';
	position: fixed;
	width: 1px;
	right: 10%;
	top: 0;
	bottom: 0;
	background: #FF0004;
	opacity: 0.5;
	z-index: 1000;
}

*/



/*-----------------------------------------------*/





header{
	width: 100%;
	height: 100%;
	position: relative;
	background: url("../images/main_pc.jpg") center center;
	background-size: cover;
}


header .title{
	position: absolute;
	top: 50%;
	left: 78%;
	width: 25%;
	z-index: 5;
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
}

header .title h1{
	width: 100%;
	position: relative;
	opacity: 0;
	top: 1.5vw;
	-webkit-transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
	transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
}
header.start .title h1{opacity: 1;top: 0;}


header .title .hh{
	width: 35%;
	margin: 10% auto 0;
	position: relative;
	opacity: 0;
	top: 1.2vw;
	-webkit-transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1) 0.4s, opacity 1.0s 0.4s;
	transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1) 0.4s, opacity 1.0s 0.4s;
}
header.start .title .hh{opacity: 1;top: 0;}




/*------------*/


.inView{
	position: relative;
	top: 2vw;
	opacity: 0;
	-webkit-transition: top 1.0s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
	transition: top 1.0s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
}
.inView.view{opacity: 1;top: 0;}

/*------------*/

.lead{
	width: 100%;
	padding: 30px;
}

.lead .leadInner{
	width: 100%;
	position: relative;
	background: url("../images/lead_bk.jpg") center center;
	background-size: cover;
	background-attachment: fixed;
}


.lead .leadInner .textBox{
	width: 70%;
	max-width: 850px;
	margin: 0 auto;
	padding: 12vw 0;
	color: #FFF;
}

.lead .leadInner .textBox h2{
	font-family:'DINPro-Bold';
	font-size: 45px;
	text-align: center;
}
.lead .leadInner .textBox h2 span{
	font-size: 0.6em;
	vertical-align: top;
}
.lead .leadInner .textBox h3{
	font-family:'DINPro-Bold';
	font-size: 35px;
	text-align: center;
	margin-top: 0.3em;
}
.lead .leadInner .textBox h3 br{display: none;}

.lead .leadInner .textBox p{
	margin-top: 1.5em;
	letter-spacing: 0.08em;
	line-height: 2.2;
}
.lead .leadInner .textBox p:first-of-type{margin-top: 3.0em;}



/*------------*/


.contents{
	width: 100%;
}


/*------------*/


.chart{
	width: calc(100% - 60px);
	margin: 0 auto;
	padding: 10vw 0;
	background: #FFF;
	text-align: center;
	position: relative;
	font-family:'DINPro-Bold';
}

/*
.chart::after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	z-index: 50;
	background: #E6E6E6;
	-webkit-transition: width 1.4s cubic-bezier(0.76, 0, 0.24, 1);
	transition: width 1.4s cubic-bezier(0.76, 0, 0.24, 1);
}
.chart.view::after{width: 0;}
*/
.chart h2{font-size: 45px;}

.chart .graph{
	width: 77%;
	max-width: 1100px;
	margin: 50px auto 0;
	position: relative;
}
.chart .graph .base{
	width: 100%;
	display: flex;
	justify-content:space-between;
	flex-wrap: wrap;
}
.chart .graph .base span{
	display: block;
	width: calc(50% - 0.5px );
	padding-top: 25%;
	background: #FFF;
	opacity: 0;
	-webkit-transition: opacity 0.6s;
	transition: opacity 0.6s;
}
.chart .graph.view .base span{opacity: 1;}


.chart .graph .base span.dryActive{background:#A7D8E3;margin-bottom: 1px;}
.chart .graph .base span.dryDaily{background:#C7E3E9;-webkit-transition-delay:0.6s;transition-delay:0.6s;}
.chart .graph .base span.warmActive{background:#F0A895;margin-bottom: 1px;-webkit-transition-delay:0.3s;transition-delay:0.3s;}
.chart .graph .base span.warmDaily{background:#F7BBAE;-webkit-transition-delay:0.9s;transition-delay:0.9s;}



.chart .graph h3{
	position: absolute;
	margin-left: 50%;
	width: 9em;
	margin: 0 auto;
	padding: 0.4em 0;
	z-index: 10;
	font-size: 24px;
	background: rgba(255,255,255,0.5);
	border-radius: 30px;
	display: inline-block;
	color: #333;
	letter-spacing: 0.03em;
	opacity: 0;
	-webkit-transform:translateX(-50%);
	transform:translateX(-50%);
	-webkit-transition: top 0.6s cubic-bezier(0.33, 1, 0.68, 1) 2.2s, bottom 0.6s cubic-bezier(0.33, 1, 0.68, 1) 2.2s, opacity 0.6s 2.2s;
	transition: top 0.6s cubic-bezier(0.33, 1, 0.68, 1) 2.2s, bottom 0.6s cubic-bezier(0.33, 1, 0.68, 1) 2.2s, opacity 0.6s 2.2s;
}

.chart .graph h3.active{top: 4%;}
.chart .graph h3.daily{bottom: 4%;}


.chart .graph.view h3.active{opacity: 1;top: 8%;}
.chart .graph.view h3.daily{opacity: 1;bottom: 8%;}

.chart .bottom{
	width: 77%;
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
	opacity: 0;
	-webkit-transition: opacity 0.6s 2.2s;
	transition: opacity 0.6s 2.2s;
}
.chart.view .bottom{opacity: 1;}

.chart .bottom .lifaLogo{
	width: 100%;
	display: flex;
	padding: 25px 0;
	border-bottom: 1px solid #000;
}
.chart .bottom .lifaLogo p{
	display: block;
	width: 50%;
}
.chart .bottom .lifaLogo p span{
	display: block;
	width: 38%;
	margin: 0 auto;
}

.chart .bottom .dryWarm{
	width: 100%;
	display: flex;
	margin-top: 5px;
	padding-bottom: 1em;
}
.chart .bottom .dryWarm p{
	display: block;
	width: 50%;
	font-size: 24px;
}
.chart .bottom .dryWarm p:first-child{text-align: left;}
.chart .bottom .dryWarm p:last-child{text-align: right;}

.chart .bottom .centerLine{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 1px;
	background: #000;
}


/*--------*/


.chart .itemAll{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 10;
}

.chart .itemAll .item{
	position: absolute;
	z-index: 20;
	width: 9.2%;
}

.chart .itemAll .item.HH12360{top: 4%;left: 4%;}
.chart .itemAll .item.HH22361{top: 4%;left: 18%;}
.chart .itemAll .item.HH32365{
	top: 50%;
	left: 8%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);  
}
.chart .itemAll .item.HH32366{
	top: 50%;
	left: 28%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);  
}

.chart .itemAll .item.HE32367{
	top: 50%;
	right: 28%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);  
}
.chart .itemAll .item.HE22368{
	top: 50%;
	right: 8%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);  
}

.chart .itemAll .item.HE32380{bottom: 8%;right: 18%;}




.chart .itemAll .item a{
	display: block;
	position: relative;
	z-index: 50;
	width: 100%;
	opacity: 0;
	-webkit-transform:scale(0.5);
	transform:scale(0.5);
	-webkit-transition: transform 0.8s cubic-bezier(0.68, -0.6, 0.32, 1.6) 1.0s, opacity 0.6s 1.2s;
	transition: transform 0.8s cubic-bezier(0.68, -0.6, 0.32, 1.6) 1.0s, opacity 0.6s 1.2s;
}
.chart .itemAll.view .item a{
	opacity: 1;
	-webkit-transform:scale(1);
	transform:scale(1);
}

.chart .itemAll .item a::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%); 
	background: #FFF;
	opacity: 0.3;
	-webkit-transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
	transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.chart .itemAll .item a img{position: relative;z-index: 5;}

@media (min-width: 769px) {

.chart .itemAll .item a:hover::before{
	opacity: 0.8;
	width: 115%;
	padding-top: 115%;
}

}
.chart .itemAll .item span{
	position: absolute;
	top: calc(100% + 0.2em);
	left: 50%;
	margin: 0 auto;
	text-align: center;
	font-family:'DINPro-Medium';
	font-size: 12px;
	line-height: 1;
	white-space: nowrap;
	width: 13em;
	opacity: 0;
	-webkit-transform:translateX(-50%);
	transform:translateX(-50%);  
	-webkit-transition: opacity 0.4s 1.5s;
	transition: opacity 0.4s 1.5s;
}
.chart .itemAll.view .item span{opacity: 1;}

.chart .itemAll.view .item span br{display:none;}
.chart .itemAll.view .item span br.fix{display:block;}



/*---------------------------------------------------*/



.category{
	width: 100%;
}


.category .categoryTop{
	width: 90%;
	margin: 15vw auto 0;
	text-align: center;
}
.category .categoryTop h2{
	font-family:'DINPro-Bold';
	font-size: 50px;
	text-align: center;
	position: relative;
	display: inline-block;
}
.category .categoryTop h2::before{
	content: '';
	position: absolute;
	top: 50%;
	left: -60px;
	width: 40px;
	height: 5px;
	background: #000;
}
.category .categoryTop h2::after{
	content: '';
	position: absolute;
	top: 50%;
	right: -60px;
	width: 40px;
	height: 5px;
	background: #000;
}



.category .typeTitle{
	width: 100%;
	display: flex;
	padding: 15vw 0;
}

.category .typeTitle .typeName{
	width: 50%;
	text-align: center;
}
.category .typeTitle .typeName h3{
	font-family:'DINPro-Bold';
	font-size: 75px;
	display: inline-block;
	text-align: left;
	text-decoration: underline;
	white-space: nowrap;
}

.category .typeTitle .logo{
	width: 50%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
.category .typeTitle .logo p{
	width: 350px;
}



/*-------------*/



.category .itemBox{
	width: 100%;
	display: flex;
	position: relative;
	margin-top: 12vw;
}
.category .itemBox.farst{margin-top: 0;}
.category .itemBox.rev{flex-direction: row-reverse;}

.category .itemBox .imageSet{
	width: 50%;
	position: relative;
}

.category .itemBox .imageSet::before{
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: 0;
	width: 100%;
	z-index: 20;
	background: #E6E6E6;
	-webkit-transition: width 1.2s cubic-bezier(0.76, 0, 0.24, 1);
	transition: width 1.2s cubic-bezier(0.76, 0, 0.24, 1);
}
.category .itemBox.rev .imageSet::before{
	left: auto;
	right: 0;

}
.category .itemBox .imageSet.view::before{width: 0;}




.category .itemBox .itemSpec{
	width: 50%;
	padding: 33vw 0;
}

.category .itemBox .itemSpec .specBox{
	width: 80%;
	max-width: 500px;
	margin: 0 auto;
	position: sticky;
	top: 50%;
}
.category .itemBox .itemSpec .specInner{
	width: 100%;
	text-align: left;
	position: absolute;
	top:50%;
	margin-top: 2vw;
	opacity: 0;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	-webkit-transition: margin 1.0s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
	transition: margin 1.0s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
}

.category .itemBox .itemSpec .specInner.view{opacity:1;margin-top: 0;}






.category .itemSpec h3{
	font-family:'DINPro-Bold';
	font-size: 37px;
	line-height: 1.2;
	text-decoration: underline;
}
.category .itemSpec h4{
	font-family:'DINPro-Bold';
	font-size: 20px;
	margin-top: 1em;
}
.category .itemSpec .price{
	font-family:'DINPro-Regular';
	font-size: 16px;
	margin-top: 0.2em;
}
.category .itemSpec .price span{
	display: inline-block;
	padding-left: 1em;
}
.category .itemSpec .text{
	width: 100%;
	line-height: 2.0;
	letter-spacing: 0.06em;
	margin-top: 1em;
}


.category .itemSpec .icon{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin: 25px 0 0;
}

.category .itemSpec .icon p{width: 85px;}
.category .itemSpec .icon p.wide{margin: 0 8px;}

.category .itemSpec .buy{
	margin-top: 30px;
}
.category .itemSpec .buy a{
	display: inline-block;
	background: #FFF;
	color: #000;
	font-family:'DINPro-Regular';
	font-size: 20px;
	padding: 0.6em 0.8em;
	-webkit-transition:  all 0.4s;
	transition: all 0.4s;
}

@media (min-width: 769px) {
.category .itemSpec .buy a:hover{background: #000;color: #FFF;}
}



/*-------------*/


.category .outerItems{
	width: 78%;
	max-width: 1200px;
	margin: 15vw auto 0;
	display: flex;
	justify-content: space-between;
}
.category .outerItems .item{width: 44%;}

.category .outerItems .item .photo{
	width: 100%;
	position: relative;
	margin-bottom: 40px;
}
.category .outerItems .item .photo::before{
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: -1px;
	width: 101%;
	z-index: 20;
	background: #E6E6E6;
	-webkit-transition: width 1.2s cubic-bezier(0.76, 0, 0.24, 1);
	transition: width 1.2s cubic-bezier(0.76, 0, 0.24, 1);
}
.category .outerItems .item .photo.view::before{width: 0;}


/*-----------------------------------------------------*/

footer{
	margin: 18vw auto 0;
	padding-bottom: 100px;
	text-align: center;
}

footer .hh{
	width: 150px;
	margin: 0 auto;
}

footer .copyright{
	font-family:'DINPro-Regular';
	margin-top: 50px;
}














/*=================================================*/




/* ================= Slider =================== */


.slick-slider{
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
	outline:none;
}
.coordinate .slick-list{overflow:visible;}
.coordinate .collectionItems .slick-list{overflow:hidden;}

.slick-list:focus{
	outline:none;
}
.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}

.slick-track:before,
.slick-track:after{display: table;content: '';}
.slick-track:after{clear: both;}

.slick-loading .slick-track{visibility: hidden;}





.slick-slide{
    display: none;
    float: left;
	position: relative;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide{
    float: right;
}



.slick-slide img{
    display: block;
}
.slick-slide.slick-loading img{
    display: none;
}
.slick-slide.dragging img{
    pointer-events: none;
}
.slick-initialized .slick-slide{
    display: block;
}
.slick-loading .slick-slide{
    visibility: hidden;
}
.slick-vertical .slick-slide{
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}





/* Prev Next Button */

.slick-prev,
.slick-next {
    cursor:pointer;
    display:block;
    font-size:0;
    line-height:0;
    width: 6vw;
    height: 6vw;
    position:absolute;
    top:50%;
	margin-top: -3vw;
    z-index:50;
	border:none;
}


/* slick-dots */
.slick-dots{
    display:block;
    list-style:outside none none;
    padding:0;
    text-align:right;
    width:100%;
	position:absolute;
	bottom:15px;
	padding-right: 3px;
	z-index:10;
	font-size: 0;
}
.slick-dots li{
	cursor: pointer;
	display: inline-block;
    margin: 0 12px 0 0;
    padding: 0;
    position: relative;
	vertical-align: top;
}

.slick-dots li button{
    cursor:pointer;
    display:block;
    font-size:0;
	width: 10px;
	height: 10px;
    line-height: 0;
    outline:medium none;
    position: relative;
	background: #FFF;
	border-radius: 50%;
	opacity: 0.5;
}


.slick-dots li.slick-active button{opacity: 1;}
































