@charset "utf-8";

/*==================================================================================================================
リセット
==================================================================================================================*/
/*リセット*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, div, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, hgroup, menu, nav, output, ruby, summary, time, mark, audio, video {
	margin:0;
	padding:0;
	text-align:left;
	font-weight:normal;
  	font-style:normal;
	background-repeat:no-repeat;
	border:0 none;
}


/*==================================================================================================================
再定義
==================================================================================================================*/
/*基本リンク
------------------------------------------------------------------------------------------------------------------*/

/*
a:hover img, a:focus img {
	opacity:0.75;
	filter:alpha(opacity=75);
}
*/

/*リスト
------------------------------------------------------------------------------------------------------------------*/
ol, ul, li {
	list-style-image:none;
	list-style-position:outside;
	list-style-type:none;
}

/* paddingやborderも widthに含める形式に統一
------------------------------------------------------------------------------------------------------------------*/
* { box-sizing:border-box; }

/*==================================================================================================================
クリア
==================================================================================================================*/
.clear {
	clear:both;
	size:0;
}
.clearfix {
	display: inherit;
}
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	clear: both;
	height: 0;
	content:"";
	zoom:1;
}
/* IE6 */
* html .clearfix {
	zoom: 1;
}
/* IE7 */
*:first-child+html .clearfix {
	zoom: 1;
}
/* Hides from IE-mac \*/  
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */  


/*==================================================================================================================
フォントに関する基本スタイル
==================================================================================================================*/
/*基本文字サイズ&文字色
------------------------------------------------------------------------------------------------------------------*/
body {
	font-size:100%;/*16px*/
   font-family: "Noto Sans Japanese","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    line-height:1.9;
	color:#222;
}

/*段落*/
p {
	margin:0px 0px 15px 0px;/*下部に余白*/
}

/*文字サイズ*/

.cap01{
	font-size: 85%;
	display: block;
	line-height: 1.2;
}

.fs12_pc{font-size: 0.75rem}

@media (max-width:499px) {
	body{line-height: 1.7;}
	h1{line-height: 1.2;}
	p, ul, dl{ font-size: 1rem;}
}



/*基本リンク
------------------------------------------------------------------------------------------------------------------*/
/*リンク文字色*/
a{text-decoration: none;}
a:link    {color:#0099cc;}
a:visited {color:#0099cc;}
a:hover   {color:#00a9f0;}

a:hover{
	opacity: 0.8;
}

/*マーカー＆強調文字色
------------------------------------------------------------------------------------------------------------------*/
/*ラインマーカー*/
.c_mrk {
	background-color:#e5d89b;/*Marker*/
	padding:0 3px;
}
/*強調文字色*/
.c_ptv {color:#d64a5a;}/*positive*/
.c_pit {color:#900000;}/*point up*/
.c_ngt {color:#5488a2;}/*negative)*/
.c_off {color:#cac5ba;}/*off*/

.att{color:#cc6666;}

.txt_bold{
	font-weight: bold;
	font-size: 1.7rem;
}

/*右寄せ*/
.txt_right, .txt_right p {
	text-align:right;
}
/*中央寄せ*/
.txt_center, .txt_center p {
	text-align:center;
}
/*明朝*/
.f_mn {
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

/*ゴシック*/
.f_gothic{
font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

/*丸ゴシック*/
.f_maru{
	 font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

@media (max-width: 499px) {
	.txt_bold{font-size: 1.5rem;}
}


/*==================================================================================================================
テーブルに関する設定
==================================================================================================================*/
table {
	border-collapse: collapse;
	border-spacing:0;
	width: 100%;
}
/*テーブルタイトル*/
caption {
	text-align:left;
	font-weight:bold;
	color:#993300;
}
/*枠線*/
th,td{
	border: #f9f8ee 5px solid;
	padding:10px 20px;
	font-size: 1rem;
}
thead th,tfoot th {
	vertical-align:top;
	background-color:#EFEFEF;
	color:#FFFFFF;
}
thead td,tfoot td {
	vertical-align:top;
	background-color:#999;
	color:#FFFFFF;
}
tbody th {
	vertical-align:top;
	background-color: #fff; 
}
tbody td {
	vertical-align:top;
	background-color:#fff;
}

/*その他
-------------------------------------------------------------------------------------------------------------------*/
/*区切り線*/
hr{clear:both;border:0px solid #fff;padding:15px 0;width:0;}

/*画像・オブジェクト*/
img         {border:0 none;vertical-align:top;max-width:100%;}
object	    {text-decoration:none;border:none;margin:0px;padding:0px;vertical-align:bottom;}


/* メニューを非表示にするパターン */
@media (max-width: 499px) {
	.noTab, .noTab caption, .noTab thead, .noTab tfoot, .noTab tbody, .noTab tr, .noTab th, .noTab td { display:block; width:100%; }
}


/*横並びの配置（flexbox）*/

.flex{
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
}
.f_between{
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
}
.f_center{
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
}

.img_right{float: right;}
.img_left{float: left;}
.img_center{text-align: center; margin-bottom: 30px;}

.order1{
	order: 1;
}

.order2{
	order: 2;
}


.dis_bl{display: block;}



@media (max-width: 599px){
.order1{
	order: 2;
}

.order2{
	order: 1;
}
}




/*==================================================================================================================
レイアウト設定
==================================================================================================================*/

/*共通
-------------------------------------------------------------------------------------------------------------------*/

body{
	background: url(../../images/common/bg_stripe_gray.gif);
}
#container  {
	width: 100%;
	position: relative;
}
.inner{
	width:100%;
	max-width: 1000px;
	margin:0 auto;
}
.inner:after{
	content: "";
	display: block;
	clear: both;
}
#wrapper .inner{}


.dis_inl,.dis_inl dl dt,.dis_inl dl dd{
	display: inline-block;
}

.w15_dt_pc dl dt{
	width: 15%;
}

.w20{
	width: 20%;
}

.w25_01 li{
	width: 25%;
}

.w30_01 li,
.w30_d dl dt{
	width: 30%;
}

.w32 li{width: 32%;}

.w35,
.w35_d dl dt{
	width: 35%;
}

.w40_d dl dt{
	width: 40%;
}


.w46{
	width: 46%;
}



.w50,.w50_l li{
	width: 50%;
}

.w55_d dl dd{
	width: 55%;
}

.w60,
.w60_d dl dd{
	width: 60%;
}

.w65_d dl dd{
	width: 65%;
}

.w85_dd_pc dl dd{
	width: 85%;
}

.w100{
	width: 100%;
}





@media (max-width: 599px){
.w30_01 li,.w25_01 li,.w32 li,.w46,.w15_dt_pc dl dt,.w85_dd_pc dl dd,
.w50_l li{
	width: 100%;
}

.w15_dt_pc dl dt{
	margin-bottom: 0.3rem;
}

}



@media (max-width:1000px) {
	.inner{padding: 0 2%;}
}
@media (max-width:499px) {
	#wrapper{padding-top:60px;}
}

.contents_btm01{
	margin-bottom: 100px;
}
.contents_btm02{
	margin-bottom: 80px;
}
.contents_btm03{
	margin-bottom: 60px;
}
.contents_btm04{
	margin-bottom: 40px;
}
.contents_btm05{
	margin-bottom: 20px;
}


.sp{
	display: none !important;
}

@media (max-width:599px){

.pc{
	display: none !important;
}

.sp{
	display: block !important;
}


.contents_btm01{
	margin-bottom: 4rem;
}
.contents_btm02{
	margin-bottom: 2rem;
}
.contents_btm03,.contents_btm04{
	margin-bottom: 1rem;
}
}


/*ボーダー*/

.line01,.line01_d dl{
    display: flex;
    justify-content: flex-start;
    border-top: dotted 1px #C9B497;
    padding: 20px;
}



/*ヘッダー*/

header{
	background: #fff; 
}

#header{
	padding-top: 10px;
	margin-bottom: 20px;
}

#hdr_logo{
	float: left;
	width: 24%;
}

.menu {display: none;}

#gnav_wrap{
	float: right;
	width: 70%;
}

#gnav_wrap #gnav{
	width: 65%;
}

#gnav > li{
	display: inline-block;
	width: 30%;
	text-align: center;
	margin: auto;
}

#gnav li a{
	width: 100%;
	height: 100%;
	display: block;
	text-align: center;
    overflow: hidden;
    color: #6d5e4e;
    font-weight: bold;
    font-size: 0.9rem;
    padding-top: 30px;
}

#gnav_wrap .head_add p{
	font-size: 0.625rem;
	margin-bottom: 0;
	text-align: right;
}

#gnav_wrap .tel{
	font-size: 1.65rem;
	line-height: 1.4;
	font-weight: bold;
	vertical-align: middle;
}

#gnav_wrap .tel::before{
	content: "";
	display: inline-block;
	background: url(../images/common/tel_ico.png) no-repeat;
	background-size: cover;
	width: 18px;
	height: 28px;
	margin-right: 5px;
	vertical-align: middle;
}


@media (max-width:1024px){

	#hdr_logo,#gnav_wrap{
		float: none;
	    margin: auto;	
	}
}


@media (max-width:799px) {
	#hdr_logo{position: static; margin: 5px auto 15px;}
	#gnav_wrap{width: 100%;}
}


@media (max-width:599px){


#gnav_wrap #gnav{width: 100%;margin-bottom: 1rem;}
.head_add{margin:auto;}

}

@media (max-width:499px) {
	#header{
    width: 100%;
    height: 60px;
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    overflow: visible;
}
	#hdr_logo{
		margin: 5px;
		width: 45%;
		z-index: 999999;
	}
	.head_add{padding: 1rem; background: #d93b29; }
}
@media (max-width:399px) {
	#header{height: 60px;}
}


#gnav01{background: url(../images/common/gnav_icon01.png) top center no-repeat;}
#gnav02{background: url(../images/common/gnav_icon02.png) top center no-repeat;}
#gnav03{background: url(../images/common/gnav_icon03.png) top center no-repeat;}

@media (min-width:999px) {
#gnav li:hover{
	opacity: 0.8;
}
}

@media (max-width:499px) {
	header::before {
    z-index: 999999;
    position: fixed;
}
}



@media (max-width: 499px){


.header_inner {
	width: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	}


/* グローバルナビゲーション */
#gnav_wrap {
	display: block!important;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	float: none;
	width: 100%;
	max-height: 100vh;
	margin: 0;
	padding-top: 57px;
	position: absolute;
	top: 0;
	right: -500px;
	z-index: -1;
	overflow: auto;
	background:#fff;
}
#gnav_wrap::after{
	display: none;
}	
#gnav_wrap.open {
	-moz-transform: translateX(-500px);
	-webkit-transform: translateX(-500px);
	transform: translateX(-500px);
}
#gnav_wrap #gnav{margin-bottom: 0;}	
#gnav_wrap ul {clear: both;}
#gnav01,#gnav02,#gnav03{
	background: none; 
}
#gnav_wrap ul > li {
	width: 100%!important;
	max-width: 100%!important;
	height: auto;
	text-indent: 0;
	border-bottom: 1px solid #d93b29;
}
#gnav_wrap ul > li:last-child{
	border-bottom: none;
}
#gnav_wrap ul > li > a {
	height: 50px!important;
	background-size: 10px 10px!important;
	padding: 0;
	color: #d93b29;
	line-height: 50px;
	font-weight: bold;
}
#gnav_wrap ul > li > a:hover {
	text-decoration: none;
	opacity: 1;
}
		
/* メニューボタン */
.menu {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2000;
	text-indent: -9999px;
}
.menu span {
    display:block;
    position:absolute;
    top:14px;
    right:10px;
    width:30px;
    height:22px;
    background:#ef3a41;
    border-top:9px solid #fff;
    border-bottom:9px solid #fff;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -moz-transition:all 0.3s;
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}
.menu span:before {
    content:'';
    position:absolute;
    width:30px;
    height:4px;
    background:#ef3a41;
    top:-9px;
    right:0;
    -moz-transition:all 0.3s;
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}
.menu span:after {
    content:'';
    position:absolute;
    width:30px;
    height:4px;
    background:#ef3a41;
    bottom:-9px;
    right:0;
    -moz-transition:all 0.3s;
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}
.menu span.active {
    background:#fff;
}
.menu span.active:before {
    -moz-transform:rotate(-135deg);
    -webkit-transform:rotate(-135deg);
    transform:rotate(-135deg);
    top:0;
    right:0;
}
.menu span.active:after {
    -moz-transform:rotate(135deg);
    -webkit-transform:rotate(135deg);
    transform:rotate(135deg);
    bottom:0;
    right:0;
}

/*#gnav_wrap .head_add{
	background:#ffe256;
	padding: 1rem;
}*/

#gnav_wrap .head_add .tel{
	background:#fff;
	padding: 0.5rem;	
	text-align: center;
}
#gnav_wrap .head_add .tel a{
	color: #d72c31;
}

#gnav_wrap .head_add p{
	font-size: 0.9rem;
	background:#d93b29;
	padding: 0.3rem;
	color: #fff;
	text-align: center;
}

}


/*フッター*/
#footer{
	background: #e9e9e9;
	padding: 3% 0 2%;
}

#ftr_logo{
	width: 35%;
	max-width: 200px;
}

.foot_add{
	font-size: 0.75rem;
}

.foot_add p{
	margin-bottom: 5px;
} 

.foot_add li{
	display: inline-block;
}

.foot_add li:first-child{
	margin-right: 30px;
}

#footer #foot_nav{
	text-align: center;
	margin-bottom: 40px;
}

#footer #foot_nav li{
	display: inline-block;
	margin-right: 30px;
	padding-left: 30px;
	font-size: 0.875rem;
	border-left: 1px solid #ccc;
}

#footer #foot_nav li a{
	color: #222;
}

.foot_box{
	width: 60%;
	margin: auto; 
}

#copy{
	background: #d21920;
	padding: 3px 0;
	text-align: center;
	font-size: 0.75rem;
	color: #fff;
}

@media (max-width:999px){


#footer #foot_nav {
    padding-left: 0;
    width: 100%;
    margin: 0 auto 20px;
    text-align: center;
}

}

@media (max-width:799px) {
	#ftr_logo{text-align: center;margin: 0 auto 1rem; }
	.foot_add {margin: auto;}
}
@media (max-width:599px) {
	#footer{padding: 0 0 2%;}
	#footer #foot_nav li{
		width: 100%;
		display: block;
		margin-right: 0;
		padding: 1rem;
		border-bottom: 1px solid #9a9a9a;
		border-left: none;
		position: relative;
	}
	#footer #foot_nav li::after{
		content: ">";
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translate(0%, -50%);
	}
	#ftr_logo{width: 100%;margin:0 auto 1rem; }
	#footer .inner{padding: 0;}
	.foot_box{	width: 90%;}
}




.btn_common01{
	margin: auto;
	text-align: center;	
	font-size: 0.875rem;	
}

.btn_common01 a{
	display: block;
	margin: auto;
	text-align: center;
	font-weight: bold;
}

.btn_more01{
	width: 90%;
	max-width: 200px;
	margin-bottom: 20px;
}
.btn_more01 a{
	background: #fff;
	color: #d21920; 
	padding: 2%;	
}

.btn_more02,.btn_more03{
	margin: auto;
	text-align: center;
}

.btn_more02 a,.btn_more03 a{
	display: inline-block;
	font-weight: bold;
	position: relative;
    max-width: 260px;
    width: 90%;
    text-align: center;
    margin: auto;
    font-size: 1rem;
    padding: 10px 0;
    border-radius: 6px;	
}

.btn_more02 a{
	background: #ed9280;
	color: #fff; 
}

.btn_more03 a{
	background: #9eca3a;
	color: #fff; 
}


.btn_more02 a::after,.btn_more03 a::after{
	content: "≫";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translate(0%, -50%);
}





/*トップページ
-------------------------------------------------------------------------------------------------------------------*/

/*メインイメージ*/
#sub_page #visual{
	display: none;
}

#visual{
	background: url(../../img/index/main_img.jpg) no-repeat;
	background-size: cover;
	width: 100%;
	height: 540px;
	position: relative;
}

#visual p{
	position: absolute;
	top: 50%;
	left: 15%;
	transform: translate(0%, -50%);
	color: #fff;
	font-size: 2.25rem;
}


@media (max-width: 599px){

#visual{
	height: 60vw;	
}

#visual p{
	font-size: 5vw;
	text-shadow:2px 2px 4px #000000;
}

}




#top_page h2{
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-size: 2rem;
	text-align: center;
	margin-bottom: 40px;
	color: #ed1c24;
}

#top_page h2::after{
	content: "";
	display: block;
	background: #ed1c24;
	margin: 0.5rem auto 0; 
	width: 40px;
	height: 2px;
}

#top_page h3{
	font-size: 1.4rem;
}



#top_commitment h3{
	font-size: 1.375rem;
	text-align: center;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	margin-bottom: 20px;
}


/*top_prtnr*/

#top_prtnr{
	height: auto;
    max-height: 500px;
    overflow: hidden;
}

#top_prtnr h2{
	color: #fff;
}
#top_prtnr h2::after{
	background: #fff; 
}

#top_prtnr .manag_img{
	width: 55%;
}

#top_prtnr .manag_text{
	width: 45%;
	background: #d21920;
	padding: 2% 4%;
	position: relative;
}

#top_prtnr .manag_text .read_text{
	font-size: 1.6rem;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 5%;
	transform: translate(0%, -50%);	
}

#top_prtnr .manag_text .btn_more01{
	position: absolute;
	right: 0;
	left:0;
	bottom:7%;
}

@media (max-width:1200px){

#top_prtnr .manag_img img{
	height: 100%;
}

#top_prtnr .manag_text .read_text{
	font-size: 1.2rem;
}

}


@media (max-width:999px){

#top_prtnr{
	height: 40vw;
}


#top_prtnr .manag_text .read_text{
	font-size: 1rem;
}

}

@media (max-width:699px){

#top_prtnr{
	height: auto;
}

#top_prtnr .manag_text,#top_prtnr .manag_img{
	width: 100%;
}

#top_prtnr .manag_text .read_text,
#top_prtnr .manag_text .btn_more01{
	position: static;
}
#top_prtnr .manag_text .read_text{
	font-size: 1.2em;
	transform: inherit;
}
#top_prtnr .manag_text.order2{order: 1;}

}



/*top_policy*/

#top_policy li{
	color: #fff;
	padding: 3rem;
	width: 25%;
}

#top_policy li h3{
	margin-bottom: 1rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid #fff;
}

#top_policy li p{
	font-size: 1.2rem;
}

#top_policy li:nth-of-type(1){
	background: #d21920;
}
#top_policy li:nth-of-type(2){
	background: #66b18d;
}
#top_policy li:nth-of-type(3){
	background: #d29c19;
}
#top_policy li:nth-of-type(4){
	background: #26a6b9;
}



@media (max-width: 999px){

#top_policy li{
	width: 50%;
}

}

@media (max-width: 699px){


#top_policy li p{
	font-size: 1rem;
}

}


@media (max-width: 599px){

#top_policy li{
	width: 100%;
	padding: 2rem;
}


}





/*top_commitment*/

#top_commitment p.commit_text{
	margin-bottom: 0;
}

@media (max-width: 999px){

#top_commitment h3{
	font-size: 2.1vw;
}

}


@media (max-width: 599px){

#top_commitment h3{
	font-size: 1.2rem;
}

#top_commitment li{
	margin-bottom: 2rem;
}
#top_commitment li:last-child{
	margin-bottom: 0;
}


}




/*top_manag*/

#top_manag .contents_common{
	position: relative;
}

#top_manag .contents_common .text_area{
	position: absolute;
	background: #e3e6ea;
	padding: 3rem 4rem;
	width: 44%;
}
#top_manag .contents_common .text_area h3::before{
	display: inline-block;
	font-size: 5rem;
	color: #d21920;
	font-style: italic;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: normal;
	position: absolute;
	top: -4.4rem;
	left: 0;
}
#top_manag .manag_box01 .text_area{
	bottom: -20px;
	right: 0;
}
#top_manag .manag_box01 .text_area h3::before{
	content: "1";
}

#top_manag .contents_common .img_area{
	width: 70%;
}

#top_manag .manag_box02 .text_area{
	bottom: -20px;
	left: 0;
}
#top_manag .manag_box02 .text_area h3::before{
	content: "2";
}

#top_manag .manag_box02 .img_area{
	float: right
}


@media (max-width:799px){

#top_manag h3{
	font-size: 1.2rem;
}

#top_manag .contents_common .text_area{
	position: static;
	width: 100%;
    padding: 2rem;	
}
#top_manag .contents_common .img_area{
	width: 100%;
}
#top_manag .contents_common .text_area h3::before{
	position: static;
	font-size: 1.6rem;
	margin-right: 0.5rem;
}


}

@media (max-width:599px){

#top_manag .manag_text,#top_manag .manag_img{
	width: 100%;
}

#top_manag .manag_text .read_text,
#top_manag .manag_text .btn_more01{
	position: static;
}
#top_manag .manag_text .read_text{
	font-size: 1.2em;
	transform: inherit;
}


}


/*top_business*/


#top_business{
	background: #efefef;
	padding: 3rem 0;
}

#top_business h3{
	border-left: 3px solid #d21920;
	padding-left: 1rem;
	line-height: 1.2;
}

#top_business .business_list01 h3,
#top_business .business_list02 h3{
	margin-bottom: 2rem;
}

#top_business h4{
	font-size: 1.1rem;
}

#top_business .business_list01 li{
	width: 22%;
}

#top_business .business_list02 li{
	width: 48%;
}

#top_business .business_list01 li div,
#top_business .business_list02 li div{
	margin-bottom: 1rem;
}

#top_business .business_list03 li{
	border-bottom: 1px solid #bfbfbf;
	padding-bottom: 0.5rem;
	margin-bottom: 2rem;
} 


@media (max-width:999px){


}



@media (max-width:599px){

#top_business li div h3{
	font-size: 1.2rem;
}

#top_business .business_list01 h3,
#top_business .business_list02 h3{
	margin-bottom: 1rem;
}

#top_business h4{
	font-size: 1rem;
}
#top_business .business_list01 li{
	width: 48%;
}
#top_business .business_list01 li:nth-of-type(-n+2){
	margin-bottom: 2rem;
}

#top_business .business_list02 li{
	width: 100%;
}
#top_business .business_list02 li:first-child{
	margin-bottom: 1rem;
}

#top_business .business_list03 li:last-child{
	margin-bottom: 0;
}

}






/*top_about*/

#top_about li dt,
#top_about li dd{
	display: inline-block;
}

#top_about>div>ul>li{
	border-bottom: 1px solid #ccc;
	padding: 1.5rem;
}

#top_about li dt{
	width: 20%;
	font-weight: bold;
}
#top_about li dd{
	width: 76%;
}



@media (max-width: 599px){


#top_about li dt,#top_about li dd{
	width: 100%;
}

}







/*top_works*/

#top_works .works_img{
	width: 46%;
}

#top_works .works_text{
	width: 42%;
}

#top_works .works_text p{
	font-size: 1.4rem;
}







@media (max-width: 599px){

#top_works .works_img,#top_works .works_text{
	width: 100%;
}

#top_works .works_text{
	margin-bottom: 1rem;
}

#top_works .works_text p{
	font-size: 1.2rem;
}

}






@media (max-width:699px) {
#top_page h2{
	font-size: 1.3rem;
	margin-bottom: 1.5rem;
}
#top_page h3{
	font-size: 1.1rem;
}

}

@media (max-width:499px){

#top_manag,#top_business{
	padding-top: 60px;
	margin-top: -60px;
}

}




/*サブページ
-------------------------------------------------------------------------------------------------------------------*/

/*共通*/


.sub_page header{
	border-bottom: 1px solid #d21920;
}

#main{
	padding: 80px 0;
	max-width: 1000px;
	margin: 0 auto;
}

.ah1, .sh1{
	font-weight: bold;
	clear: both;
}
.ah1{
	text-align: center;
}
.ah1{
	font-size: 2rem;
	color: #d21920;
	letter-spacing: 0.3em;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;	
}


.ah1::after{
    content: "";
    display: block;
    background: #d21920;
    width: 30px;
    height: 2px;
    margin: auto; 
}

.sh1{
	font-size: 1.6rem;
	margin-bottom: 30px;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

.sh1::before{
	content: "";
	display: inline-block;
	background: #d21920;
	width: 3px;
	height: 24px;
	vertical-align: middle;
	margin-right: 0.5rem;
}


.t_v01{
    font-size: 1.2rem;
    font-weight: bold;
}

.mt{margin-top: 50px;}

.sub_page #visual{
	display: none;
}

.sub_page #wrapper{
	padding-top: 0;
}

.sub_page article{
	padding-top: 60px;
}

.sub_page ol.breadcrumb {
	margin-top: 20px;
}

.sub_page ol.breadcrumb li{
	display: inline-block;
	font-size: 0.875rem;
	color: #8e857b;
	margin-right: 5px;
}

.sub_page ol.breadcrumb li a{
	text-decoration: underline;
	color: #8e857b;
}

.sub_page ol.breadcrumb li::after{
	content: ">";
	margin-left: 5px;
}

.sub_page ol.breadcrumb li:last-child{
	margin-right: 0;
}

.sub_page ol.breadcrumb li:last-child::after{
	display: none;
}

@media (max-width:1200px){
	#main{padding: 50px 20px; width: 100%;}
	.sh1{font-size: 22px; line-height: 1.7;}
}
@media (max-width:799px) {
	#main{padding: 30px 4% 4rem;}
}
@media (max-width:599px) {
	.ah1{font-size: 20px;}
	.ah1::after{
	    margin: 1rem auto 0; 
	}
	.mt{margin-top: 30px;}
	.sh1{font-size: 18px;margin-bottom: 20px;}
	.sub_page .contents_common{padding: 2%;}	
}



@media (max-width:499px){

.ah1::after{
	width: 12%;
}

.sub_page #header::after{
	margin-top: 0;
}

.sub_page article{
	padding-top: 0;
}

.sub_page #wrapper{
	padding-top: 60px;
}

.sub_page ol.breadcrumb{
	margin-bottom: 30px;
}


}





.accordion>li{
	margin-bottom: 3rem;
}

.accordion>li:last-child{
	margin-bottom: 0;
}

.accordion .ac_link{
	max-width: 260px;
	width: 90%;
	text-align: center;
	color: #fff;
	margin: auto; 
	cursor: pointer;
	font-weight: bold;
	font-size: 1rem;
	background: #9eca3a;
	padding: 10px 0;
	border-radius: 6px;
}

.accordion .ac_th01{
    margin-bottom: 1rem;
    padding-left: 0.5rem;
    border-left: 4px solid #9ec93c;
}

 .accordion .inner_contetnts {
	display: none;
	border: 12px solid #efefef;
	padding: 2rem;
	margin-top: 2rem;
}

.accordion .inner_contetnts .ac_h{
	text-align: center;
	font-weight: bold;
	color: #9eca3a;
	font-size: 1.2rem;
}

.accordion .inner_contetnts .contetnts01>ul>li>dl,
.accordion .inner_contetnts .contetnts02>ul>li>dl{
	display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-top: dotted 1px #C9B497;
    padding: 20px;
}

.accordion .inner_contetnts .contetnts01>ul>li>dl>dt,
.accordion .inner_contetnts .contetnts02>ul>li>dl>dt{
	width: 20%;
	font-weight: bold;
	font-size: 1rem;	
}
.accordion .inner_contetnts .contetnts01>ul>li>dl>dd,
.accordion .inner_contetnts .contetnts02>ul>li>dl>dd{
	width: 80%;
}


@media (max-width: 599px){


.accordion .ac_th01{
	font-size: 1rem;
}

.accordion .inner_contetnts .contetnts01>ul>li>dl>dt,
.accordion .inner_contetnts .contetnts02>ul>li>dl>dt,
.accordion .inner_contetnts .contetnts01>ul>li>dl>dd,
.accordion .inner_contetnts .contetnts02>ul>li>dl>dd{
	width: 100%;
}





}



/*recruit*/

.recruit_detail{
	margin-bottom: 50px;
}
.recruit_detail li dt,
.recruit_detail li dd{
	display: inline-block;
}

.recruit_detail > li{
	border-bottom: 1px solid #ccc;
	padding: 1.5rem;
}

.recruit_detail li dt{
	width: 20%;
	font-weight: bold;
    vertical-align: top;
}
.recruit_detail li dd{
	width: 76%;
}

#recruit_page h2{
    border-bottom: 1px solid #ccc;
}

#recruit_page .btn_more01{
	margin-bottom: 50px;
}
#recruit_page .btn_more01 a{
	background: #d21920;
    color: #fff;
}

@media (max-width: 599px){

.recruit_detail > li{padding: 1rem;}
.recruit_detail li dt, .recruit_detail li dd{
	width: 100%;
}

}


/*フォーム関係*/

#partner_page .partner_list{
	background: #efefef;
	padding: 3rem;
}

#partner_page .partner_list li{
	width: 48%;
	border-bottom: 1px dashed #ccc;
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}
#partner_page .partner_list li:last-child{
	margin-bottom: 0;
}

#form { padding-top:10px; }
#form h2{
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-size: 2rem;
	text-align: center;
	margin-bottom: 40px;
	color: #ed1c24;
}

#form h2::after{
	content: "";
	display: block;
	background: #ed1c24;
	margin: 0.5rem auto 0; 
	width: 40px;
	height: 2px;
}
#form table{
	margin: 30px 0;
}

#form table th,#form table td {
    border: #d4d4d4 1px solid;
    padding: 20px;
    font-size: 1rem;
}

#form table th{
	text-align: left;
	color: #fff;
	vertical-align:top;
	background-color: #d93b29;
}
#form table td{
	background: #fff;
}

#form td input.w01 {width: 100%;}

#form td input,#form table td textarea{
	padding: 10px;
}

#form table td textarea{
    font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    line-height: 1.9;
}

input::placeholder,textarea::placeholder,
input:-ms-input-placeholder,textarea::placeholder,
input::-ms-input-placeholder,textarea::placeholder {
  color: #bbb;
}

#form td textarea{
	width: 100%;
}

#form .btn_area{
	margin: auto;
	text-align: center;
	width: 90%;
	max-width: 300px;
}

#form .btn_area a{
	margin: auto;
	text-align: center;	
	display: block;
	background: #d93b29;
	color: #fff;
	font-weight: bold;
	padding: 6px 30px;
}

#form .required{
	color: #cc2828;
	font-size: 0.9rem;
}

@media (max-width:499px) {
	#partner_page .partner_list{
		padding: 2rem;
	}
	#partner_page .partner_list li{
		width: 100%;
	}
	#form table th{border-bottom: none;border-top: none;padding: 6px;}
	#form table th, #form table td{border: none;}
	#form td label{width: 100%;display: block;}
}



/*フォント関係*/
@media (max-width:599px) {
	body{line-height: 1.7;}
	h1{line-height: 1.2;}
	p, ul, dl{ font-size: 1rem;}
}


#top_recruit{
    margin: 100px auto 0;
    position: relative;
}
#top_recruit .recruit_img{
	
}
#top_recruit h2{
    position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
    color: #fff;
    font-size: 2.5rem;
}
#top_recruit h2 span{
    border: 1px #fff solid;
    padding: 5px 40px;
}
#top_page #top_recruit h2::after{
	content:inherit;
}
@media (max-width:599px) {
	#top_recruit{ margin: 50px auto 0;}
	#top_recruit h2{left: 0;right: 0;transform: translateY(-50%) translateX(0);font-size: 1.8rem;}
}
