@charset "utf-8";
/**************************************
 * CSS BasicStyle forHTML5 v1.0
**************************************/


/******************************
 AllAreabase 
******************************/
a{
	transition: .1s linear;
	-webkit-transition: .1s linear;
	-moz-transition: .1s linear;
	-o-transition: .1s linear;
	-ms-transition: .1s linear;
}
h1,h2,h3,form{
	padding:0;
	margin:0;
	font-weight: normal;
	line-height:1.0;
}
p{
	padding:0 0 20px 0;
	margin:0;
}
img{
display: inline-block;
}
.youtubeArea{
    width:100%;
    max-width:980px;
    margin:0 auto 60px;
}
.youtubeArea iframe{
    width: 100%;
}

.st{
    font-weight: bold;
    color: #efc35f;
}
/******************************
******************************/

body{
	font:93% "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ", ProMeiryo , "メイリオ", Osaka, "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
	line-height:1.8;
	color:#DBDBDB;
	text-align:center;
	background:#000;
	-webkit-text-size-adjust: 100%;
}
.contentArea h1{
	font-size:182%;
	font-weight:bold;
	line-height:1.6;
	color:#FFF;
	border-bottom:solid 4px #9C1414;
	padding:0 0 10px;
	margin:0 0 40px;
	clear:both;
}
h2{
	font-size:167%;
	font-weight:bold;
	line-height:1.6;
	color:#FFF;
	border-bottom:solid 1px #9C1414;
	padding:0 0 10px;
	margin:0 0 40px;
	clear:both;
}
h3{
	font-size:123.1%;
	font-weight:bold;
	line-height:1.4;
	text-align: left;
	color:#dcdcdc;
	padding:0;
	margin:0 0 20px;
	clear:both;
}
#mainly{
    position: relative;
	padding:60px 0;
	background: url(../img/bodyBg.jpg) no-repeat center top;
	border-top:solid 1px #323232;
}
.SP{display: none;}
.PC{display: block;}
/* ---SP--- */
@media screen and (max-width: 768px) {
    body{
        font:85% "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ", ProMeiryo , "メイリオ", Osaka, "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
        line-height:1.6;
    }
    h2{
        font-size:138.5%;
        border-bottom:solid 1px #9C1414;
        padding:0 0 10px;
        margin:0 0 30px;
        text-align:center;
    }
    #mainly{
        position: relative;
        background: url(../img/bodyBg-sp.jpg) no-repeat center top;
        background-size:320px 140px;
        -moz-background-size:320px 140px;
        -webkit-background-size:320px 140px;
        background-color: #000;
        padding:40px 20px;
    }
    .SP{display: block;}
    .PC{display: none;}
    .youtubeArea iframe{
        height: 50vw;
    }
}

/******************************
 AllLink 
******************************/
a:link,a:visited 	{color:#9C1414; text-decoration: none;}
a:hover,a:active	{color:#8E8E8E; text-decoration: none;}


/******************************
 HeaderArea 
******************************/
header{
    position: fixed;
    z-index: 100000;
	width:100%;
	box-sizing:border-box;
	text-align: center;
	background:#000 url(../img/headerBg.jpg) no-repeat center top;
}
header .inr{
    position: relative;
	width:100%;
    max-width:1200px;
    margin:0 auto;
}




.logo{
	text-align:left;
	line-height:1.0;
	padding:10px 0;
	margin:0 auto;
	text-align: center;
	max-width:280px;
}
.logo a{
	display: block;
}
.logo img{
	width:100%;
}


header a.menu {
	display:none;
}

/* contactbtn */
.contactbtn{
    position: absolute;
    right: 0;
    top:20px;
    display: table;
    box-sizing:border-box;
    background-color: #9d1414;
    width:290px;
    height: 50px;
    padding:10px;
    border-radius: 6px;
    text-align: left;
}
.contactbtn a{
    display: table-cell;
    vertical-align: middle;
    color:#FFF;
    font-size:24px;
    line-height: 1.0;
    box-sizing:border-box;
}
.contactbtn a.tel{
    position: relative;
    padding-left:25px;
    font-family: 'EB Garamond', serif;
}
.contactbtn a.mail{
    position: relative;
    padding-left:35px;
}
.contactbtn a.mail{
    background-color: #FFF;
    line-height: 1.0;
    border-radius: 6px;
    color: #9d1414;
    font-size:13px;
    width:100px;
    height: 30px;
}
.contactbtn a.tel::before{
    content:"";
    position: absolute;
    top:5px;
    left:0;
    background-image: url(../img/ic_tel.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    width: 16px;
    height: 16px;
}
.contactbtn a.mail::before{
    content:"";
    position: absolute;
    top:10px;
    left:10px;
    background-image: url(../img/ic_mail.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    width: 17px;
    height: 11px;
}

/* ---SP--- HeaderArea */
@media screen and (max-width: 768px) {
    header{
        z-index:11000000;
        position:fixed;
        background:#000 url(../img/headerBg-sp.jpg) no-repeat center top;
        background-size:320px 70px;
        -moz-background-size:320px 70px;
        -webkit-background-size:320px 70px;
    }

    body.home h1 img,header p.title img{
        max-width:190px;
    }
    header a.menu {
        display: block;
        position:absolute;
        right:0;
        top:0;
    }
    .fixed {
        position: static;
    }
    .logo{
        padding:5px 0;
        max-width:200px;
    }
}

/******************************
 GlobalNavArea 
******************************/
nav.nav{
	width:100%;
	clear:both;
	box-sizing:border-box;
	border-top:solid 1px #1E1E1E;
	border-bottom:solid 1px #1E1E1E;
	background:#141414;
}
nav.nav ul{
	width:1050px;
	margin:0 auto;
	text-align:center;
	background:url(../img/navLine.jpg) no-repeat right center;
	zoom:1;
}
nav.nav ul:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
nav.nav li{
	display:block;
	text-align:center;
	font-size:77%;
	font-weight:bold;
	background:url(../img/navLine.jpg) no-repeat left center;
	float:left;
}
nav.nav li a{
    width:100px;
/*	width:104px;*/
	padding:10px 0;
	display:block;
	
}
nav.nav li.home a{
	width:50px;
	text-indent:-9999px;
}
/***** Link *******/
nav.nav a:link,nav.nav a:visited 		{color: #BFBFBF;text-shadow:-1px -1px 0px #000000;}
nav.nav a:hover,nav.nav a:active		{color: #000; background:#9D1414;text-shadow:none;}
nav.nav a.active:link					{text-decoration: none; background:#EFEFEF;}
nav.nav li.home a:link,nav.nav li.home a:visited 	{background:url(../img/navHome.png) no-repeat center center;}
nav.nav li.home a:hover,nav.nav li.home a:active	{background:url(../img/navHome_ov.png) no-repeat center center;}




/* ---SP--- GlobalNavArea */
@media screen and (max-width: 768px) {
    .contactbtn {
        display: flex;
        flex-flow: row wrap;
        align-content: center;
        align-items: center;
        justify-content: center;
        
        right:15px;
        top: 10px;
        width: 90px;
        height: 40px;
        padding: 0;
        border-radius: 6px;
        background-color: transparent;
    }
    .contactbtn a {
        display: block;
        width: 40px;
        height: 40px;
    }
    .contactbtn a.tel {
        text-indent: -9999px;
        background-color: #9d1414;
        width: 40px;
        height: 40px;
        padding: 0;
        border-radius: 6px;
        text-align: left;
        padding-left: 0;
    }
    .contactbtn a.mail {
        margin-left:10px;
        text-indent: -9999px;
        width: 40px;
        height: 40px;
    }
    .contactbtn a.tel::before {
        top: 10px;
        left:10px;
        width: 20px;
        height: 20px;
    }
    .contactbtn a.mail::before {
        top: 13px;
        width: 20px;
        height: 13px;
    }
    nav.nav{
        width:100%;
        clear:both;
        box-sizing:border-box;
        border-top:none;
        background:#141414;
    }
    nav.nav ul{
        width:100%;
    }
    nav.nav li{
        float:none;
        text-align: left;
        font-size:93%;
        border-top:solid 1px #1E1E1E;
        border-bottom:solid 1px #000000;
        background:none;
    }
    nav.nav li a{
        box-sizing:border-box;
        width:100%;
        padding:10px 0 10px 40px;
    }
    nav.nav li.home a{
        box-sizing:border-box;
        width:100%;
        padding:10px 0 10px 40px;
        text-indent: inherit;
    }
    nav.nav li.home a:link,nav.nav li.home a:visited 	{background:none;}
    nav.nav li.home a:hover,nav.nav li.home a:active	{background:#9D1414;}
}

/******************************
 main
******************************/
main{
    padding-top:143px;
}
/******************************
 MainVisual
******************************/
/* 設定 */
#mainVis {
	clear:both;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
}
.sliderAll {
	position: relative;
	height: 400px;
	width:100%;
	overflow: hidden;
	margin: 0 auto;
}
.sliderWrap {
	width: 2940px;
	position: absolute;
	left: 50%;
	margin-left: -1470px;
	z-index:10;
}
.sliderWrap .slider_links {
	display: block;
	width: 980px;
	height: 400px;
}
#slider1 li {opacity:0.5;}
#slider1 li.active{
	opacity:1.0;
	transition: opacity 1s linear;
	-webkit-transition: opacity 1s linear;
	-moz-transition: opacity 1s linear;
	-o-transition: opacity 1s linear;
	-ms-transition: opacity 1s linear;
}
/* ---SP--- MainVisual */
@media screen and (max-width: 768px) {
    main{
    padding-top:70px;
    }
    .sliderAll {
        max-width: 768px;
        width:100%;
        margin: 0 auto;
        height: 260px;
        position: inherit;
    }
    .sliderWrap {
        width: 100%;
        max-width: 2940px;
        position: inherit;
        left: 0;
        margin: 0;
    }
    .sliderWrap .slider_links {
        width: 100%;
        height: 260px;
    }
}
@media screen and (max-width: 480px) {
    .sliderAll {
        height: 130px;
    }
    .sliderWrap .slider_links {
        height: 130px;
    }
}


nav.nav.fixed + section{
	margin-top:42px;
}
/* ---SP--- MainVisual */
@media screen and (max-width: 768px) {
    nav.nav.fixed + section{
        margin-top:0;
    }
}

/******************************
 PageTitle
******************************/
section#pageTitle{
	clear:both;
	width:100%;	
}
section#pageTitle h1{
	max-width:980px;
	width:100%;
	margin:0 auto 50px;
	padding:30px 0;
	font-size:211%;
	background:url(../img/h1_bg.png) repeat-x center 30px ;
	border-bottom:solid 1px #B5B5B5;
}

section#pageTitle h1 span{
	display: block;
	color:#B5B5B5;
	font:61% "Lato-Light";
	background:#FFFFFF;
	margin:0 35%;
	padding:0 0 30px 0;
}

/******************************
 ContentArea
******************************/
/******************************
 PickupArea
******************************/
.pickupArea{
	text-align:left;
	width:980px;
	margin:0 auto;
}

/****** pickupBox *********/
.pickupBox ul{
	margin:0 0 30px -25px;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
.pickupBox li{
	display:inline-block;
	letter-spacing: normal; /* 文字間を通常に戻す */
	margin:0;
}
.pickupBox li img{
	max-width:310px;	
}
.pickupBox li span{
	display:block;
	background: url(../img/arrow_01.png) no-repeat left center;
	background-size:5px 10px;
	-moz-background-size:5px 10px;
	-webkit-background-size:5px 10px;
	padding:0 0 0 10px;
}
.pickupBox li a{
	display:block;
	margin:0 0 0 25px;
}
.pickupBox p{
	margin:0 0 30px;
}
.pickupBox p img{
	width:100%;	
	max-width:980px;	
}
.pickupBox li a:link img,.pickupBox li a:visited img 		{ opacity:1.0;}
.pickupBox li a:hover img,.pickupBox li a:active img		{ opacity:0.7;}

/****** bnCenterBox *********/
.bnCenterBox{
    
}
.bnCenterBox ul{
	margin:0 0 30px -20px;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
.bnCenterBox li{
	display:inline-block;
	letter-spacing: normal; /* 文字間を通常に戻す */
	margin:0;
}
.bnCenterBox li a{
	display:block;margin: 0 0 20px 20px;
    line-height: 1.0;
}
.bnCenterBox li a:hover{opacity: 0.7;}

/* ---SP--- pickupBox */

@media screen and (max-width: 768px) {
    .pickupArea{
	width:100%;
}
.pickupBox ul{
	margin:0 0 20px;
}
.pickupBox li{
	margin:0 0 20px;
    width: 100%;
}
.pickupBox li img{
	width:100%;	
	max-width:100%;	
}
.pickupBox li a{
	margin:0;
}
.pickupBox p img{
	width:100%;	
	max-width:100%;	
}
}
/* ---SP--- bnCenterBox */
@media screen and (max-width: 768px) {
.bnCenterBox ul{
	margin:0 0 20px;
}
.bnCenterBox li{
	margin:0 0 20px;
    width: 100%;
}
.bnCenterBox li img{
	width:100%;	
	max-width:100%;	
}
.bnCenterBox li a{
	margin:0;
}
.bnCenterBox p img{
	width:100%;	
	max-width:100%;	
}
}


/******************************
 contentArea
******************************/
.contentArea{
	text-align:left;
	max-width:980px;
	margin:0 auto;
}
.contentBox{
	padding:0 0 40px 0;
}

.contentBox	ul{
	padding:0 0 0 2em;
}
.contentBox	ul li{
	list-style-type: disc;
}
.contentBox	ol{
	padding:0 0 1.0em 2.0em;
}
.contentBox	ol li{
	list-style-type:decimal;
	padding:0 0 1.0em;
}
.contentBox	ol ol.latin{
	padding:1.0em 0 1.0em 2.0em;
}
.contentBox	ol ol.latin li{
	list-style-type:lower-latin;
	padding:0 0 0.5em;
}


.contentBox	dl{
	border-bottom: solid 1px #323232;
	border-left: solid 1px #323232;
	border-right: solid 1px #323232;
	margin:20px 0 40px;
	background: #424242;
	zoom: 1;
}

.contentBox	dl:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
.contentBox	dl dt,.contentBox dl dd{
	box-sizing:border-box;
}
.contentBox	dl dt{
	clear:both;
	float:left;
	width:30%;
	padding:1.0em 1.0em;
	border-top: solid 1px #323232;
}
.contentBox	dl dd{
	float:left;
	width:70%;
	padding:1.0em 1.0em;
	background: #000;
	border-top: solid 1px #323232;
}

form.wpcf7-form.sent .contentBox div.inputbuttonBox,
form.wpcf7-form.sent .contentBox dl{display: none;}

form.wpcf7-form.sent{display: none !important;}
.screen-reader-response{font-size:20px;padding:20px 0;}

/****** bnBox *********/
.bnBox ul{
	margin:0 0 30px -20px;
	zoom:1;
}
.bnBox ul:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
.bnBox li{
	float:left;
	margin:0;
}
.bnBox li img{
	max-width:480px;	
}
.bnBox li a{
	display:block;
	margin:0 0 0 20px;
    line-height: 1.0;
}
.bnBox li a:hover{opacity: 0.7;}
/* ---SP--- bnBox */
@media screen and (max-width: 768px) {
.contentBox{
	padding:0 0 20px 0;
}
.bnBox ul{
	margin:0 0 10px 0;
}
.bnBox li{
	float:none;
	margin:0 0 20px;
}
.bnBox li img{
	width:100%;	
	max-width:100%;	
}
.bnBox li a{
	margin:0;
}
.contentBox	dl{
	border: none;
	margin:0 0 40px;
}
.contentBox	dl dt{
	float:none;
	width:100%;
}
.contentBox	dl dd{
	width:100%;
	margin:0;
	border:none;
}
}

/******************************
 FooterArea 
******************************/
footer{
	clear:both;
	width:100%;
	margin: 0;
	padding:30px 0;
	font-size:77%;
	color:#CDCDCD;
	text-align:center;
	background: #0a0a0a url(../img/footerBg.jpg) no-repeat center top;
	border-top:solid 1px #323232;
	overflow:hidden; /*最下部余白対策*/
}
#footerInr{
    width: 100%;
	max-width:1200px;
	margin:0 auto;
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
}
#footerInr:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}


footer nav ul.lv1{
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    align-items: stretch;
    justify-content: flex-start;
    text-align: left;
	padding:0 0 5px;
}

footer nav{
    width: 100%;
	max-width:930px;
}
footer nav li{
	padding:0 15px 0 0;
}
footer nav li span,
footer nav li a{
	display: inline-block;
}
footer nav li.dp span::before{
	display: inline-block;
    content:"・";
    position: relative;
}
footer nav li.dp span{
	margin-bottom:10px;
}

footer nav li a{
	display: inline-block;
	background:url(../img/footer_arrow.png) no-repeat left center;
	background-size:5px 10px;
	-moz-background-size:5px 10px;
	-webkit-background-size:5px 10px;
	padding:0 0 0 10px;
	margin:0 0 5px ;
}
/* ---SP--- FooterArea */
@media screen and (max-width: 768px) {
    footer{
        font-size:77%;
        padding:0;
        background: #0a0a0a url(../img/footerBg-sp.jpg) no-repeat center top;
        background-size:320px 240px;
        -moz-background-size:320px 240px;
        -webkit-background-size:320px 240px;
    }
    footer nav{
        width:100%;
        margin:0 0 20px;
        float:none;
    }
    footer nav ul.lv1.PC{
        display: none;
    }
    footer nav ul.lv1.SP{
        display: block;
    }
    footer nav ul{
        padding:0 0 20px;
        zoom:1;
    }
    footer nav ul:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
    footer nav li{
        display: block;
        box-sizing:border-box;
        padding:10px 0 10px 20px;
        border-bottom:solid 1px #323232;
        width:50%;
        float:left;
    }
    footer nav li:nth-child(odd){
        border-right:solid 1px #323232;
    }
    footer nav li a{
        display: block;
        padding:0 0 0 10px;
        margin:0 ;
        width:100%;
    }
}

/******* FooterLink *********/
footer nav li a:link,footer nav li a:visited 	{color:#DAD9D9; text-decoration: none;}
footer nav li a:hover,footer nav li a:active	{color:#8E8E8E; text-decoration: none;}


/******* fBnBox *********/
.fBnBox{
	float:right;	
}
.fBnBox li img{
	max-width:130px;	
}

/* ---SP--- fBnBox */
@media screen and (max-width: 768px) {
.fBnBox{
	clear:both;
	float:none;
	margin:0 0 20px;
	zoom:1;
	}
.fBnBox:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
.fBnBox li{
	width:50%;
	box-sizing:border-box;
	padding:0 10px;
	float:left;
}
.fBnBox li img{
	width:100%;
	max-width:100%;	
}
}
/******* produce copy *********/
.produce{
	clear:both;
	text-align:center;
	padding:20px 0;
}
.produce img{
	width:120px;
}

.copy{
	text-align:center;
	border-top:solid 1px #323232;
	padding:20px 0;
}


/*** ページボタン ***/
#pageTopBox {
	text-align:center;
	padding:40px 0 10px;
}
#page-top {
	margin:0 auto;
	max-width:80px;
    padding: 0;
    text-align: center;
    display: block;
}
a#page-top:hover {
    text-decoration: none;
}
a#page-top img {
    width: 80px;
}

/*********************************************************/
/*********************************************************/
/*** Form btn ***/
.submitBox{
	text-align:center;
	margin:40px 0 0 0;
	}
.submitBox div{
	margin:0 auto;
	max-width:520px;
	text-align:center;
	zoom:1;
	}
.submitBox div:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}

.checkbox,.radio {
	z-index: -1;
	position: relative;
	display: none;
}
label.radiolabel{
    background: url(../img/radio.png) no-repeat top left;
    margin:0 20px 0 0;
    padding:0 0 0 22px;
	cursor:pointer;
}
label.RadioSelected{
    background: url(../img/radio.png) no-repeat bottom left;
}

input.txt{
	display:block;
    border-radius: 5px;  
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	font-size:100%;
	padding:5px 10px;
	box-sizing:border-box;	
	background:#FFFFFF;
	border:solid 1px #D6D6D6;
	width:100%;
	color:#636363;
}
select{
	display:block;
    border-radius: 5px;  
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	font-size:100%;
	padding:5px 10px;
	box-sizing:border-box;	
	background:#FFFFFF;
	border:solid 1px #D6D6D6;
	color:#636363;
}

textarea{
	display:block;
    border-radius: 5px;  
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	font-size:100%;
	padding:5px 10px;
	box-sizing:border-box;	
	background:#FFFFFF;
	border:solid 1px #D6D6D6;
	width:100%;
	color:#636363;
}
.radiolabel {
background: url(../img/radio.png) no-repeat top left;
margin: 0 20px 0 0;
padding: 0 0 0 22px;
cursor: pointer;
}
/***** submit Buttun *******/
input.submitBtn{
	display: block;
	padding: 0.7em;
	font-size: 123.1%;
	font-weight: bold;
	text-align: center;
	max-width:280px;
	width:45%;
	cursor:pointer;
	float:right;
	color:#FFFFFF;
	box-sizing:border-box;
    border-radius: 5px;  
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.95, #891010), color-stop(0.00, #9d1414));
	background: -webkit-linear-gradient(top, #9d1414 0%, #891010 95%);
	background: -moz-linear-gradient(top, #9d1414 0%, #891010 95%);
	background: -o-linear-gradient(top, #9d1414 0%, #891010 95%);
	background: -ms-linear-gradient(top, #9d1414 0%, #891010 95%);
	background: linear-gradient(top, #9d1414 0%, #891010 95%);
}
.inputbuttonBox {
	margin: 0 auto;
	padding: 0.2em 0;
	display: block;
	max-width: 600px;
	width:100%;
	zoom:1;
}
.inputbuttonBox:after	{content:".";display:block;clear:both;height:0;visibility:hidden;}
	@media screen and (max-width: 768px) {
	input.submitBtn{
		max-width:640px;
		width:100%;
		margin:20px auto 0;
		float:none;
	}
	.inputbuttonBox {
		margin: 0 auto;
		padding: 0.2em 0;
		display: block;
		width: 100%;
}
}
input.resetBtn{
	display:block;
    border-radius: 5px;  
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	font-size:100%;
	font-weight:bold;
	max-width:280px;
	width:45%;
	padding:15px 40px;
	margin:0 auto;
	box-sizing:border-box;
	color:#FFFFFF;
	cursor:pointer;
	background:#8E8E8E;
	float:left;
}
	@media screen and (max-width: 768px) {
	input.resetBtn{
		max-width:640px;
		width:100%;
		margin:0 auto;
		float:none;
	}
	}
input.submitBtn:hover,input.submitBtn:active	{
	opacity:0.7;
}
input.resetBtn:hover,input.resetBtn:active	{
	opacity:0.7;
}
