@charset "UTF-8";

@font-face {font-family: "adineue_pro";
    src: url("../font/adineue_pro.eot");
    src: url("../font/adineue_pro.eot?#iefix") format("embedded-opentype"), url("../font/adineue_pro.woff") format("woff");
}

@font-face {font-family: "adineue_probold";
    src: url("../font/adineue_probold.eot");
    src: url("../font/adineue_probold.eot?#iefix") format("embedded-opentype"), url("../font/adineue_probold.woff") format("woff");
}

@font-face {font-family: "Adihausdin";
    src: url("../font/Adihausdin.eot");
    src: url("../font/Adihausdin?#iefix") format("embedded-opentype"), url("../font/Adihausdin.woff") format("woff");
}

/*
font-family: "Adihausdin";
font-family: "adineue_pro";
font-family: "adineue_probold";
font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
*/

::selection {background:#df4a6c;color:#fff;}
::-moz-selection {background:#df4a6c;color:#fff;}



/*------------------------------------------------
					common
------------------------------------------------*/
body {
    font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

.row {
	text-align:center;
	width:100%;
    max-width:1000px;
	box-sizing:border-box;
	margin:0 auto;
}


.din {font-family: "Adihausdin";text-transform: uppercase}
.pro {font-family: "adineue_pro";text-transform: uppercase}
.probold {font-family: "adineue_probold";text-transform: uppercase}

.title {
    text-align: center;
}
.title h2 {
    color:#585858;
    font-size:24px;
    margin:0 auto 20px;
}
.title h3 {
    font-size:60px;
    border-bottom: 10px solid #2824d1;
    display:inline-block;
    margin:0 auto 50px;
}


* {box-sizing: border-box;}



/*------------------------------------------------
					header
------------------------------------------------*/
header {
    background:#2824d1;
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:10px;
    position:relative;
    z-index: 99;
}
header img {
    width:80px;
}


.scroll-title {display:none;}


/*------------------------------------------------
					visual
------------------------------------------------*/

/*movie*/
#visual {
    position:relative;
    
}
#visual:before {
    content: '';
    background:url('../img/pattern.png') repeat;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#visual video {
    width:100%;
    margin-bottom:-3px;
}
#visual h1 {
    position: absolute;
    bottom:2%;
    left:0;
    padding:0 20px;
}






/*------------------------------------------------
					about
------------------------------------------------*/

#about {
    background:url('../img/about.jpg') center center no-repeat;
    padding:60px 20px;
    text-align: center;
    background-size:cover;
}

#about .textbox h3 {
    text-shadow: 0px 0px 10px #000;
    font-size:24px;
    color:#fff;
    padding:14px 0 10px;
    text-align: center;
}
#about .textbox h2 {
    font-size:40px;
    color:#fff;
    margin-bottom: 30px;
    padding:14px 0 10px;
    text-align: center;
    text-shadow: 0px 0px 10px #000;
    
}
#about .textbox h2 span {
    display:block;
    font-size:60px;
/*    background: linear-gradient(to bottom, #d817c5, #845ff8);*/
/*    -webkit-background-clip: text;*/
/*    -webkit-text-fill-color: transparent;*/
    margin-bottom: 16px;
}


#about .textbox p {
    color:#fff;
    padding:16px;
    text-shadow: 0px 0px 10px #000;
    line-height: 30px;
}



#about2 {
    padding:50px 20px;
}
#about2 .textbox p {
    line-height: 1.3em;
}




/*------------------------------------------------
					product
------------------------------------------------*/
#product {
    padding:40px 20px;
    background:#f5f5f5;
}

#product h2 {
    font-size:60px;
}
#product h2 span {
    color:#df4a6c;
}

#product ul {
    margin:50px auto 0;
    display:flex;
    flex-wrap:wrap-reverse;
    text-align: center;
}
#product ul li:first-child {
    margin:30px auto 0;
    font-size:16px;
    line-height: 1.3em;
    
}
#product ul li:first-child p {
    font-size:24px;
    font-weight: bold;
    margin-top:20px;
}
#product ul li:first-child p span {
    font-weight: normal;
    font-size:16px;
}



/*effects*/
.effect span {
    display:block;
    margin:10px 0 0;
	position: relative;
	display: inline-block;
	outline: none;
	color: #000;
    font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 14px;
	padding: 12px 10px 10px;
}

.effect span::before,
.effect span::after {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 3px;
	background: #000;
	content: '';
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
	transition: transform 0.3s;
	-webkit-transform: scale(0.85);
	-moz-transform: scale(0.85);
	transform: scale(0.85);
}

.effect span::after {
	opacity: 0;
	-webkit-transition: top 0.3s, opacity 0.3s, -webkit-transform 0.3s;
	-moz-transition: top 0.3s, opacity 0.3s, -moz-transform 0.3s;
	transition: top 0.3s, opacity 0.3s, transform 0.3s;
}

.effect span:hover::before,
.effect span:hover::after,
.effect span:focus::before,
.effect span:focus::after {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
}

.effect span:hover::after,
.effect span:focus::after {
	top: 0%;
	opacity: 1;
}




/*------------------------------------------------
					feature
------------------------------------------------*/
.temp {
    margin-top: 70px;
}

.temp .right {
    padding:40px 20px;
    font-size:16px;
}

.temp h5 {
    padding:30px 0 40px;
    font-size:20px;
    line-height: 30px;
    position: relative;
}
.temp h5:after {
    content:'';
    background:#000;
    width:100px;
    height:10px;
    position:absolute;
    top:0;
    left:0;
}
.temp h5 span {
    font-size:14px;
}
.temp p {
    line-height: 24px;
    font-size:16px;
}





/*------------------------------------------------
					color concept
------------------------------------------------*/
#color {
    margin:80px 0 0;
}


#color .clrtxt {
    margin:150px auto 130px;
    padding:0 20px;
}
#color .clrtxt h4 {
    position: relative;
    color:#df4a6c;
    font-size:26px;
    margin-top:50px;
    margin-bottom: 50px;
}
#color .clrtxt h4:after {
    content:'';
    position: absolute;
    top:-26px;
    left:50%;
    transform: translate(-50%, -50%);
    width:100px;
    height: 10px;
    background:#df4a6c;
    
}
#color .clrtxt h4 span {
    display: block;
    text-transform:uppercase;
    color:#000;
    font-size:16px;
    margin:10px 0 0;
}

#color .clrtxt p {
    font-size:16px;
    line-height: 24px;
    text-align: left;
}




/*------------------------------------------------
					comments
------------------------------------------------*/
#comments {
    margin:80px 0 0;
}

#comments .title h3 {
    font-size:50px;
}

#comments .right {
    background:#2824d1;
    color:#fff;
    padding:40px 20px;
}
#comments .right h5 {
    font-size:18px;
    line-height: 1.5em;
}
#comments .right h6 {
    font-size:18px;
    line-height: 1.5em;
}
#comments .right h5:after {
    background:#fff;
}








/*------------------------------------------------
					entry
------------------------------------------------*/
.btnbox {
    margin:100px 0 0;
}
.btnbox p {
    text-align: center;
    font-weight: bold;
    font-size:15px;
}
.btnbox .btn {
    text-align: center;
    margin:30px;
    background:#2824d1;
    color:#fff;
    padding:20px;
    font-size:24px;
    border-radius: 50px;
}
.btnbox .btn.graybtn {
    background:#d7d7d7;
}
.btnbox img {
    width:60%;
}






/*------------------------------------------------
					movie
------------------------------------------------*/
.movie {
    background:linear-gradient(90deg, #efefef 50%, #fff 50%);
    padding:100px 0;
}
.movie .row {
    max-width:1200px;
    width:100%;
    margin:0 auto;
    text-align: center;
    padding:20px;
}

.movie h2 {
    font-size:40px;
}

.movie p {
    font-size:16px;
    padding:30px 0 10px;
    line-height: 26px;
}

.movie iframe {
    position:absolute;
    height:100%;
    left:0;
    width:100%;
}
.movie .movie-wrap {
    position: relative;
    padding-bottom: 56.25%;
    margin:30px auto 0;
}







/*------------------------------------------------
					footer
------------------------------------------------*/
footer {
    display:block;
    text-align: center;
    margin:50px auto 20px;
}
footer a {
    color:#000;
    display:inline-block
}
footer span {
    display:block;
    font-size:14px;
    margin:20px 0 0;
}


/*scroll top*/
#scroll-top {
    cursor: pointer;
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
	z-index:9999;
	background: #2824d1;
}
#scroll-top span {
    color: #fff;
    margin: 0;
    position: relative;
    top: 14px;
    left:12px;
    font-size: 16px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#scroll-top:hover span {
    color: #fff;
    top: 5px;
}



.sphide, .pcon {display:none;}

/*------------------------------------------------
					responsive
------------------------------------------------*/

@media screen and (min-width: 768px) {
    #visual .pchide {display:none;}
    #visual .pcon {display:block;}
    #visual h1 {
        bottom:20px;
        left:20px;
        padding:0;
    }
    #visual h1 img {width:50%;}
    
    #about .textbox {width:100%;}
    #about .textbox h2 {font-size:34px;}
    #about .textbox p {
        font-size:20px;
        padding:20px;
    }
    
    
    
    #about .textbox h2 span {
        font-size:80px;margin-bottom: 30px;}
    
    #about2 {padding:70px 20px;}
    #about2 .textbox p {
        text-align: center;
        line-height: 1.8em;
        font-size:16px;
    }
    
    
    #product h2 {font-size:120px;}
    #product ul {justify-content: space-between;}
    #product ul li:first-child {
        width:100%;
        margin:20px 0;
    }
    #product ul li {width:49%;}
    
    
    .temp img {width:100%;}
    
    #comments .title h3 {font-size:60px;}
    
    
    #entry .entry-wrap aside .download {padding:70px 0}
    #entry .entry-wrap aside ul {
        display:flex;
        flex-wrap:wrap;
        justify-content: space-between;
    }
    #entry .entry-wrap aside ul li {width:45%;}
    #entry .entry-wrap aside ul p {font-size:14px;}
    #entry .entry-wrap aside .btn {margin-top:50px;}
    #entry .entry-wrap aside .center {text-align: center;}
    
}

@media screen and (min-width: 1024px) {
    
    .title h2 {font-size:40px;}
    .title h3 {font-size:100px;}
    
    
    #visual h1 img {width:80%;}
    
    
    header {padding:10px 100px;position:absolute;width:100%;}
    
    
    /*scrolldown efftcs*/
    #scrolldown {
        position: absolute;
        bottom:14%;
        right:130px;
        z-index: 2;
        transform: translate(-50%, -50%);
    }
    .scroll-title {
        margin-top:30px;
        display: block;
        color: #000;
        font-size:14px;
        font-weight:bold;
        writing-mode: vertical-rl;
    }
    #scrollwrap::before {
        -webkit-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
        -moz-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
        -o-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
        animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;

        position: absolute;
        top: 135px;
        left: 50%;
        margin-left: -1px;
        width: 1px;
        height: 100px;
        background: #000;
        content: ' ';
    }
    @-webkit-keyframes elasticus {
        0% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
        50% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        50.1% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        100% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
    }
    @-moz-keyframes elasticus {
        0% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
        50% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        50.1% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        100% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
    }
    @-o-keyframes elasticus {
        0% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
        50% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        50.1% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        100% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
    }
    @keyframes elasticus {
        0% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
        50% {
            -webkit-transform-origin: 0% 0%;
            -ms-transform-origin: 0% 0%;
            -moz-transform-origin: 0% 0%;
            -o-transform-origin: 0% 0%;
            transform-origin: 0% 0%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        50.1% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 1);
            -ms-transform: scale(1, 1);
            -moz-transform: scale(1, 1);
            -o-transform: scale(1, 1);
            transform: scale(1, 1);
        }
        100% {
            -webkit-transform-origin: 0% 100%;
            -ms-transform-origin: 0% 100%;
            -moz-transform-origin: 0% 100%;
            -o-transform-origin: 0% 100%;
            transform-origin: 0% 100%;
            -webkit-transform: scale(1, 0);
            -ms-transform: scale(1, 0);
            -moz-transform: scale(1, 0);
            -o-transform: scale(1, 0);
            transform: scale(1, 0);
        }
    }
    

    
    #about2 .textbox p {font-size:18px;}
    #about2 .textbox p br {display:block;}
    
    
    #product {
        padding:50px 20px 70px;
    }
    #product h2 {font-size:180px;}
    
    #product ul {flex-wrap:wrap;align-items: center;text-align: left;}
    #product ul li {width:38%;}
    #product ul li:first-child {
        width:20%;
        font-size:24px;
    }
    #product ul li:first-child p {font-size:30px;}
    .effect span {font-size:18px;}
    
    
    
    #color .clrtxt {padding:0;}
    
    
    
    .temp {margin-top:120px;}
    .temp ul {
        position:relative;
        display:flex;
        display:-ms-flexbox;
        justify-content: space-between;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
    }
    .temp ul li {
        width:50%;
        margin-bottom: 30px;
    }
    .temp ul li:first-child {
        width:58%;
    }
    .temp .right {padding:20px;}
    .temp p {line-height: 1.3em;}
    
    .temp ul.reverse {
        flex-direction: row-reverse;
    }
    
    
    
    #comments ul {align-items:normal;}
    #comments .li {background:#df4a6c;padding:20px;}
    
    
    #comments .title {padding:100px 0 150px;}
    
    
    
    #entry .entry-wrap aside h4 {font-size:40px;margin-bottom: 20px;}
    #entry .entry-wrap aside p {font-size:18px;}
    #entry .entry-wrap aside h5 {font-size:20px;}
    #entry .entry-wrap aside ul li {width:30%;}
    #entry .entry-wrap aside .btn {width:50%;display:block;margin:50px auto 0}

}


@media screen and (min-width: 1025px) {
    #about {
        padding:150px 20px;
        background-attachment: fixed;
    }
    #entry .entry-wrap aside .btn:hover {
        background:#fff;
        color:#df4a6c;
        border:1px solid #df4a6c;
    }
    
    .temp .right {padding:40px 130px 20px 80px;}
    .temp ul.reverse .right {padding:40px 80px 20px 130px;}
    
    #comments .right {padding:12% 130px 20px 80px;}
    #comments ul.reverse .right {padding:12% 80px 20px 130px;}
    
    #entry .entry-wrap aside .download a:hover {color:#df4a6c}
    
    
    .btnbox .btn {width:50%;text-align: center;margin:30px auto;}
    .btnbox p {text-align: center;font-weight: bold;font-size:20px;}
    .btnbox img {width:30%;}
    
    .movie {
        margin:100px auto 50px;
        padding:50px 0 0;
        background:linear-gradient(180deg, #efefef 50%, #fff 50%);
    }
    .movie .row {padding:0;}
    .movie h2 {font-size:60px;}
    
    
}
@media screen and (min-width: 1441px) {
    
    
    .sphide {display:block;}
    

    /*movie*/
    #visual h1 img {width:100%;}
    #visual h1 {
        bottom:12%;
        left:130px;
    }
    
    
    #about {
        padding:300px 130px;
    }
    #about .textbox p {font-size:20px;line-height: 1.5em;padding:40px 20px;}
    #about .textbox h2 {font-size:60px;}
    
    
    #product {padding:80px 130px 100px;}
    #product h2 {font-size:200px;}
    #product ul li:first-child p {font-size:50px;}
    
    
    .temp ul li:first-child {width:60%;}
    .temp ul li {width:40%;}
    .temp p {font-size:18px;}
    
    
    #comments .right h5 {font-size:30px;}
    
    
    #entry .entry-wrap aside .download {justify-content: center;padding:30px 0 70px;}
    #entry .entry-wrap aside .download a {display:inline-block;width:30%;}
    #entry .entry-wrap {padding:80px 60px}
    #entry .entry-wrap aside {padding:10px 0 20px;}
}



























