﻿@charset "utf-8";
/* CSS Document */

/*---------

base set

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

html,body,div,span,object,iframe,h1, h2, h3, h4, h5, h6, p, address, em, img,small, strong, sub, sup,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,main,article,aside,figure,footer,header,menu,nav,section,time, mark, audio, video {
 margin:0; padding:0; border:0;	outline:0; font-size:100%; vertical-align:baseline;	background:transparent; }
body { line-height:1;}
main,article,aside,figure,footer,header,nav,section{ display:block;}
ul,li { list-style:none;}
html{font-size: 62.5%;}

body,input, select{ font-family:"游ゴシック","Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

@media all and (-ms-high-contrast:none) {
	body {
		font-family: "メイリオ",Meiryo,"游ゴシック",Yu Gothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	}
}


body{ text-align: left; font-size:100%;	color:#1F1F1F; line-height:1.5;	font-size: 10px; font-size: 1.0rem;}
input, select {	vertical-align:middle;}
table{ width:100%;	border-collapse:collapse; border-spacing:0;}
th td{}

.section-inner a:link,
.section-inner a:visited { color:#1F1F1F; text-decoration:underline;}
.section-inner a:hover,
.section-inner a:active { color:#1F1F1F; text-decoration:none;}



.section-inner .infomation a:link,
.section-inner .infomation a:visited,
.section-inner .colmun-content.item a:link,
.section-inner .colmun-content.item a:visited,
.section-inner .colmun-content.style a:link,
.section-inner .colmun-content.style a:visited,
.section-inner .arrow-list a:link,
.section-inner .arrow-list a:visited,
.section-inner .bttton-list a:link,
.section-inner .bttton-list a:visited,
.section-inner .bttton-col3-list a:link,
.section-inner .bttton-col3-list a:visited,
footer a:link,
footer a:visited,
header a:link,
header a:visited,
#gnav-area a:link,
#gnav-area a:visited,
.breadcrumb a:link,
.breadcrumb a:visited{ text-decoration:none;}

.section-inner .infomation a:hover,
.section-inner .infomation a:active,
.section-inner .colmun-content.item a:hover,
.section-inner .colmun-content.item a:active,
.section-inner .colmun-content.style a:hover,
.section-inner .colmun-content.style a:active,
.section-inner .arrow-list a:hover,
.section-inner .arrow-list a:active,
.section-inner .bttton-list a:hover,
.section-inner .bttton-list a:active,
.section-inner .bttton-col3-list a:hover,
.section-inner .bttton-col3-list a:active,
footer a:hover,
footer a:active,
header a:hover,
header a:active,
#gnav-area a:hover,
#gnav-areaa:active,
.breadcrumb a:hover,
.breadcrumb a:active{ text-decoration:none;}

.bg-gray a:link,
.bg-gray a:visited,
.bg-gray a:hover,
.bg-gray a:active,
.top-item a h3:link,
.top-item a h3:visited,
.top-item a h3:hover,
.top-item a h3:active,
.colmun-content.style ul li h3 span a:link,
.colmun-content.style ul li h3 span a:visited,
.colmun-content.style ul li h3 span a:hover,
.colmun-content.style ul li h3 span a:active{ color:#FFF; text-decoration:none;}



/*---------

title / p

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

h1,h2,h3,h4,h5,h6{ font-weight:bold;}


#inner .page-title-area h1,
h2{ font-weight:400; font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;}

h1{ font-size:36px;	font-size:3.6rem;}
#inner .page-title-area { background:#F50C10 url(../images/parts/bg-title-area.png) no-repeat center;}
#inner .page-title-area h1{ width:960px; margin:0 auto; padding:1em 0; color:#FFF; text-shadow: 1px 1px 3px rgba(0,0,0,0.3); font-size:30px; font-size:3.0rem;}

h2{ font-size:30px;	font-size:3.0rem; border-bottom:2px solid #C65050; position:relative; padding-left:30px; margin-bottom:1.0em;}
.bg-gray h2,
.bg-gray p{ color:#FFF;}
h2:before{ content:url(../images/parts/icon-h2.png); position:absolute; top:-2px; left:0px;}

#inner h3{ background:#EA0000; color:#FFF; font-weight:bold; padding:10px 15px; font-size: 18px; font-size: 1.8rem; margin-bottom:25px;}


h4{ font-size: 18px; font-size: 1.8rem; border-bottom:1px solid #999; position:relative; padding-left:20px; margin-bottom:1.0em;}
h4:before{ content:"◆"; color:#EB0000; position:absolute; top:3px; left:0; font-size: 15px; font-size: 1.5rem;}
h5{}
h6{ margin-bottom: .5em;}

.section-inner p{ margin-bottom: 1.0em;}


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

#inner .page-title-area h1{ width:100%; padding:1em 10px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;}

}

@media screen and (max-width:480px) {
#inner .page-title-area h1{}
h2{ font-size:25px;	font-size:2.5rem;}

}

#inner .page-title-area h1 .label {
    display: inline-block;
    font-family: "游ゴシック","Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    background: #FFF;
    color: #EB0000;
    text-shadow: none;
    padding: 0 5px;
    margin-bottom: 5px;
}

#inner .page-title-area h1 .sub {
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
}

/*---------

header

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

header{ width:100%;}
#header-content-area{ width:960px; margin:0 auto; padding:15px 0;}
#site-title{ width:450px; float:left;}
#site-title p{ font-size:12px; font-size:1.2rem; margin-bottom:.5em;}
#site-title #logo{}
#header-sub{ width:380px; float:right;}
#header-sub > ul{ display:block; text-align:right; margin-bottom: 5px;}
#header-sub > ul li{ font-size:14px; font-size:1.4rem; display:inline-block; text-align:right;}
#header-sub > ul li:first-child{ padding-right:10px;}

#header-sub .request-button{ position:relative;}
#header-sub .request-button ul li{ width:225px; height:40px; position:absolute; right:0; top:0; overflow: hidden;z-index: 2;}
#header-sub .request-button ul li:before,
#header-sub .request-button ul li:after{ position: absolute; top: 0; bottom: 0; right: 0px; margin: auto; content: ""; vertical-align: middle;}
#header-sub .request-button ul li:after{ right: 6px; width: 7px; height: 7px; border-top: 2px solid #FFF; border-right: 2px solid #FFF; -webkit-transform: rotate(45deg); transform: rotate(45deg);}


#header-sub .request-button ul li a{ display:block; height:40px; padding:8px 8px 5px; text-align:center; font-size:16px; font-size:1.6rem; color:#FFF; font-weight:bold; background-color:rgba(230,85,85,1.00);
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;}
/*#header-sub .request-button ul li a:after{ content:" "; display:inline-block; width:16px; height:40px; position:absolute; right:0; top:0;  background-color:rgba(135,35,49,1.00);}*/
#header-sub .request-button ul li a:after{ content:" "; display:inline-block; width:100%; height:40px; position:absolute; right:-207px; top:0;  background-color:rgba(135,35,49,1.00);}
#header-sub .request-button ul li a span{ z-index: 100; position: relative;}
/*#header-sub .request-button ul li a:hover,
#header-sub .request-button ul li a:active{ background-color:rgba(135,35,49,1.00)}*/

#header-sub .request-button ul li a:hover:after{ right: 0;
	-webkit-transition: .5s;
    transition: .5s;
}

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

#header-sub > ul li:first-child{ padding:0;}

}

/*---------

gnav-area

----------------------------**/
#gnav-area{ width:100%; background-color:rgba(51,51,51,1.00);}
#gnav-area nav{ width:960px; margin:0 auto;}
#gnav-area ul{
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	flex-direction: -webkit-row;
	flex-wrap: wrap;
	flex-wrap: -webkit-wrap;
	justify-content:space-between;
	-webkit-justify-content:space-between;
}
#gnav-area ul li{ flex-basis:190px;}
#gnav-area ul li a{ display:block; padding:15px 0; font-size:14px; font-size:1.4rem; color:#FFF; font-weight:bold; text-align:center;}
#gnav-area ul li a span{ display:block; border-right:1px solid #FFF;}
#gnav-area ul li:first-child a span{ border-left:1px solid #FFF;}

/*---------

main-visual-area

----------------------------**/
#main-visual-area{ width:100%; background:#F50C10 url(../images/parts/bg-title-area.png) no-repeat center; height:430px; padding:15px 0 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;}
#main-visual{ text-align:center;}
#main-visual h1{ display:none;}
#main-visual p{ display:none;}


/*---------

breadcrumb

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

.breadcrumb{ width:100%; border-bottom:1px solid #999; padding:1em 0;}
.breadcrumb ol{ width:960px; margin:0 auto;}
.breadcrumb ol li{ display:inline-block; position:relative; font-size:13px; font-size:1.3rem; padding:0 15px 0 5px;}
.breadcrumb ol li:after{ content:">"; position:absolute; top:-1px; right:0;}
.breadcrumb ol li:last-child:after{ content:none;}
.breadcrumb ol li a{ color: #1F1F1F;}

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

.breadcrumb ol{ width:100%}

}

/*---------

content

----------------------------**/
main{ width:100%;}
article{ width:100%; padding:50px 0;}
section{ width:960px; margin:0 auto; padding:20px 0; font-size:16px; font-size:1.6rem;}
#index section{ padding:50px 0;}
#index main article > div:first-child{ margin-top:50px;}

.bg-white{}
.bg-gray{ background: rgba(37,33,33,1.00) url(../images/parts/bg-gray.png) repeat left top;}
.section-inner{ margin-top:40px;}

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

.section-inner{ padding:0 5px;}
#index section { padding: 30px 0 0;}
}

/*---------

content

----------------------------**/
footer{ width:100%; font-size:14px; font-size:1.4rem; background-color:#F0F0F0;}

#footer-content-main-area{ width:960px; margin:0 auto; padding:50px 0 20px;
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	flex-direction: -webkit-row;
	flex-wrap: wrap;
	flex-wrap: -webkit-wrap;
}

#footer-address{ width:430px; margin-right:auto;}
#footer-logo{ margin-bottom:10px;}
#footer-address address{ font-style:normal;}
#footer-address address p:not(.address-area){ margin-bottom:25px;}
#footer-address address .address-area{ font-size:16px; font-size:1.6rem; font-weight:bold;}


#footer-links{ width:520px;}
#footer-links > div{
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
	flex-direction: -webkit-row;
	flex-wrap: wrap;
	flex-wrap: -webkit-wrap;
	justify-content:space-between;
	-webkit-justify-content:space-between;}
#footer-links ul li{}
#footer-links ul li ul{ float:none; margin-left:1em}
#footer-links ul li a{ font-weight:500; position: relative; display: inline-block; padding: 0 0 0 16px; vertical-align: middle; color:#1F1F1F;}
#footer-links ul li a:before,
#footer-links ul li a:after{ position: absolute; top: 7px; left: 0; margin: auto; content: ""; vertical-align: middle;}
#footer-links ul li a:before{ left: 3px; width: 4px; height: 4px; border-top: 2px solid #EB0000; border-right: 2px solid #EB0000; -webkit-transform: rotate(45deg); transform: rotate(45deg);}

#footer-content-bottom-area{ width:100%; background-color:#E20301; padding:10px 0;}
#footer-content-bottom-area p{ text-align:center; color:#FFF;}


/*---------

arrow

----------------------------**/
.arrow{ position: relative; display: inline-block; padding:0; vertical-align: middle;}
.arrow::before,
.arrow::after{ position: absolute; top: 25px; bottom: 5px; right: 8px; margin: auto; content: ""; vertical-align: middle;}


/*---------

figure

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

figure img{ vertical-align:bottom;}

/*---------

common sp

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

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

body
#header-content-area,
#main-visual,
section,
#footer-content-main-area,
#footer-address,
#footer-links{ width:100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

	
#header-content-area{ min-height:160px; padding:10px 10px 10px;}

#site-title,
#header-sub,
#footer-address
{ float:none; width:100%; text-align:center;}

#header-sub > ul,
#header-sub .request-button{ text-align:center;}

#header-sub .request-button{ width:225px; margin:10px auto 5px;}

#main-visual-area{ padding: 10px}
#main-visual-area,
#main-visual img{ width:100%; height:auto;}
#main-visual img{ margin-bottom: -50px;}

#index main article{ padding: 15px 0 0;}
#index main article > div:first-child { margin-top: 00px;}
#inner main article{ padding: 10px 0;}
#index section,
#inner section{ padding:20px 10px 10px;}
.section-inner{ margin-top:20px;}


#footer-content-main-area{ padding:25px 0 25px;}
#footer-address{ padding:0 5px}
	
#footer-links > div{
	justify-content:center;
	-webkit-justify-content:center;}

#footer-links > div ul{ margin:0 15px;}

}

@media screen and (max-width:640px) {
#header-content-area{ min-height: 170px;}
}

@media screen and (max-width:480px) { 
#header-content-area{ min-height:210px; padding-top:50px;}
	
#site-title #logo img,
#footer-logo img{ width:100%; max-width:340px;}
#footer-links > div{
	justify-content:space-around;
	-webkit-justify-content:space-around;}
	
#footer-links > div ul{ flex:1 1 50%; margin:0;}
figure img{ width: 100%;}
}


@media screen and (max-width:340px) { 
#logo{ margin: 5px auto;}
#header-content-area{ min-height:230px;}

}

/*---------

content

----------------------------**/
.c:after,
#header-content-area:after,
#footer-content-main-area:after{
    content:"";
    display:block;
    clear:both;
}

/*---------

.topics-area

----------------------------**/
.topics-area{
	border: #EA0000 1px solid;
	padding: 25px;
	margin-bottom: 50px;
	text-align: center;
}

.section-inner .topics-area a {	
	color: #EA0000;
	display: block;
}

.topics-area p{
	margin-bottom: 0;
	font-size: 20px;
	font-weight: bold;
	display: inline-block;
	position: relative;
	padding-left: 30px;
}

.topics-area p::before{
	content: "";
	display: inline-block;
	position: absolute;
	top:4px;
	left:0;
	width: 24px;
	height: 24px;
	border-radius: 12px;;
	background-color: #EA0000;
}
.topics-area p::after{
	content: "";
	display: inline-block;
	border: 6px solid transparent;
	border-left: 8px solid #FFF;
	position: absolute;
	top:10px;
	left:9px;
}
@media screen and (max-width:320px) {
	.topics-area{
		padding: 10px;
	}
}

.contact {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 1em;
	}
.contact dt {
		-ms-flex-preferred-size: 10%;
		flex-basis: 10%;
	}
.contact dd {
		-ms-flex-preferred-size: 90%;
		flex-basis: 90%;
		margin-bottom: 0;
		font-weight: bold;
	}
@media screen and (max-width:768px) {
	.contact dt, .contact dd {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
	}
}

/*---------

modal-video

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

#modal-video {
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 8;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.75);
	transition: 0.5s;
}

#modal-video.close {
	filter: opacity(0);
	visibility: hidden;
}

#modal-video.open {
	filter: opacity(1);
	visibility: visible;
}

.js-modal-video-open{
	margin-left: 1em;
	cursor: pointer;
}

.arrow-list .js-modal-video-open{
	position: relative;
	margin-bottom: 0.5em;
}

.arrow-list .js-modal-video-open::before{
	content: "";
	width: 4px;
	height: 4px;
	border-top: 2px solid #EB0000;
	border-right: 2px solid #EB0000;
	position: absolute;
	top: 8px;
	left: -1em;
	transform: rotate(45deg);
}

@media not all and (min-width:768px){
	#modal-video iframe {
		width: 88vw;
		height: 50vw;
	}
}

@media (min-width:768px){
	#modal-video iframe {
		width: 64vw;
		height: 36vw;
	}
}
