﻿@charset "utf-8";

/* base
------------------ */
/* reset */
html,body,div,h1,h2,h3,h4,h5,h6,p,blockquote,q,pre,table,caption,colgroup,col,tbody,thead,tfoot,tr,th,td,ul,ol,li,dl,dt,dd,form,fieldset,legend,label,span,a,img,em,ins,del,cite,abbr,sup,sub,dfn,code,var,samp,kbd,object,script,noscript,style,iframe,embed,param,map,area,menu,hr,address,small,strong,i,b,article,aside,figure,footer,header,hgroup,nav,section,figcaption,time,video,audio,mark,ruby,rt,rp,bdo,source,canvas,details,summary,command,datalist,keygen,output,progress,meter{margin:0;padding:0;outline:0;}
address,article,aside,figure,figcaption,footer,header,hgroup,hr,legend,menu,nav,section,summary{display:block;}
h1,h2,h3,h4,h5,h6{font-size:100%;}

/* body */
body{
	color:#333;
	line-height:1.7;
	font-size:100%;/*16px*/
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS Gothic", sans-serif;
	font-weight: 500;
	word-break:break-all;
}

@media screen and (orientation:landscape){
body{
	-webkit-text-size-adjust:100%;
}
}

input,textarea,select{
	font-family:Meiryo, sans-serif;
}

/* リンク */
a:link{color:#090;text-decoration:underline;}
a:visited{color:#865d86;text-decoration:underline;}
a:hover{text-decoration:none;}

/* タグ共通 */
img{border:none;max-width:100%;}
p{margin:0 0 1.5rem 0;}
hr{border:none;border-top:1px solid #ccc;margin:3rem auto;clear:both;}
table{empty-cells:show;border:none;border-collapse:collapse;max-width:100%;}

/*テキスト関係*/
.smaller{font-size:75%;}/*12px*/
.larger{font-size:125%;}/*20px*/
.bold{font-weight:bold;}
.normal{font-weight:normal;}
.red{color:#d50000;}
.gray{color:#666;}
.green{color:#090;}
.pale_green{color: #a5da9e;}
.orange{color: #fa0;}
.highlight{background:-webkit-gradient(linear, left top, left bottom, from(#ffec95), to(#ffec95));background:linear-gradient(transparent 55%, #ffec95 55%);}
.mincho{font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.en{font-family: 'Hammersmith One', sans-serif;}

/*リスト*/
li{list-style:none;}
ul.list_mark{margin-bottom:1.5rem;}
ul.list_mark li{list-style:disc;margin-left:1.5em;}
ol.list_mark{margin-bottom:1.5rem;}
ol.list_mark li{list-style:decimal;margin-left:1.5rem;}
dl.dl_default{margin-bottom:1.5rem;}
dl.dl_default dt{font-weight:bold;}
dl.dl_default dd{margin-left:1em;}

/* テキスト揃え */
.ac{text-align:center;}
.al{text-align:left;}
.ar{text-align:right;}
.vam{vertical-align:middle;}
.vat{vertical-align:top;}

/* フロート */
.fl{float:left;}
.fr{float:right;}
.cl{clear:both;}

/* マージン */
.ma{margin-right:auto;margin-left:auto;}
.ml{margin-left:1rem;}
.mr{margin-right:1rem;}
.mb{margin-bottom:1rem;}
.mb0{margin-bottom:0;}

/* エフェクト */
.fade:hover{opacity:0.8;transition:0.2s;}

/* アコーディオン
.trg{
	cursor:pointer;
}*/

/* sp header
------------------ */
#sp_header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #a5da9e;
	display: table;
	line-height: 1.0;
	z-index: 99;
}

/* sp logo */
#sp_header_logo{
	display: table-cell;
	width: 55%;
	font-size: 125%;
	vertical-align: middle;
}

#sp_header_logo a{
	display: block;
	padding: 10px;
	text-decoration: none;
	color: #333;
}

/* sp header nav */
#sp_header ul{
	display: table-cell;
	width: 45%;
	vertical-align: middle;
}

#sp_header li{
	display: inline-block;
	width: 31%;
	vertical-align: middle;
	text-align: center;
}

#sp_header li > span, #sp_header li > a, #sp_header li > div{
	display: block;
	padding: 16px 10px;
}

#sp_header li img{
	width: 80%;
}

@media print, screen and (min-width: 980px){
#sp_header{
	display: none;
}
}

/* sp nav
------------------ */
#sp_nav{
	display: none;
	width: 100%;
	padding-bottom: 2rem;
}

#sp_nav dt{
	border-bottom: 1px dashed #84ae7e;
	padding: 1em;
	font-weight: bold;
}

#sp_nav dd{
	border-bottom: 1px dashed #84ae7e;
}

#sp_nav dd a{
	display: block;
	padding: 1em;
	position: relative;
}

#sp_nav dd a:before{
	position: absolute;
	top: 40%;
	right: 1rem;
	content: "";
	display: block;
	width:10px;
	height:10px;
	border-top: 2px solid #84ae7e;
	border-right: 2px solid #84ae7e;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#sp_nav .sp_nav_sub dd a{
	padding-left: 2.5em;
}

/* sp nav close */
.sp_nav_close{
	text-align: center;
	padding: 0.7rem 2em;
	border-radius: 3px;
	background: #a5da9e;
	max-width: 60%;
	color: #fff;
	margin: 2rem auto;
}

.sp_nav_close img{
	width:1.4em;
	vertical-align: middle;
}

/* pc header
------------------ */
#pc_header{
	display: none;
}

@media print, screen and (min-width: 980px){
#pc_header{
	display: block;
}

/* pc header 01 */
#pc_header01{
	background: #a5da9e;
	color: #fff;
	padding: 10px;
	overflow: hidden;
	line-height: 1.0;
}

/*キャッチ*/
#pc_header_catch{
	font-size: 75%;
	float: left;
	padding-top: 10px;
}

/*TEL＋メール*/
#pc_header01 ul{
	float: right;
	width:340px;
	text-align: right;
}

#pc_header01 li{
	display: inline-block;
	vertical-align:middle;
	margin-left: 5px;
}

#pc_header01 ul img{
	width: 22px;
	padding-right: 5px;
	vertical-align:text-top;
}

#pc_header01 li.en{
	font-size:125%;
}

#pc_header_ct a{
	display: block;
	background: #fa0;
	color: #fff;
	text-decoration: none;
	font-weight: bold;
	border-radius: 3px;
	padding: 5px 16px;
}

/* pc header 02 */
#pc_header02{
	width: 980px;
	margin: 0 auto;
	overflow: hidden;
}

/*pc logo*/
#pc_header_logo{
	float: left;
	font-size: 187.5%;
	line-height: 1.0;
	padding: 26px 0 0 0;
	width: 280px;
}

#pc_header_logo a{
	text-decoration: none;
	color: #333;
}

#pc_header_logo span{
	display: block;
	font-size: 46.67%;
	margin-bottom: 10px;
}

/*pc nav*/
#pc_nav{
	float: right;
	width: 620px;
	text-align: right;
	padding: 16px 0 10px 0;
}

#pc_nav > ul > li{
	display: inline-block;
	vertical-align: middle;
	width: 100px;
	text-align: center;
}

#pc_nav a{
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 87.5%;
	transition: 0.2s;
}

#pc_nav a:hover{
	background:#edf8ec ;
}

#pc_nav li img{
	width: 70px;
	display: block;
	margin: 0 auto 5px auto;
}

#pc_nav li > ul{
	display: none;
}
}

/* footer pt
------------------ */
#footer_pt{
	background: #f6f6f6;
	position: relative;
	height: 44px;
}

#footer_pt a{
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 300px;
	text-decoration: none;
	transition: 0.2s;
	font-size: 87.5%;
	padding: 16px 0 8px 0;
	background: #f6f6f6;
	margin-left: -150px;
}

#footer_pt a:hover{
	background: #edf8ec;
}

#footer_pt a:before{
	content: "";
	display: block;
	margin: 0 auto;
	width:16px;
	height:16px;
	border-top: 2px solid #090;
	border-right: 2px solid #090;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* footer
------------------ */
/* footerリンク */
#footer_link dt{
	padding: 0.8rem 1rem;
	font-weight: bold;
	border-bottom: 1px dashed #ccc;
}

#footer_link dd{
	border-bottom: 1px dashed #ccc;
}

#footer_link a{
	display: block;
	padding: 0.8rem 1rem;
	position: relative;
}

#footer_link dl:first-child a, #footer_link dl:nth-of-type(2) a{
	padding: 0.8rem 1rem 0.8rem 3rem;
}

#footer_link a:before{
	position: absolute;
	top: 40%;
	right: 1rem;
	content: "";
	display: block;
	width:10px;
	height:10px;
	border-top: 2px solid #090;
	border-right: 2px solid #090;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media print, screen and (min-width: 980px){
#footer{
	overflow: hidden;
	padding: 2rem 0;
}

#footer_link{
	width: 50%;
	float: right;
	font-size: 87.5%;
}

#footer_link dl{
	display: inline-block;
	vertical-align: top;
	width: 32%;
}

#footer_link dt{
	padding: 5px 0;
	border-bottom: none;
}

#footer_link dd{
	padding: 2px 0;
	border-bottom: none;
}

#footer_link a{
	display: inline;
	padding: 0 0 0 1rem;
}

#footer_link dl:first-child a, #footer_link dl:nth-of-type(2) a{
	padding: 0 0 0 1rem;
}

#footer_link a:before{
	position: absolute;
	top: 30%;
	left:0;
	width:5px;
	height:5px;
}
}

/* footer会社情報 */
#footer_info{
	padding: 2rem 1rem;
}

#footer_name{
	font-size: 125%;
	margin-bottom: 1rem;
	text-align: center;
}

#footer_info dl{
	font-size: 87.5%;
}

#footer_info dt{
	width: 5em;
	float: left;
	clear: both;
	background: #a5da9e;
	text-align: center;
	border-radius: 3px;
	margin: 0 0 0.5rem 0;
}

#footer_info dd{
	margin: 0 0 0.5rem 5.5em;
}

@media print, screen and (min-width: 980px){
#footer_info{
	padding: 0 2rem;
	width: 40%;
	float: left;
}

#footer_name{
	text-align: left;
}

#footer_info dl{
	font-size: 81.25%;
}
}

/* copyright
------------------ */
#copy{
	background: #a5da9e;
	padding: 0.5rem 0;
	text-align: center;
	font-size: 75%;
	color: #edf8ec;
}

/* main
------------------ */
/* レイアウト調整 */
#main{
	padding-top: 65px;
}

.sec{
	margin: 0 1rem 3rem 1rem;
	overflow: hidden;
}

@media print, screen and (min-width: 980px){
#main{
	padding-top:0;
}

.sec{
	width: 980px;
	margin: 0 auto 3rem auto;
}
}

/* MV */
#mv{
	font-size: 150%;
	padding: 3rem 1rem;
	line-height: 1.2;
	margin-bottom: 1.5rem;
	color: #090;
}

@media print, screen and (min-width: 980px){
#mv{
	font-size: 180%;
	padding: 5rem 0;
}

#mv h1{
	width: 980px;
	margin: 0 auto;
}
}

/* content footer */
.ct_footer{
	border-top: 1px solid #f0f0f0;
	border-bottom: 1px solid #f0f0f0;
	padding: 4rem 0 1px 0;
	background: url(../../img_index/bg02.jpg) no-repeat 50% 100%;
	background-size: cover;
	text-align: center;
}

.ct_footer h2{
	font-size: 150%;
	line-height: 1.4;
	margin-bottom: 1rem;
	color: #fa0;
}

.ct_footer img{
	width: 1.2em;
	vertical-align: middle;
}

.ct_footer_form{
	margin-bottom: 1.5rem;
}

.ct_footer_form div{
	font-size: 112.5%;
	font-weight: bold;
}

.ct_footer_form .button_orange{
	font-size: 125%;
}

.ct_footer_tel div{
	font-size: 112.5%;
	font-weight: bold;
}

.ct_footer_tel .call_link{
	display: inline-block;
	font-size: 150%;
	color: #090;
	background: #c9e9c5;
	border-radius: 3px;
	padding: 0.3rem 1.5rem;
}

@media print, screen and (min-width: 980px){
.ct_footer{
	background: url(../../img_index/bg02.jpg) no-repeat 50% 70%;
	background-size: cover;
}

.ct_footer h2{
	font-size: 200%;
}

.ct_footer_form{
	font-size: 125%;
}

.ct_footer_form div{
	display: inline-block;
}

.ct_footer_tel div, .ct_footer_tel .call_link{
	display: inline-block;
}
}

/* 見出し */
.h01{
	font-size: 137.5%;
	background: #a5da9e url(../img/bg01.png) no-repeat 100% 0;
	background-size: 50% 100%;
	padding: 0.5rem 1rem;
	border-left: 5px solid #84ae7e;
	margin-bottom: 1.5rem;
}

.h02{
	margin-bottom: 1rem;
	font-size: 125%;
	border-left: 5px solid #a5da9e;
	padding-left:0.6rem;
	border-bottom: 1px dotted #ccc;
}

/* ボタン */
a.button{
	display: inline-block;
	border-radius: 3px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	padding: 0.5rem 1.5rem;
	transition: 0.2s;
}

input.button{
	cursor: pointer;
}

.button img{
	width: 1.3em;
	vertical-align: middle;
}

.button_orange{
	background: #fa0;
}

.button_orange:hover{
	background: #fb3;
}

/* table */
.ta{
	width: 100%;
	margin-bottom: 1.5rem;
}

.ta th{
	border: 1px solid #ccc;
	padding: 0.5rem;
	background: #ffdd99;
}

.ta td{
	background: #fff;
	border: 1px solid #ccc;
	padding: 0.5rem;
}

td.td{
	background: #faf6ef;
	font-weight: bold;
}

/* フォーム */
.form .ta th{
	text-align: left;
	padding: 1rem 0.5rem;
}

.form .ta td{
	padding: 1rem 0.5rem;
}

.textbox{
	font-size: 100%;
}

select{
	cursor: pointer;
	max-width: 90%;
}

.note{
	color: #666;
}

.req{
	color: #d50000;
	font-size:75%;
}

.submit_area{
	text-align: center;
	margin: 2rem 0;
}

.submit_area .button_submit{
	font-size: 125%;
	padding: 0.5rem 1rem;
}

.submit_area .button_cancel{
	padding: 0.5rem 1rem;
	margin-right: 2rem;
}

div.error{
	color: #f00;
	font-weight: bold;
}

td.error{
	background: #fffcec;
}

td.error .textbox{
	border: 2px solid #f00;
}

/* car sub nav */
.car_sub_nav{
	background: #f6f6f6;
	margin-bottom: 2rem;
	text-align:center;
	padding: 10px 0 0 0;
}

.car_sub_nav dt{
	min-width: 12em;
	margin: 0 auto;
	color: #84ae7e;
	font-weight: bold;
}

.car_sub_nav dt img{
	width: 3.5em;
	vertical-align:middle;
	display: inline-block;
	margin: 0 0.6rem 10px 0;
}

.car_sub_nav dd{
	display: inline-block;
	margin: 0 5px 10px 5px;
}

.car_sub_nav dd a{
	display: block;
	border-radius: 3px;
	background: #dbf0d8;
	padding: 0.5rem 1.5rem;
	transition: 0.2s;
}

.car_sub_nav dd a:before{
	content: "";
	display: inline-block;
	margin:0 3px 2px 0;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #090;
}

.car_sub_nav dd.cur a, .car_sub_nav dd a:hover{
	background: #090;
	color: #fff;
}

.car_sub_nav dd.cur a:before, .car_sub_nav dd a:hover:before{
	border-left: 4px solid #fff;
}

@media print, screen and (min-width: 980px){
.car_sub_nav dt{
	display: inline-block;
	font-size: 112.5%;
	margin-right: 0.5rem;
}

.car_sub_nav dd{
	margin: 0 10px 10px 0;
}

.car_sub_nav dd a{
	padding: 0.5rem 3rem;
}
}

/*eof*/