@charset "utf-8";
/* ===================================================================
	CSS information
	file name  :  common.css
	style info :  /index.html
=================================================================== */

/* ================ Reset ================ */
html,body{
	width: 100%;
	padding: 0;
	margin: 0;
	line-height: 1;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	overflow-x: hidden;
}
img{
	border: 0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
h1, h2, h3, h4, h5, h6, p{
	margin: 0;
	padding: 0;
}
article,aside,details,figcaption,figure,dl,dt,dd,
footer,header,hgroup,menu,nav,section {
	display:block;
	margin: 0;
	padding: 0;
}
ol,ul,li {
	list-style:none;
	padding:0;
	margin: 0;
}
input, select {
	vertical-align:middle;
}
a {
	-webkit-tap-highlight-color:transparent;
}


.alpha{
	opacity: 1;
	-moz-opacity: 1; /* Firefox */
	filter: alpha(opacity=100); /* IE6/7 */
	-ms-filter: "alpha(opacity=100)"; /* IE8 */
}
.alpha:hover {
	-webkit-transition: 0.2s ease-out;
	transition: 0.2s ease-out;
	opacity: 0.6;
	-moz-opacity: 0.6; /* Firefox */
	filter: alpha(opacity=60); /* IE6/7 */
	-ms-filter: "alpha(opacity=60)"; /* IE8 */
}
.btn_link{
	position: relative;
	z-index: 1;
	width: 58px;
	display: block;
	margin: 0 auto;
}
.btn_link:after{
	content: "";
	display: block;
	width: 42px;
	height: 42px;
	background: #000;
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: -1;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);

	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transform-origin:center center;
}
.btn_link:hover:after{
	transform: rotate(405deg);
	-webkit-transform: rotate(405deg);
}

body{
	font-size: 14px;
	color: #000;
	position: relative;
}
.br_sp{
	display: none;
}

/* ====== max～1024 ====== */


header{
	width: 100%;
	z-index: 100;
	position: absolute;
	margin: 0 auto;
	top: 0;
	left: 50%;
	margin-left: -50%;
}
header .inner{
	max-width: 1440px;
	margin: 0 auto;
	overflow: hidden;
}

header .inner .logo{
	padding: 24px 0 0 40px;
}

header .inner #showright{
	top: 0;
	right: 40px;
	position: fixed;
	z-index: 1001;
	width: 80px;
	display: block;
	margin: 0 auto;
	cursor: pointer;
}
header .inner #showright:after{
	content: "";
	display: block;
	width: 55px;
	height: 55px;
	background: #000;
	border: 1px solid #fff;
	position: absolute;
	top: 13px;
	left: 13px;
	z-index: -1;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);

	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transform-origin:center center;
}
header .inner #showright:hover:after{
	transform: rotate(405deg);
	-webkit-transform: rotate(405deg);
}

/*
header .inner nav.gnav{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background: rgba(255,255,255,0.8);
}
header .inner nav.gnav ul{
	width: 980px;
	margin: 0 auto;
	padding: 100px 0;
}
header .inner nav.gnav ul li a{
	color: #000;
	display: block;
	padding: 20px 0;
}
*/

nav .social{
	padding: 30px 0 0 10px;
	overflow: hidden;
}
nav .social li{
	float: left;
	padding: 0 0 0 10px;
}
nav .social li img{
	width: 24px;
}


section.mv{
	padding: 206px 10px 0;
	text-align: center;
	height: 760px;
	background: url("../images/img_mv.jpg") center top no-repeat;
	box-sizing:border-box;
}
section.mv h1{
	margin: 0 0 75px 0;
}
section.mv h1 img{
	max-width: 100%;
}

section.about{
	padding: 125px 0 80px;
	text-align: center;
}
section.about h2{
	margin: 0 0 80px 0;
}
section.about p{
	font-size: 16px;
	line-height: 60px;
	letter-spacing: 3px;
	margin: 0 0 150px 0;
}
div.brand{
	max-width: 980px;
	margin: 0 auto 80px;
}
div.brand li{
	display: inline-block;
	width: 240px;
}
div.brand li.pc{
	display: inline-block;
}
div.brand li.sp{
	display: none;
}

div.brand ul{
	margin: 0 auto;
	text-align: center;
}
div.brand ul li p{
	margin: 32px auto;
}

section.content{
	background: #000;
	padding: 120px 0 0 0;
	text-align: center;
}
section.content h2{
	margin: 0 0 80px 0;
}
section.content h3{
	font-size: 22px;
	margin: 0 0 50px 0;
	letter-spacing: 3px;
	color: #fff;
}

section.content p.txt{
	font-size: 16px;
	line-height: 60px;
	letter-spacing: 3px;
	color: #fff;
}


section.making{
	padding: 100px 0 ;
	background: #000;
	text-align: center;
}
section.making h2{
	margin: 0 0 100px 0;
}
section.making .inner{
	max-width: 980px;
	margin: 0 auto;
}

section.making .movie-l{
	margin: 0 auto 100px;
	position: relative;
	padding-top: 56.25%;
}

section.making .movie-l iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


section.making .movie{
	width: 457px;
	display: inline-block;
	margin: 0 10px 20px;
}
section.making .movie:last-child{
	margin-bottom: 0;
}

section.making .movie iframe{
	width: 457px;
	height: 257px;
}

section.style{
	padding: 120px 0 ;
	text-align: center;
}
section.style h2{
	margin: 0 0 85px 0;
}
section.style h3{
	margin: 0 0 60px 0;
}
section.style p.img_concept{
	margin: 0 0 85px 0;
	padding: 0 10px;
}
section.style p.img_concept img{
	max-width: 100%;
	border: 1px solid #000;
	box-sizing:border-box;
}
section.style p.img_concept .pc{
	display: inline;
}
section.style p.img_concept .sp{
	display: none;
}

section.style p.txt02{
	font-size: 12px;
	line-height: 40px;
	letter-spacing: 3px;
	margin: 0 0 160px 0;
	padding: 0 0 60px 0;
	position: relative;
}
section.style p.txt02:after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -35px;
	width: 70px;
	height: 1px;
	background: #000;
}

section.style h3.concept{
	padding: 100px 0 0 0;
}

section.style li{
	margin: 0 0 140px 0;
}

section.style li h4{
	position: relative;
	margin: 0 0 70px 0;
}
section.style li h4:after{
	content: "";
	display: block;
	position: absolute;
	height: 10px;
	border: 10px solid transparent;
	border-top: 10px solid #000;
	bottom: -50px;
	left: 50%;
	margin-left: -10px;
}
section.style li .product{
	position: relative;
}
section.style li .product .off{
	margin-right: 70px;
}
section.style li .product .ico_style{
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -63px 0 0 -63px;
}

section.style .anrealage p{
	margin: 0 0 40px 0;
}

section.style .anrealage h4{
	font-size: 15px;
	font-weight: bold;
	margin: 0 0 40px 0;
}


section.special{
	padding: 120px 0 0 0;
	text-align: center;
}
section.special h2{
	margin: 0 0 85px 0;
}
section.special p.txt{
	font-size: 16px;
	line-height: 40px;
	margin: 0 0 100px 0;
}
section.special .item{
	margin: 0 0 100px 0;
}
section.special .item p{
	padding: 20px 0 0 0;
}
section.special .item .notice{
	font-size: 12px;
	display: block;
	padding: 10px 0 0 0;
}

section.special .brand{
	margin: 0 auto 80px;
	padding: 0 0 80px 0;
	border-bottom: 1px solid #9e9e9e;
}
section.special .brand li{

}


section.special .product{
	position: relative;
}
section.special .product .off{
	margin-right: 70px;
}
section.special .product .ico_style{
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -63px 0 0 -63px;
}


section.special .item dl{
	padding: 60px 0 0 0;
}
section.special .item dl dt {
	font-size: 18px;
	letter-spacing: 3px;
	margin: 0 0 50px;
	font-weight: bold;
	line-height: 1.4;
}
section.special .item dl dd{
	margin: 0 0 20px 0;
	line-height: 1.6;
}



section.links{
	width: 960px;
	margin: 0 auto 69px;
}
section.links .btn_brand{
	display: block;
	text-align: center;
	padding: 18px 0;
	background: #004987;
	border: 3px solid #004987;
	margin: 0 0 20px 0;
	position: relative;
	top: 0;
	left: 0;
	box-sizing: border-box;
}
section.links .btn_brand:after{
	content: '';
	display: block;
	width: 100%;
	height: 0%;
	background-color: #fff;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
section.links .btn_brand span{
	display: block;
	width: 100%;
	height: 0%;
	overflow: hidden;
	position: absolute;
	top: 0px;
	left: 0%;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
section.links .btn_brand span img{
	position: absolute;
	left: 106px;
	top: 18px;
	z-index: 2;
}

section.links .btn_brand:hover:after{
	height: 100%;
	content: " ";
}
section.links .btn_brand:hover span{
	height: 100%;
}



section.links .social{
	overflow: hidden;
}
section.links .social li{
	width: 225px;
	float: left;
	text-align: center;
	margin: 0 20px 0 0;
}
section.links .social li a{
	display: block;
	padding: 4px 0;
	position: relative;
	top: 0;
	left: 0;
	box-sizing: border-box;
}

section.links .social li.fb a{
	background: #36558f;
	border: 3px solid #36558f;
}
section.links .social li.inst a{
	background: #cbcab7;
	border: 3px solid #cbcab7;
}
section.links .social li.tw a{
	background: #55c1e1;
	border: 3px solid #55c1e1;
}
section.links .social li.yt a{
	background: #e60012;
	border: 3px solid #e60012;
}
section.links .social li.yt{
	margin: 0;
}

section.links .social li a:after{
	content: '';
	display: block;
	width: 100%;
	height: 0%;
	background-color: #fff;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}
section.links .social li a:hover:after{
	height: 100%;
	content: " ";
}


section.links .social li a span{
	display: block;
	width: 100%;
	height: 0%;
	overflow: hidden;
	position: absolute;
	top: 4px;
	left: 0%;
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}
section.links .social li a span img{
	position: absolute;
	left: 51px;
	z-index: 2;
}
section.links .social li a:hover span{
	height: 100%;
}

section.links .social li.inst a span img{
	left: 49px;
}
section.links .social li.tw a span img{
	left: 63px;
}
section.links .social li.yt a span img{
	left: 54px;
}







.btn_pagetop{
	max-width: 928px;
	text-align: right;
	margin: 0 auto;
	padding: 0 32px 22px 0;
}
.btn_pagetop a{
	display: block;
	overflow: hidden;
	width: 42px;
	height: 25px;
	position: relative;
	top: 0;
	right: 0;
	margin: 0 0 0 auto;
	border-top: 5px solid #595757;
	padding: 13px 0 0;
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}
.btn_pagetop a span{
	display: block;
	overflow: hidden;
}
.btn_pagetop a img{
	position: relative;
	top: 0;
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}
.btn_pagetop a:hover {
	border-top: 5px solid #ffc600;
}
.btn_pagetop a:hover img{
	top: -36px;
}

footer{
	background: #a1d4ee;
}
footer .inner{
	width: 960px;
	margin: 0 auto;
	padding: 40px 0;
	overflow: hidden;
}

footer .inner .snsshare {
	margin-bottom: 20px;
}
footer .inner .bnr{
	overflow: hidden;
	float: left;
}
footer .inner .bnr li{
	float: left;
	margin: 0 13px 0 0;
}


footer .inner .credit{
	float: right;
	font-size: 12px;
	color: #666;
	text-align: right;
}
footer .inner .credit p{
	margin: 0 0 10px 0;
}

footer .inner .credit .footlink-1{
	border-right: 1px solid #666;
	padding: 0 5px 0 0;
	margin: 0 5px 0 0;
}

footer .inner .credit a{
	color: #666;
	text-decoration: none;
}
footer .inner .credit small{
	font-size: 12px;
}



@media screen and (max-width: 1023px) {

header .inner{
	width: auto;
	margin: 0 20px;
}
header .inner nav.gnav ul{
	width: auto;
}


div.brand li{
	width: 23%;
}


section.links{
	width: auto;
	margin: 0 20px 69px;
}
section.links .btn_brand img{
	width: 85%;
}
section.links .btn_brand:hover:after{
	height: 0;
}
section.links .btn_brand:hover span{
	height: 0;
}
section.links .social li{
	width: 23%;
	margin: 0 2.6% 0 0;
}
section.links .social li a:hover span{
	height: 0;
}
section.links .social li a:hover:after{
	height: 0;
}
section.entry .tw .btn_post:hover:after{
	height: 0;
}
section.entry .tw .btn_post:hover span{
	height: 0;
}

section.campaign .inner a.btn_campaign:hover span{
	height: 0%;
}
section.campaign .inner a.btn_campaign:hover:after{
	height: 0%;
}

footer .inner{
	width: auto;
	margin: 0 20px;
}


}

@media screen and (max-width: 810px) {
footer .inner .bnr{
	width: 306px;
}
footer .inner .bnr li{
	margin: 0 13px 13px 0;
}

}

@media screen and (max-width: 767px) {
.pc{display: none;}
.sp{display: inline;}

div.brand li{
	width: 40%;
	margin: 0 0 100px 0;
}
div.brand{
	max-width: 980px;
	margin: 0 auto 80px;
	padding: 100px 0 0 0;
}
section.style h3 img{
	width: 228px;
	height: auto;
}
section.style li h4 img{
	height: 16px;
}

section.style li .product .off{
	margin-right: 6%;
}
section.style li .product img{
	width: 45%;
}
section.style li .product .ico_style{
	margin: -31px 0 0 -31px;
}
section.style li .product .ico_style img{
	width: 63px;
	height: 63px;
}

section.special .product .off{
	margin-right: 6%;
}
section.special .product img{
	width: 45%;
}
section.special .product .ico_style{
	margin: -31px 0 0 -31px;
}
section.special .product .ico_style img{
	width: 63px;
	height: 63px;
}


header .inner .logo img {
	height: auto;
	width: auto;
}

section.links .social li {
	margin: 0 2% 2% 0;
	width: 49%;
	float: left;
}
section.links .social li:nth-child(2n){
	margin-right: 0;
}

section.links .social li a {
	padding: 20px 0;
}

section.links .social li.inst a {
	padding: 18px 0;
}
section.links .social li.yt a {
	padding: 22px 0;
}
section.links .social li a:hover:after{
	width: 0%;
}
section.links .social li a:hover span{
	width: 0%;
}


.btn_pagetop {
	margin: 0 auto;
	padding: 0 0 22px 0;
	text-align: center;
}
.btn_pagetop a img{
	width: 30px;
	height: auto;
}
.btn_pagetop a{
	display: block;
	overflow: hidden;
	width: 100%;
	height: 27px;
	position: relative;
	top: 0;
	right: 0;
	margin: 0;
}
.btn_pagetop a img{
	position: relative;
	top: 0;
}
.btn_pagetop a:hover img{
	top: 0;
}

footer .inner .bnr {
	width: auto;
	float: none;
	text-align: center;
	margin: 0 auto 40px;
}

footer .inner .bnr li{
	float: none;
	margin-right: 0;
}
footer .inner .bnr li img{
	width: 236px;
}


footer .inner .credit {
	float: none;
	font-size: 20px;
	text-align: center;
}
footer .inner .credit span{
	display: block;
}

footer .inner .credit .footlink-1 {
	border-right: 0;
	padding: 0 0 20px 0;
}
footer .inner .credit small {
	padding: 30px 0 0 0;
	display: block;
}


}
@media screen and (max-width: 639px) {

.br_sp{
	display: inline-block;
}

header .inner {
	margin: 0 10px;
}
header .inner .logo{
	padding: 10px 0 0 0;
}
header .inner .logo img{
	width: 140px;
	height: auto;
}

header .inner .social {
	padding: 5px 0 0 10px;
}

header .inner .social li {
	padding: 0 0 0 10px;
}
header .inner .social li a img{
	width: 25px;
	height: auto;
}

header .inner #showright{
	top: 0;
	right: 40px;
	position: fixed;
	z-index: 1001;
	width: 40px;
	display: block;
	margin: 0 auto;
	cursor: pointer;
}
header .inner #showright img{
	width: 68px;
	height: auto;
}

header .inner #showright:after{
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: #000;
	border: 1px solid #fff;
	position: absolute;
	top: 13px;
	left: 13px;
	z-index: -1;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);

	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transform-origin:center center;
}


section.mv{
	padding: 156px 10px 0;
	text-align: center;
	height: 500px;
	background-size: cover;
	box-sizing:border-box;
}
section.mv h1{
	margin: 0 0 60px 0;
}



section.about {
	padding: 60px 0;
}
section.about h2{
	margin: 0 0 60px 0;
}
section.about h2 img{
	height: 80px;
}
section.about p{
	padding: 0 10px;
	line-height: 2;
	font-size: 14px;
	margin: 0 0 100px 0;
}


section.content h3{
	line-height: 1.6;
}
section.content p.txt{
	font-size: 14px;
	line-height: 2;
}

section.making{
	padding: 60px 0;
}
section.making h2{
	margin: 0 0 60px 0;
}
section.making h2 img{
	height: 80px;
}
section.making .movie-l{
	margin: 0 auto 60px;
}
section.making .movie{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

section.making .movie iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


div.brand ul{
	width: 100%;
	overflow: hidden;
}
div.brand li{
	display: block;
	float: left;
	width: 48%;
	padding: 0 1%;
	margin: 0 0 100px 0;
}
div.brand{
	margin: 0 auto;
	padding: 0;
}

div.brand li img{
	max-width: 100%;
}
div.brand ul li p {
	margin: 25px auto;
}
div.brand ul li p img{
	height: 14px;
}

div.brand li.pc{
	display: none;
}
div.brand li.sp{
	display: inline-block;
}


section.style{
	padding: 60px 0;
}
section.style h2{
	margin: 0 0 60px 0;
}
section.style h2 img{
	height: 80px;
}
section.style p.img_concept .pc{
	display: none;
}
section.style p.img_concept .sp{
	display: inline;
}
section.style p.txt{
	padding: 0 10px 40px;
	line-height: 2;
	margin: 0 0 40px 0;
	font-size: 14px;
}
section.style p.txt02{
	font-size: 11px;
	line-height: 2;
	margin: 0 0 60px 0;
}

section.style .anrealage p{
	line-height: 2;
	padding: 0 10px;
}

section.special{
	padding: 60px 0 0 0;
}
section.special h2{
	margin: 0 0 60px 0;
}
section.special h2 img{
	height: 80px;
}
section.special p.txt{
	padding: 0 10px;
	line-height: 2;
	font-size: 14px;
}
section.special .brand li{
	float: none;
	width: 100%;
}
section.special .brand li:last-child{
	margin-bottom: 0;
}


section.special .item .notice{
	line-height: 1.6;
}

section.links {
	margin: 0 10px 30px;
}
section.links .btn_brand{
	margin: 0 0 2% 0;
	padding: 12px 0;
}

section.links .btn_brand img {
	width: 90%;
}
section.links .social li.fb a{
	padding: 10px 0;
}
section.links .social li.fb img{
	width: 67px;
}
section.links .social li.inst a{
	padding: 9px 0;
}
section.links .social li.inst img{
	width: 67px;
}
section.links .social li.tw a{
	padding: 10px 0;
}
section.links .social li.tw img{
	width: 52px;
}
section.links .social li.yt a{
	padding: 10px 0 11px;
}
section.links .social li.yt img{
	width: 61px;
}




footer .inner .bnr{
	margin: 0 auto 20px;
}
footer .inner .bnr li{
	margin-bottom: 5px;
}
footer .inner .bnr li img {
	width: 118px;
}

footer .inner .credit {
	font-size: 10px;
}

footer .inner .credit .footlink-1 {
	padding: 0 0 10px;
}

footer .inner .credit small {
	padding: 15px 0 0;
}
}


/* General styles for all menus */

header .inner nav.gnav ul.menu{
	padding: 100px 0 0 0;
}
.cbp-spmenu {
	background: #000;
	position: fixed;
}

.cbp-spmenu ul.menu a {
	display: block;
	color: #fff;
	font-size: 1.1em;
	font-weight: 300;
}

.cbp-spmenu ul.menu a:hover {
	background: #333;
}

.cbp-spmenu ul.menu a:active {
	background: #333;
	color: #fff;
}

/* Orientation-dependent styles for the content of the menu */

.cbp-spmenu-vertical {
	width: 260px;
	height: 100%;
	top: 0;
	z-index: 1000;
}

.cbp-spmenu-vertical ul.menu a {
	border-bottom: 1px solid #fff;
	padding: 20px;
}

.cbp-spmenu-horizontal {
	width: 100%;
	height: 150px;
	left: 0;
	z-index: 1000;
	overflow: hidden;
}

.cbp-spmenu-horizontal h3 {
	height: 100%;
	width: 20%;
	float: left;
}

.cbp-spmenu-horizontal a {
	float: left;
	width: 20%;
	padding: 0.8em;
	border-left: 1px solid #258ecd;
}

/* Vertical menu that slides from the left or right */

.cbp-spmenu-left {
	left: -240px;
}

.cbp-spmenu-right {
	right: -260px;
}

.cbp-spmenu-left.cbp-spmenu-open {
	left: 0px;
}

.cbp-spmenu-right.cbp-spmenu-open {
	right: 0px;
}

/* Horizontal menu that slides from the top or bottom */

.cbp-spmenu-top {
	top: -150px;
}

.cbp-spmenu-bottom {
	bottom: -150px;
}

.cbp-spmenu-top.cbp-spmenu-open {
	top: 0px;
}

.cbp-spmenu-bottom.cbp-spmenu-open {
	bottom: 0px;
}

/* Push classes applied to the body */

.cbp-spmenu-push {
	overflow-x: hidden;
	position: relative;
	left: 0;
}

.cbp-spmenu-push-toright {
	left: 240px;
}

.cbp-spmenu-push-toleft {
	left: -240px;
}

/* Transitions */

.cbp-spmenu,
.cbp-spmenu-push {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

/* Example media queries */

@media screen and (max-width: 55.1875em){

	.cbp-spmenu-horizontal {
		font-size: 75%;
		height: 110px;
	}

	.cbp-spmenu-top {
		top: -110px;
	}

	.cbp-spmenu-bottom {
		bottom: -110px;
	}

}

@media screen and (max-height: 26.375em){

	.cbp-spmenu-vertical {
		font-size: 90%;
		width: 190px;
	}

	.cbp-spmenu-left,
	.cbp-spmenu-push-toleft {
		left: -190px;
	}

	.cbp-spmenu-right {
		right: -190px;
	}

	.cbp-spmenu-push-toright {
		left: 190px;
	}
}