@charset "utf-8";


/*Header		----------------------------------------------------------------------------------------------------*/
#header{position:relative;width:100%;padding:0px 0px 50px;border-top:5px #435a87 solid;}
#header h1{margin:40px 0px 0px -40px;}
#header p{margin:5px 0px 0px -40px;color:#6f6f6f;font-size:1.1em;}
@media only screen and (max-width: 480px){
	#header{position:static;padding:0px;}
	#header h1{margin:25px 0px 0px;}
	#header h1 img{width:65%;}
	#header p{margin:10px 20px 20px;font-size:1.0em;}
}


/*frameset		----------------------------------------------------------------------------------------------------*/
article{}
section{position:relative;padding:100px 0px;border-top:1px #ddd solid;}
@media only screen and (max-width: 480px){
	article{}
	section{position:static;padding:50px 0px;}
}


/*Catch			----------------------------------------------------------------------------------------------------*/
.catch{position:relative;padding:100px 0px 80px;background:#f0f0f0 url(../img/catch-bg.jpg) center center no-repeat;background-size:100% auto;}
.catch p{margin:0px;font-size:1.8em;text-shadow:2px 2px 3px #aaa;line-height:1.8em;}
.catch p a{display:inline-block;margin:30px 0px 0px;padding:0.7em 3em 0.5em;font-size:0.8em;color:#fff;text-decoration:none;background:#3f3f3f;transition:0.4s;border-radius:10px;}
.catch p a:hover{background:#cf201a;}
@media only screen and (max-width: 480px){
	.catch{position:static;padding:50px 0px;}
	.catch p{margin:0px 10px;font-size:1.0em;line-height:1.6em;}
	.catch p.button{}
}


/*Midashi		----------------------------------------------------------------------------------------------------*/
section h2{position:relative;display:inline-block;margin:0px;padding:0px 100px;color:#191919;font-size:2.8em;font-family:'Raleway','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;;font-weight:300;}
section h2:before,h2:after{content:'';position:absolute;top:50%;display:inline-block;width:70px;height:1px;background:#cd2112;}
section h2:before{left:0;}
section h2:after{right:0;}
section h2 span{display:block;font-size:0.4em;color:#7f7f7f;}
@media only screen and (max-width: 480px){
	section h2{padding:0px 50px;font-size:2.2em;}
	section h2:before,h2:after{width:30px;}
	section h2:before{}
	section h2:after{}
	section h2 span{font-size:0.5em;}
}


/*Descryption	----------------------------------------------------------------------------------------------------*/
section .descryption{width:980px;margin:30px auto 50px;text-align:center;}
section .descryption p{margin:35px 0px 0px;color:#5f5f5f;font-size:1.2em;}
@media only screen and (max-width: 480px){
	section .descryption{width:auto;margin:30px 15px;text-align:center;}
	section .descryption p{margin:30px 0px 0px;color:#5f5f5f;font-size:0.95em;}
	section .descryption p br{display:none;}
}


/*Text Box		----------------------------------------------------------------------------------------------------*/
section .textbox{width:980px;margin:70px auto 0px;}
section .textbox h3{margin:50px auto;font-size:2.0em;border-bottom:2px #ccc solid;}
section .textbox p{margin:25px 25px 0px;color:#3f3f3f;font-size:1.15em;}
section .textbox p img{border:1px #dfdfdf solid;}
@media only screen and (max-width: 480px){
	section .textbox{width:auto;margin:50px 0px 0px;}
	section .textbox h3{margin: 30px auto;font-size:1.1em;}
	section .textbox p{margin:25px 15px 0px;font-size:0.95em;}
}


/*Section Set	----------------------------------------------------------------------------------------------------*/
section.service{background:#fff;}


/*3Line Box		----------------------------------------------------------------------------------------------------*/
.triple .triplebox{display:inline-block;width:320px;margin:0px;padding:0px;vertical-align:top;}
.triple .triplebox:nth-of-type(3n){width:320px;margin:0px;}
.triple .triplebox h3{margin:30px 0px 0px;font-size:1.2em;}
.triple .triplebox dl{margin:15px 0px 30px;}
.triple .triplebox dl dt{margin:0px;}
.triple .triplebox dl dt img{border:1px #dfdfdf solid;border-radius:50%;}
.triple .triplebox dl dd{margin:15px 10px 0px;text-align:left;}
@media only screen and (max-width: 480px){
	.triple .triplebox{float:none;display:block;width:auto;margin:50px 0px 0px;padding:0px;}
	.triple .triplebox:nth-of-type(3n){width:auto;}
	.triple .triplebox h3{margin:30px 0px 0px;font-size:1.1em;}
	.triple .triplebox dl{margin:10px 0px 30px;}
	.triple .triplebox dl dt{margin:0px;}
	.triple .triplebox dl dt img{border-radius:50%;}
	.triple .triplebox dl dd{margin:10px 10px 0px 20px;}
}


/*2Line Box		----------------------------------------------------------------------------------------------------*/
.double .doublebox{display:inline-block;width:400px;padding:0px 20px;vertical-align:top;}
.double .doublebox h3{margin:30px 0px 0px;font-size:1.2em;}
.double .doublebox dl{margin:15px 0px 30px;}
.double .doublebox dl dt{margin:0px;}
.double .doublebox dl dt img{border:1px #dfdfdf solid;}
.double .doublebox dl dd{margin:15px 10px 0px;text-align:left;}
@media only screen and (max-width: 480px){
	.double .doublebox{float:none;display:block;width:auto;margin:50px 0px 0px;padding:0px;}
	.double .doublebox h3{margin:30px 0px 0px;font-size:1.1em;}
	.double .doublebox dl{margin:10px 0px 30px;}
	.double .doublebox dl dt{margin:0px;}
	.double .doublebox dl dd{margin:10px 10px 0px 20px;}
}


/*Mini Box		----------------------------------------------------------------------------------------------------*/
.mini .minibox{display:inline-block;width:480px;margin:10px 10px 10px 0px;vertical-align:top;}
.mini .minibox:nth-of-type(2n){margin:10px 0px;}
.mini .minibox p{float:left;margin:15px 10px 15px 15px;}
.mini .minibox p img{border:1px #dfdfdf solid;}
.mini .minibox dl{margin:15px 5px 0px 15px;text-align:left;}
.mini .minibox dl dt{margin:0px;padding:5px 0px 0px;font-size:1.2em;}
.mini .minibox dl dd{margin:10px 20px 0px;color:#4f4f4f;}
@media only screen and (max-width: 480px){
	.mini .minibox{display:block;width:auto;margin:20px 10px;}
	.mini .minibox:nth-of-type(2n){margin:20px 10px;}
	.mini .minibox p{float:left;margin:0px 10px 0px 0px;}
	.mini .minibox dl{margin:0px;}
	.mini .minibox dl dt{padding:2px 0px 0px;font-size:1.1em;}
	.mini .minibox dl dd{margin:2px 0px 0px;}
}


/*Big Box		----------------------------------------------------------------------------------------------------*/
.big .bigbox{width:940px;margin:20px 20px 0px;}
.big .bigbox p{float:left;margin:0px 20px 20px 20px;}
.big .bigbox p img{border:1px #dfdfdf solid;}
.big .bigbox dl{margin:0px 15px 0px 15px;text-align:left;}
.big .bigbox dl dt{margin:0px;padding:15px 0px 0px;font-size:1.6em;}
.big .bigbox dl dd{margin:10px 20px 0px;color:#4f4f4f;font-size:1.1em;line-height:1.6em;}
@media only screen and (max-width: 480px){
	.big .bigbox {width:auto;margin:50px 20px 0px;}
	.big .bigbox p{float:none;margin:0px 10px 0px 0px;}
	.big .bigbox dl{margin:0px 0px 15px;text-align:left;}
	.big .bigbox dl dt{margin:0px;padding:15px 0px 0px;font-size:1.2em;}
	.big .bigbox dl dd{margin:10px 0px 0px;color:#4f4f4f;font-size:1.0em;}
}


/*Topics		----------------------------------------------------------------------------------------------------*/
.topics{}
.topics dl{width:980px;max-height:500px;margin:30px auto 0px;padding:30px 30px 15px;text-align:left;overflow:auto;}
.topics dl dt{clear:both;float:left;margin:0px;padding:1px 0px 0px 30px;color:#323031;font-size:1.1em;}
.topics dl dd{margin:0px 0px 25px 0px;padding:0px 20px 25px 10em;border-bottom:1px #ddd solid;font-size:1.1em;line-height:1.6em;}
.topics dl dd:last-child{border-bottom:none;}
@media only screen and (max-width: 480px){
	.topics{}
	.topics dl{width:auto;min-height:300px;height:300px;margin:30px 0px 0px;padding:20px 10px 15px;}
	.topics dl dt{float:none;margin:0px 10px;padding:0px;font-size:1.0em;}
	.topics dl dd{margin:5px 0px 20px;padding:0px 10px 20px;font-size:0.9em;}
	.topics dl dd:last-child{}
}


/*Message		----------------------------------------------------------------------------------------------------*/
.message{background:#eee;}
.message .big{width:980px;margin:0px auto;}
.message .big p.photo{margin:30px auto 0px;text-align:center;}
.message .big p.photo img{border:5px #f9f9f9 solid;}
.message .big h3{margin:50px 40px 0px;font-size:1.8em;line-height:1.5em;text-align:left;}
.message .big p{margin:30px 40px 0px;font-size:1.2em;text-align:left;}
.message .mini{width:980px;margin:0px auto;}
.message .mini p.photo{float:left;margin:0px 30px 30px 0px;}
.message .mini p.photo img{border:5px #f9f9f9 solid;}
.message .mini h3{margin:50px 0px 0px;font-size:1.8em;line-height:1.5em;text-align:left;}
.message .mini p{margin:30px 0px 0px;font-size:1.2em;text-align:left;}
.message .text{width:840px;margin:0px auto;}
.message .text h3{margin:50px 0px 0px;font-size:1.8em;line-height:1.5em;text-align:left;}
.message .text p{margin:30px 0px 0px;font-size:1.2em;text-align:left;}
@media only screen and (max-width: 480px){
	.message{}
	.message .big{width:auto;margin:0px auto;}
	.message .big p.photo{margin:30px 10px 0px;}
	.message .big p.photo img{border:3px #f9f9f9 solid;}
	.message .big h3{margin:20px 20px 0px;font-size:1.25em;}
	.message .big p{margin:20px 20px 0px;font-size:1.0em;text-align:left;}
	.message .mini{width:auto;margin:0px 10px;}
	.message .mini p.photo{float:left;width:40%;margin:0px 10px 0px 0px;}
	.message .mini p.photo img{border:3px #f9f9f9 solid;}
	.message .mini h3{margin:30px 0px 0px;font-size:1.2em;line-height:1.5em;text-align:left;}
	.message .mini p{margin:20px 0px 0px;font-size:1.0em;text-align:left;}
	.message .text{width:auto;margin:0px 10px;}
	.message .text h3{margin:30px 0px 0px;font-size:1.2em;line-height:1.5em;text-align:left;}
	.message .text p{margin:20px 0px 0px;font-size:1.0em;text-align:left;}
}


/*Company		----------------------------------------------------------------------------------------------------*/
.company{}
.company table{width:980px;margin:50px auto;font-size:1.1em;text-align:left;border-spacing:0px;border-collapse:collapse;background-color:#fff;}
.company table tr{background:#f6f6f6;border-top:3px #e9e9e9 solid;}
.company table tr:last-child{border-bottom:3px #e9e9e9 solid;}
.company table tr:nth-of-type(2n){background:#fff;}
.company table tr th{width:35%;padding:15px;text-align:right;}
.company table tr th:after{content:':';padding:0px 0px 0px 25px;}
.company table tr td{width:65%;padding:15px;}
.company table tr td span{margin-right:10px;}
.company table tr td dl dt{margin:10px 0px 0px;font-size:1.1em;}
.company table tr td dl dd{margin:5px 0px 0px 5px;}
.company table tr td dl dd:before{content:"├ ";}
.company table tr td dl dd:last-of-type:before{content:"└ ";}
@media only screen and (max-width: 480px){
	.company{padding:50px 0px;}
	.company table{width:100%;margin:30px 0px;font-size:1.0em;}
	.company table tr{border-top:2px #ddd solid;}
	.company table tr:last-child{border-bottom:2px #ddd solid;}
	.company table tr:nth-of-type(2n){}
	.company table tr th{width:30%;padding:15px 10px;}
	.company table tr th:after{content:':';padding:0px 0px 0px 10px;}
	.company table tr td{width:70%;padding:10px 10px 10px 0px;}
	.company table tr td span{display:block;margin:0px;}
	.company table tr td dl dt{margin:8px 0px 0px;font-size:1.0em;}
	.company table tr td dl dd{}
	.company table tr td dl dd:before{}
	.company table tr td dl dd:last-of-type:before{}
}


/*Access Map	----------------------------------------------------------------------------------------------------*/
.access{background:#fff;}
.access iframe{width:100%;height:500px;margin:30px 0px 0px;border:none;border-top:5px #efefef solid;border-bottom:5px #efefef solid;}
@media only screen and (max-width: 480px){
	.access{}
	.access iframe{width:100%;height:200px;margin:20px 0px 0px;}
}


/*Contact		----------------------------------------------------------------------------------------------------*/
.contact{}
.contact table{width:900px;margin:50px 0px 20px 40px;padding:20px 10px 0px;border-spacing:0px;border-collapse:collapse;border:1px #ddd solid;background:#fff;}
.contact table tr th{width:30%;margin:1px;padding:20px 30px 20px 0px;font-size:1.1em;text-align:right;border:1px #ddd solid;background-color:#f6f6f6;}
.contact table tr th span{display:inline-block;margin:0px 0px 0px 8px;padding:1px 3px;color:#fff;font-size:0.8em;vertical-align:top;background:#c71201;}
.contact table tr th span.nini{background:#9f9f9f;}
.contact table tr td{padding:15px 20px;color:#191919;font-size:1.2em;text-align:left;border-bottom:1px #ddd solid;}
.contact table tr td span{margin:5px 0px 0px 10px;color:#6f6f6f;font-size:0.8em;}
.contact table tr td label{margin:0px 10px 0px 0px;}
.contact input[type="text"]{padding:10px;border:1px #ccc solid;}
.contact select{padding:10px;border:1px #ccc solid;}
.contact input[type="text"]:hover,.contact select:hover,.contact textarea:hover{border:1px #3f3f3f solid;background-color:#ffffee;}
.contact input[type="text"]:focus,.contact select:focus,.contact texxtarea:focus{border:1px #3f3f3f solid;background-color:#ffffbb;}
.contact textarea{width:500px;height:200px;margin:0px;padding:10px;border:1px #ccc solid;}
.contact p input{position:relative;display:block;font-weight:bold;margin:50px auto 0px auto;padding:0.7em 5em 0.5em;font-size:1.4em;text-decoration:none;color:#FFF;background:#107a26;transition:.4s;cursor:pointer;}
.contact p input:hover{background:#ff6600;}
@media only screen and (max-width: 480px){
	.contact{}
	.contact table{width:100%;margin:20px 0px 30px;padding:15px 0px 0px;font-size:0.9em;border:none;background-color:transparent;}
	.contact table tr th{display:block;width:auto;padding:10px;text-align:left;border:none;border-bottom:1px #ddd solid;background-color:#e9e9e9;}
	.contact table tr th span{float:left;margin:0px 7px 0px 0px;}
	.contact table tr th span.nini{}
	.contact table tr td{display:block;padding:15px 10px;border-bottom:none;}
	.contact table tr td span{display:block;margin:5px 0px 0px;}
	.contact table tr td label{}
	.contact table tr td input[type="text"]{}
	.contact table tr td input[type="text"]:hover,.contact table tr td select:hover,.contact table tr td textarea:hover{}
	.contact table tr td input[type="text"]:focus,.contact table tr td select:focus,.contact table tr td texxtarea:focus{}
	.contact table tr td textarea{width:100%;}
	.contact table tr:last-child td{border-bottom:0px;}
	.contact p input{position:static;margin:30px auto 0px;font-size:1.2em;}
}


/*Footer		----------------------------------------------------------------------------------------------------*/
#footer{clear:both;margin:0px;padding:0px 0px 70px;border-top:5px #435a87 solid;border-bottom:5px #435a87 solid;background:#fff;}
#footer p{margin:70px auto 0px;}
#footer p:last-child{margin:5px auto 0px;color:#7f7f7f;}
#footer address{margin:15px 0px 0px;padding:0px;color:#7f7f7f;font-size:0.9em;text-align:center;}
#footer address span{display:block;margin:10px;}
@media only screen and (max-width: 480px){
	#footer{padding:0px 0px 40px;}
	#footer p{margin:40px auto 0px;}
	#footer p:last-child{font-size:0.9em;}
	#footer p img{width:65%;}
	#footer address{margin:10px 20px 0px;}
}


/*Pagetop		----------------------------------------------------------------------------------------------------*/
#pagetop{position:fixed;bottom:100px;right:30px;font-size:0.8em;cursor:pointer;}
#pagetop a{display:block;width:80px;padding:20px 0px;color:#fff;text-align:center;text-decoration:none;border:2px #435a87 solid;border-radius:50%;background:#435a87;}
#pagetop a:hover{text-decoration:none;color:#000;border:2px #435a87 solid;background:#fff;}
@media only screen and (max-width: 480px){
	#pagetop{display:none;}
	#pagetop a{display:none;}
	#pagetop br{display:none;}
}




