/* ===================================================================
CSS
 file name  :  common.css
=================================================================== */
a.button{
	display:block;
	margin: auto;
	text-decoration:none;
	text-align:center;
	position: relative;
	line-height: 280%;
	box-sizing: border-box;
	-webkit-transition: all .5s;
	transition: all .5s;
}
a.button:after {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight : 900;
	padding-left:7px;
}
a.button.white {
	background-color: #FFF;
	border: 1px solid #FFF;
	color: #268300;
}
a.button.white:hover{
	background-color: #268300;
	border-color: #FFF;
	color: #FFF;
}
a.button.white_out {
	border: 1px solid #FFF;
	color: #FFF;
}
a.button.white_out:hover {
	background-color: #FFF;
	border: 1px solid #FFF;
	color: #268300;;
}
a.button.color {
	background-color: #268300;
	border: 1px solid #268300;
	color: #FFF;
}
a.button.color:hover {
	background-color: #FFF;
	border-color: #268300;
	color: #268300;
}
a.button.color_out {
	background-color: none;
	border: 1px solid #268300;
	color: #268300;
}
a.button.color_out:hover {
	background-color: #268300;
	color: #FFF;
}
.txt_c{
	text-align: center;
}
.attention{
	color:#D90000;
}
@media print, screen and (min-width: 641px) {
/* PC用のスタイル記述 */
	.pc{
		display:none;
	}
	/* =====================================
	ヘッダー
	======================================== */
	#header{
		width:100%;
		background: #FFF;
		border-bottom: 1px solid #268300;
		z-index: 50;
	}
	#header #header_wrap{
		border-bottom: 1px solid #CCC;
	}
	#header #header_wrap #mobile-head{
		width:1080px;
		margin:0 auto;
		padding:0 40px;
		height: 80px;
		box-sizing: border-box;
		position: relative;
	}
	#header #header_wrap #mobile-head h1 {
		width:274px;
		position: absolute;
		top:11px;
		left: 40px;
	}
	#header #header_wrap #mobile-head #tel{
		width:260px;
		position: absolute;
		top:18px;
		right: 40px;
	}
	#global-nav{
		padding: 0 40px;
	}
	#global-nav ul{
		width:1000px;
		margin:0 auto;
		height: 80px;
		padding-top: 10px;
		box-sizing: border-box;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#global-nav ul li{
		display: block;
		width: 16.666%
	}
	#global-nav ul li a{
		position: relative;
		color: #333;
		font-size: 90%;
		font-weight: bold;
		display: flex;
		justify-content: center;/*左右中央揃え*/
		align-items: center;	/*上下中央揃え*/
		flex-direction: column;	/*子要素の並ぶ向き*/
		text-decoration: none;
		text-align: center;
		width: 100%;
		height: 60px;
		box-sizing: border-box;
		border-left: 1px solid #CCC;
	}
	#global-nav ul li:last-child a{
		border-right: 1px solid #CCC;
	}
	#global-nav ul li a span{
		display: block;
		color: #268300;
		font-size: 12px;
		font-weight: normal;
	}
	#global-nav ul li a::after {
		position: absolute;
		bottom: -10px;
		left: 0;
		content: '';
		width: 100%;
		height: 2px;
		background: #268300;
		transform: scale(0, 1);
		transform-origin: center top;
		transition: transform .3s;
	}
	#global-nav ul li a:hover::after {
		transform: scale(1, 1);
	}
/* =====================================
パンくず
======================================== */
	#breadcrumb{
		width:1080px;
		padding: 15px 40px 0 40px;
		margin:auto;
		box-sizing: border-box;
		font-size:12px;
	}
	#breadcrumb div{
		display:inline;
		color: #666666;
	}
	#breadcrumb div:after{
		padding-left:10px;
		content: '>';
	}
	#breadcrumb div:last-child:after{
		content: '';
	}
	#breadcrumb a{
		text-decoration:none;
	}
	#breadcrumb a:hover{
		text-decoration:underline;
	}
/* =====================================
コンテンツ
======================================== */
	.title_wrap{
		width:100%;
		margin:0;
		background-position: center center;
		background-size: cover;
		box-sizing:border-box;
	}
	h2.title{
		width:1080px;
		margin:auto;
		padding:110px 40px;
		box-sizing: border-box;
		color:#FFF;
		font-size:30px;
		line-height:1;
		text-align:left;
		text-shadow: 1px 1px 1px #000;
		font-weight: bold;
	}
	.container{
		width:1080px;
		margin:50px auto auto;
		padding:0 40px;
		box-sizing: border-box;
	}
	h3.lead{
		color:#268300;
		font-size:26px;
		margin-top: 50px;
	}
	h3.sub_title{
		color:#268300;
		background: #E8F2EF;
		font-size:24px;
		border-bottom: 1px solid #268300;
		padding: 8px 30px;
		margin-top: 50px;
	}
	.container p{
		margin-top: 20px;
	}
/* =====================================
問い合わせバナー
======================================== */
	.bn_contact{
		margin-top: 50px;
		display: flex;
	}
	.bn_contact .text{
		width: 500px;
		background: #268300;
		padding-top: 23px;
		box-sizing: border-box;
		text-align: center;
		color: #FFF;
		font-size:20px; 
	}
	.bn_contact .text .button{
		font-size:16px;
		width: 320px;
		margin-top: 15px
	}
/* =====================================
ページトップ
======================================== */
	#pagetop {
	    display: none;
		position: fixed;
		bottom: 10px;
		right: 10px;
		z-index:1000;
	}
	#pagetop a{
		color: #FFFFFF;
		font-size: 180%;
		padding: 10px;
		line-height: 1;
		display: inline-block;
		background: #268300;
		border-radius: 50px;
		border: 1px solid #F5F3F0;
	}
/* =====================================
フッター
======================================== */
	#footer{
		width:100%;
		margin-top:70px;
		border-top: 1px solid #268300;
	}
	#footer #footer_navi_wrap{
		width:1080px;
		margin:0 auto;
		padding: 40px;
		box-sizing: border-box;
		display: flex;
		flex-direction: row-reverse;
	}
	#footer #footer_navi_wrap #footer_info{
		border-right: 1px solid #268300;
		border-left: 1px solid #268300;
		width: 400px;
		height: 160px;
		padding-top: 10px;
		font-size: 12px;
		display: flex;
	}
	#footer #footer_navi_wrap #footer_info #footer_logo{
		width: 190px;
		box-sizing: border-box;
		text-align: center;
	}
	#footer #footer_navi_wrap #footer_info #footer_company{
		width: 200px;
		box-sizing: border-box;
	}
	#footer #footer_navi_wrap #footer_info #footer_company #name{
		font-weight: bold;
		font-size: 14px;
	}
	#footer #footer_navi_wrap #footer_info #footer_company #address{
		line-height: 180%;
		margin-top: 10px
	}
	#footer #footer_navi_wrap #footer_navi_area{
		border-right: 1px solid #268300;
		width: 600px;
		height: 160px;
		padding-left:50px;
		box-sizing: border-box;
		font-size: 12px;
	}
	#footer #footer_navi_wrap #footer_navi_area #nav_title{
		color: #268300;
		font-weight: bold;
		margin-bottom: 5px;
	}
	#footer #footer_navi_wrap #footer_navi{
		display: flex;
	}
	#footer #footer_navi_wrap #footer_navi #nav_title{
		width: 100%;
	}
	#footer #footer_navi_wrap #footer_navi ul{
		width: 280px;
		padding-right: 20px;
		box-sizing: border-box;
	}
	#footer #footer_navi_wrap #footer_navi ul li{
		margin-bottom: 3px;
	}
	#footer #footer_navi_wrap #footer_navi li a{
		color: #333;
		text-decoration:none;
	}
	#footer #footer_navi_wrap #footer_navi li a:before{
		content: "\f105";
		font-family: "Font Awesome 5 Free";
		font-weight : 900;
		padding-right:7px;
		color: #268300;
	}
	#footer #footer_navi_wrap #footer_navi li a:hover{
		color: #268300;
	}
	#footer #copy{
		width:100%;
		margin:0 auto;
		padding: 20px 0px;
		box-sizing: border-box;
		text-align: center;
		font-size:12px;
		background: #268300;
		color: #FFFFFF;
	}
}
@media screen and (max-width: 640px) {
/* スマートフォン用のスタイル記述 */
	body{
		font-size:75%;
	}
	img{
		max-width:100%;
		height:auto;
		width:auto;
	}
	.sp{
		display:none;
	}
	/* =====================================
	ヘッダー
	======================================== */
	#header{
		width:100%;
		position: fixed;
		z-index: 150;
	}
	#header #header_wrap{
		margin:0 auto;
		box-sizing: border-box;
	}
	#header #header_wrap #mobile-head{
		width:100%;
		height: 50px;
		background: #FFF;
		box-shadow: 0 3px 5px -3px rgba(0,0,0,0.3);
		display: flex;
		position: relative;
	}
	#header #header_wrap #mobile-head h1 {
		width: 35%;
		padding: 0 10px;
		align-self: center;
	}
	#header #header_wrap #mobile-head #tel{
		width: 35%;
		padding: 0 10px 0 20px;
		align-self: center;
	}
	/* Toggle Button */
	#nav-toggle {
		position: absolute;
		right: 15px;
		top: 12px;
		width: 30px;
		height: 36px;
		cursor: pointer;
		z-index: 200;
	}
	#nav-toggle div {
		position: relative;
	}
	#nav-toggle span {
		display: block;
		position: absolute;
		height: 3px;
		width: 100%;
		background: #268300;
		left: 0;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}
	#nav-toggle span:nth-child(1) {
		top: 0;
	}
	#nav-toggle span:nth-child(2) {
		top: 11px;
	}
	#nav-toggle span:nth-child(3) {
		top: 22px;
	}
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #268300;
        width: 100%;
        text-align: center;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
		position: static;
		right: 0;
		bottom: 0;
    }
    #global-nav ul li {
		border-bottom: 1px solid #B9CEB1;
    }
    #global-nav ul li a{
        width: 100%;
        display: block;
        color: #fff;
        padding: 15px 10px;
		box-sizing: border-box;
		text-decoration: none;
		font-size: 120%;
    }
    #global-nav ul li a span{
		color: #ccc;
		font-size: 80%;
		margin-left: 10px;
    }
    #nav-toggle {
        display: block;
    }
	/* #nav-toggle 切り替えアニメーション */
	.open #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}
	/* #global-nav スライドアニメーション */
	.open #global-nav {
		-moz-transform: translateY(550px);
		-webkit-transform: translateY(550px);
		transform: translateY(550px);
	}
/* =====================================
コンテナ ヘッダー分下げる
======================================== */
	#container_wrap{
		padding-top: 50px;
		position: relative;
	}
/* =====================================
パンくず
======================================== */
	#breadcrumb{
		font-size:80%;
		margin: 5px 20px auto 20px;
	}
	#breadcrumb div{
		display:inline;
		color: #666;
	}
	#breadcrumb div:after{
		padding-left:5px;
		content: '>';
	}
	#breadcrumb div:last-child:after{
		content: '';
	}
	#breadcrumb a{
		text-decoration:none;
	}
	#breadcrumb a:hover{
		text-decoration:underline;
	}
/* =====================================
コンテンツ
======================================== */
	.title_wrap{
		width:100%;
		margin:0;
		background-position: center center;
		background-size: cover;
		box-sizing:border-box;
	}
	h2.title{
		color:#FFF;
		padding:50px 20px;
		text-shadow: 1px 1px 1px #000;
		font-size:120%;
		line-height:1;
		text-align:left;
		font-weight:bold;
	}
	.container{
		width: 100%;
		padding:0 20px 20px;
		box-sizing: border-box;
	}
	h3.lead{
		color:#268300;
		font-size:120%;
		margin-top: 20px;
	}
	h3.sub_title{
		color:#268300;
		background: #E8F2EF;
		font-weight: bold;
		border-bottom: 1px solid #268300;
		padding: 8px 20px;
		margin-top: 20px;
	}
	.container p{
		margin-top: 10px;
	}
/* =====================================
問い合わせバナー
======================================== */
	.bn_contact{
		margin-top: 20px;
	}
	.bn_contact .img img{
		width: 100%;
		height: auto;
	}
	.bn_contact .text{
		background: #268300;
		padding: 20px;
		box-sizing: border-box;
		text-align: center;
		color: #FFF;
		font-size: 120%;
	}
	.bn_contact .text .button{
		margin-top: 10px
	}
/* =====================================
ページトップ
======================================== */
	#pagetop {
	    display: none;
		position: fixed;
		bottom: 10px;
		right: 10px;
		z-index:1000;
	}
	#pagetop a{
		color: #FFFFFF;
		font-size: 180%;
		padding: 10px;
		line-height: 1;
		display: inline-block;
		background: #268300;
		border-radius: 50px;
		border: 1px solid #F5F3F0;
	}
/* =====================================
フッター
======================================== */
	#footer{
		width:100%;
	}
	#footer #footer_navi_wrap{
		margin:0 auto;
		box-sizing: border-box;
	}
	#footer #footer_navi_wrap #footer_info{
		box-sizing: border-box;
		padding: 20px;
		text-align: center;
	}
	#footer #footer_navi_wrap #footer_info #footer_company{
		margin-top: 10px;
	}
	#footer #footer_navi_wrap #footer_info #footer_company #name{
		font-weight: bold;
		font-size: 120%;
	}
	#footer #footer_navi_wrap #footer_info #footer_company #address{
		line-height: 180%;
		margin-top: 10px
	}
	#footer #footer_navi_wrap #footer_navi_area{
		margin-top: 15px;
		border-top: 1px solid #268300;
	}
	#footer #footer_navi_wrap #footer_navi_area #nav_title{
		padding: 15px 20px;
		color: #268300;
		font-weight: bold;
	}
	#footer #footer_navi_wrap #footer_navi_area #footer_navi ul{
		background: #F0F0F0;
	}
	#footer #footer_navi_wrap #footer_navi ul li{
		display: block;
		box-sizing: border-box;
		border-bottom: 1px solid #B9CEB1;
	}
	#footer #footer_navi_wrap #footer_navi li a{
		color:#333;
		text-decoration:none;
		display: block;
		padding: 15px 20px;
	}
	#footer #footer_navi_wrap #footer_navi li a:before{
		content: "\f105";
		font-family: "Font Awesome 5 Free";
		font-weight : 900;
		padding-right:7px;
		color: #268300;;
	}
	#footer #copy{
		width:100%;
		margin:0;
		padding:10px;
		background: #268300;
		color: #FFF;
		box-sizing: border-box;
		text-align: center;
		font-size:80%
	}
}