@charset "utf-8";

body{
	position:relative;
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "游ゴシック", YuGothic, sans-serif;
	font-size:16px;
	color:#333333;
	line-height:2;
	min-width:1100px;
	-webkit-text-size-adjust:100%;
	padding-top:108px;
}

a{transition:.3s;}
a:hover{opacity:.6;}

a[href^="tel:"] {
  text-decoration: none;
  cursor: default;
}
a[href^="tel:"], a[href^="tel:"]:hover {
  color: #333;
  opacity: 1;
}


/* グローバルメニュー
--------------------------------------------------------------- */

#g_header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:1000;
	background:#FFF;
}

#g_header > .inner{
	box-sizing:border-box;
	position:relative;
	width:1000px;
	height:56px;
	padding-top:11px;
	margin:0 auto;
	line-height:1;
}

#g_header h1{
	width:182px;
}

#g_header h1 img{
	width:100%;
	height:auto;
}

#g_header nav{
	display:block !important;
	position:relative;
	border-top:2px solid #00834B;
	height:50px;
}

#g_header .g_menu{
	position:relative;
	width:1000px;
	margin:0 auto;
	font-size:0;
	text-align:center;
	z-index:100;
}

#g_header .g_menu > li{
	position:relative;
	font-size:16px;
	font-weight:bold;
	display:inline-block;
	text-align:center;
	width:20%;
}

#g_header .g_menu > li > a{
	box-sizing:border-box;
	position:relative;
	display:block;
	height:50px;
	padding-top:18px;
	line-height:1;
	text-decoration:none;
}

#g_header .g_menu > li > a.arrow:after{
	content:"";
	display:inline-block;
	position:relative;
	left:10px;
	top:-4px;
	margin:auto;
	width:6px;
	height:6px;
	border-top: 1px solid #00834B;
	border-right: 1px solid #00834B;
	transform: rotate(135deg);
}

#g_header .g_menu > li.arrow_open > a.arrow:after{
	transform: rotate(-45deg);
	top:0;
}

#g_header .g_menu .open_flg + ul{
	position:absolute;
	width:100%;
	background:#FFF;
}

#g_header .g_menu .open_flg + ul > li a{
	position:relative;
	display:block;
	line-height:1.2;
	padding:18px 18px 18px 45px;
	background:#FFF;
	text-align:left;
	text-decoration:none;
}

#g_header .g_menu .open_flg + ul > li:nth-child(even) a{
	background-color:#F6F6F6;
}

#g_header .g_menu .open_flg + ul > li a:before{
	content:"";
	display:block;
	position:absolute;
	left:23px;
	top:0;
	bottom:0;
	margin:auto;
	width:6px;
	height:6px;
	border-top: 1px solid #00834B;
	border-right: 1px solid #00834B;
	transform: rotate(45deg);	
}

#g_header .g_sub_menu{
	position:absolute;
	top:-45px;
	right:calc(50% - 500px);
	font-weight:bold;
}

#g_header .g_sub_menu li{
	float:left;
	font-size:12px;
	margin-left:35px;
}

#g_header .g_sub_menu li a{
	padding:7px 0 7px 35px;
	text-decoration:none;
	background-position:left center;
	background-repeat:no-repeat;
	background-size:22px auto;
}

#g_header .g_sub_menu li.s_group a{display:block; padding:0;}
#g_header .g_sub_menu li.s_group img{width:auto; height:25px;}
#g_header .g_sub_menu li.s_access a{background-image:url(../img/common/ic_access.png);}
#g_header .g_sub_menu li.s_contact a{background-image:url(../img/common/ic_contact.png);}


@media print and (min-width:641px){
	body{
		padding-top:0;
	}
	
	#g_header{
		position:relative;
	}
}


/* グローバルメニューSP
--------------------------------------------------------------- */

.sp_menu_btn{display:none;}



/* グローバルコンテナ
--------------------------------------------------------------- */

.main_content{
	width:1000px;
	margin:0 auto;
}


/* トップおくやみ
--------------------------------------------------------------- */

.top-message {
	padding: 30px;
	background: #f6f6f6;
}
.top-message .tophead-mess {
	padding: 40px;
	max-width: 860px;
	margin: 0 auto;
	text-align: center;
	border-radius: 5px;
	background: #fff;
}
.top-message .tophead-mess h2 {
	font-size: 150%;
	font-weight: 700;
	margin: .65em 0;
}


/* ぱんくず
--------------------------------------------------------------- */

.breadcrumb{
	background:#00834B;
	color:#FFF;
	padding:6px 0;
	margin-bottom:80px;
	font-size:0;
}

.breadcrumb ul{
	margin:0 auto;
	width:1000px;
}

.breadcrumb li{
	display:inline-block;
	font-size:14px;
}

.breadcrumb li:not(:last-child){
	margin-right:1em;
}

.breadcrumb li:not(:last-child):after{
	display:inline-block;
	content:">";
	margin-left:1em;
}

.breadcrumb li a{
	color:#FFF;
}


/* グローバルフッター
--------------------------------------------------------------- */

#g_footer{
	margin-top:80px;
	border-top:2px solid #00834B;
}

#g_footer > .inner{
	position:relative;
	width:1000px;
	margin:0 auto;
	padding:35px 0 50px;
	line-height:1;
}

#g_footer ul{
	font-size:0;
	text-align:center;
	margin-bottom:35px;
}

#g_footer li{
	position:relative;
	display:inline-block;
	font-size:16px;
	font-weight:bold;
	padding:0 40px;
}

#g_footer li:first-child{padding-left:0;}
#g_footer li:last-child{padding-right:0;}

#g_footer li:not(:last-child):after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:1px;
	height:16px;
	background:#333;
}

#g_footer li a{
	display:block;
	text-decoration:none;
	border-bottom:4px solid #FFF;
	padding-bottom:6px;
}

#g_footer li.on a,
#g_footer li a:hover{
	border-color:#00834B;
}

#g_footer .copy_area{
	font-size:12px;
}

#g_footer .copy_area{
	float:right;
	text-align:right;
}

#g_footer .copy_area .pp,
#g_footer .copy_area small{
	display:inline-block;
	margin-left:1.5em;
}

/*#g_footer .totop{
	position:absolute;
	top:-64px;
	right:0;
}
*/

#g_footer .totop{
	display:none;
	position:fixed;
	right:20px;
	bottom:20px;
}

#g_footer .totop a{
	position:relative;
	display:block;
	box-sizing:border-box;
	width:80px;
	height:80px;
	border-radius:40px;
	border:2px solid #00834B;
	background:#FFF;
}

#g_footer .totop a:after{
	content:"";
	display:block;
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:32px auto 0;
	width:16px;
	height:16px;
	border-top: 2px solid #00834B;
	border-right: 2px solid #00834B;
	transform: rotate(-45deg);	
}

#g_footer .totop a:hover{
	opacity:1;
	background-color:#00834B;
}

#g_footer .totop a:hover:after{
	border-color:#FFF;
}


/* 各種パーツ - コンテンツボックス
--------------------------------------------------------------- */

.content_box1{
	margin-bottom:4em;
}


/* 各種パーツ - 見出し
--------------------------------------------------------------- */

.h_type1, .h_machine {
	position:relative;
	font-size:32px;
	font-weight:bold;
	text-align:center;
	font-family:"Roboto Condensed","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "游ゴシック", YuGothic, sans-serif;
	letter-spacing:.05em;
	margin-bottom:65px;
	color:#444;
}

.h_type1.en{font-size:40px; letter-spacing:.1em;}

.h_type1 span{
	position:relative;
	display:inline-block;
}

.h_type1 span:before{
	content:"";
	position:absolute;
	left:-200px;
	top:0;
	bottom:0;
	margin:auto;	
	width:160px;
	height:4px;
	background:#00834B;
}

.h_type1 span:after{
	content:"";
	position:absolute;
	right:-200px;
	top:0;
	bottom:0;
	margin:auto;
	width:160px;
	height:4px;
	background:#00834B;
}

.h_type1.style_medium{
	font-size:24px;
	margin-bottom:30px;
}

.h_type1.style_medium span:before,
.h_type1.style_medium span:after{
	width:80px;
	height:3px;
}

.h_type1.style_medium span:before,
.h_type1.style_small span:before{
	left:-100px;
}

.h_type1.style_medium span:after,
.h_type1.style_small span:after{
	right:-100px;
}

.h_type1.style_small{
	font-size:16px;
	margin-bottom:30px;
}

.h_type1.style_small span:before,
.h_type1.style_small span:after{
	width:80px;
	height:2px;
}

.h_type2{
	font-size:20px;
	font-weight:bold;
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom:2px solid #33A757;
}

.h_machine:before{
	content:"";
	position:absolute;
	z-index: 1;
	left:0;
	top:0;
	bottom:0;
	margin:auto;	
	width:100%;
	height:4px;
	background:#00834B;
}

.h_machine>span {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 15px;
	margin: 0 15px;
	background: #fff;
}



/* 各種パーツ - ロゴ
--------------------------------------------------------------- */

.ic_logo{
	background-position:left center;
	background-size:30px auto;
	background-repeat:no-repeat;
	padding-left:40px;
}

.ic_logo.s_kaihatsu{background-image:url(../img/common/mark_kaihatsu.png);}
.ic_logo.s_eco{background-image:url(../img/common/mark_eco.png);}
.ic_logo.s_line{background-image:url(../img/common/mark_line.png);}


/* 各種パーツ - リンクボタン
--------------------------------------------------------------- */

.btn_type1{
	position:relative;
	display:block;
	text-align:center;
	border:2px solid #888;
	border-radius:5px;
	line-height:1;
	padding:25px;
	font-weight:bold;
	text-decoration:none;
}

.btn_type1:after{
	content:"";
	display:block;
	position:absolute;
	right:25px;
	top:0;
	bottom:0;
	margin:auto;
	width:8px;
	height:8px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}

.btn_type1.style_return{
	box-sizing:border-box;
	width:320px;
	margin:0 auto;
	color:#33A757;
}

.btn_type1.style_return:after{
	transform: rotate(-135deg);
	right:auto;
	left:100px;
}

.btn_type1.style_return:hover{
	opacity:1;
	background-color:#C6ECD2;
	color:#33A757;
}

.btn_type1.style_return:hover:after{
	border-color:#33A757;
}

.btn_type1:hover{
	opacity:1;
	background-color:#888;
	color:#FFF;
}

.btn_type1:hover:after{
	border-color:#FFF;	
}

.blanklink{
	padding-right:20px;
	background:url(../img/common/ic_blank.png) right center / 16px auto no-repeat;
}


.btn_type2{
	position:relative;
	display:block;
	text-align:center;
	border:2px solid #888;
	border-radius:5px;
	background:#FFF;
	line-height:1;
	padding:18px;
	font-weight:bold;
	font-size:18px;
	text-decoration:none;
}

.btn_type2:after{
	content:"";
	display:block;
	position:absolute;
	right:25px;
	top:0;
	bottom:0;
	margin:auto;
	width:8px;
	height:8px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}

.btn_type2:hover{
	opacity:1;
	background-color:#ccc;
}


/* 各種パーツ - リスト
--------------------------------------------------------------- */

.dl_type1{
	text-align:center;
}

.dl_type1 > dt{
	position:relative;
	font-size:24px;
	font-weight:bold;
	margin:1.5em 0 1em;
}

.dl_type1 > dt span{
	position:relative;
	display:inline-block;
}

.dl_type1 > dt span:before{
	content:"";
	position:absolute;
	left:-100px;
	top:0;
	bottom:0;
	margin:auto;	
	width:80px;
	height:2px;
	background:#00834B;
}

.dl_type1 > dt span:after{
	content:"";
	position:absolute;
	right:-100px;
	top:0;
	bottom:0;
	margin:auto;
	width:80px;
	height:2px;
	background:#00834B;
}

.dl_type2 dt{
	color:#00834B;
}

.style_disc dd:before,
.style_disc li:before{
	content:"・";
}

.flex_wrap{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}


/* 各種パーツ - 矢印
--------------------------------------------------------------- */

.bg_arrow_r:after{
	content:"";
	display:block;
	position:absolute;
	right:25px;
	top:0;
	bottom:0;
	margin:auto;
	width:8px;
	height:8px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}

.bg_arrow_r:hover:after{
	border-color:#fff;
}


/* 固定メニュー用 アンカー位置調整
--------------------------------------------------------------- */

.anchor_block{
    margin-top:-108px;
    padding-top:108px;
}

