﻿﻿@charset "utf-8";

html{
	overflow-y: scroll;
}

img{
	border:0px;
	max-width:100%;
}

body{
	margin:0px;
	font-family:meiryo, 'メイリオ', verdana, helvetica, georgia, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kakugothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
}

*{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

.clearfix:after{
	display:block;
	content:"";
	clear:both;
}

a{
	text-decoration:none;
}

/*------------------------*/
/* header                 */
/*------------------------*/
#header{
	position:relative;
	padding:10px;
	background:#ffffff;
	width:100%;
	height:80px;
}
#header #header-wrap{
	position:relative;
	margin:0px auto 0px auto;
	width: 100%;
    display: flex;
    justify-content: center;
}
.logo-img{
    width: 330px;
}
@media screen and (max-width: 780px){
#header #header-wrap{
	display: flex;
	justify-content: space-between;
	width:100%;
}
.logo-img{
    width: 250px;
}
}

#header #header-wrap #hlogo{
	/* float:left;
	width:220px; */
	display: flex;
    align-items: center;
}
@media screen and (max-width: 780px){
#header #header-wrap #hlogo{
	max-width:65%;
}
}

#header #header-wrap #gnavi{
	/* float:left; */
	margin-top:34px;
	font-size:16px;
	margin-left: 25px;
	margin-right: 25px;
	/* width:590px; */
}
#header #header-wrap #gnavi-sp{
	display:none;
}
@media screen and (max-width: 780px){
#header #header-wrap #gnavi{
	display:none;
}
#header #header-wrap #gnavi-sp{
	/* float:right; */
	display:block;
	/* margin-top:26px; */
	margin-left:10px;
	width:34px;
	height:34px;
}
}

#header #header-wrap #gnavi ul{
	margin:0px;
	padding:0px;
	list-style-type:none;
	text-align:center;
}
#header #header-wrap #gnavi ul li{
	display:inline-block;
	margin-right:30px;
	margin-top: 5px;
	margin-bottom: 5px;
	border-style:solid;
	border-width:0px 0px 3px 0px;
	border-color:#ffffff #ffffff #6baf3c #ffffff;
}

#header #header-wrap #gnavi ul li a{
	color:#000000;
	border-style:solid;
	border-width:0px 0px 3px 0px;
	border-color:#ffffff #ffffff #ffffff #ffffff;
}
#header #header-wrap #gnavi ul li:last-child{
	margin-right:0px;
}


#header #header-wrap #phone{
	display: flex;
	align-items: center;
	margin-top:26px;
	/* float:right; */
	/* width:170px; */
}
@media screen and (max-width: 780px){
#header #header-wrap #phone{
	/* width:34px; */
}
}

#header #header-wrap #phone-wrap{
	display: flex;
	position:relative;
	/* width:100%; */
}

#phone-wrap #mark{
	width:34px;
	height:34px;
}
#phone-wrap #number{
	/* float:left; */
	color:#6baf3c;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	line-height:30px;
	/*width:136px;*/
	height:34px;
	border-style:solid;
	border-width:2px 2px 2px 0px;
	border-color:#6baf3c #6baf3c #6baf3c #6baf3c;
}
@media screen and (max-width: 780px){
#phone-wrap #number{
	display:none;
}
}

#header #sp-navi-wrap{
	position:absolute;
	background:#6baf3c;
	width:100%;
	top:80px;
	left:0px;
	z-index:10;
}
#header #sp-navi-wrap ul{
	position:relative;
	float:left;
	margin:0px;
	padding:0px;
	list-style-type:none;
	width:100%;
}
#header #sp-navi-wrap ul li{
	position:relative;
	float:left;
	margin:0px;
	font-size:18px;
	line-height:40px;
	width:100%;
	height:40px;
	border-style:solid;
	border-width:0px 0px 1px 0px;
	border-color:#ffffff #ffffff #ffffff #ffffff;
}
#header #sp-navi-wrap ul li.close{
	text-align:right;
}
#header #sp-navi-wrap ul li a{
	padding-left:10px;
	padding-right:10px;
	display:block;
	color:#ffffff;
}

/*------------------------*/
/* footer                 */
/*------------------------*/
#footer{
	position:relative;
	margin-top:30px;
	background: #c7c7c7;
	color:#e0f0db;
	width:100%;
}
#footer a{
	color:#e0f0db;
}

#footer .footer-wrap{
	position:relative;
	margin:50px auto 0px auto;
	padding-top:30px;
	padding-bottom:40px;
	width:980px;
}
@media screen and (max-width: 780px){
#footer .footer-wrap{
	margin:0px auto 0px auto;
	padding-bottom:10px;
	width:96%;
}
}

#footer .footer-wrap ul{
	position:relative;
	float:left;
	margin:0px;
	padding:0px;
	list-style-type:none;
	width:100%;
}
#footer .footer-wrap ul li{
	position:relative;
	float:left;
	padding:0px;
	width:280px;
}
#footer .footer-wrap ul li:nth-child(-n+2){
	margin-right:70px;
}
@media screen and (max-width: 780px){
#footer .footer-wrap ul li{
	width:100%;
	text-align:center;
}
#footer .footer-wrap ul li:nth-child(-n+2){
	margin-right:0px;
}
}

#footer .footer-wrap .f-desc{
	font-size:16px;
	line-height:16px;
}
#footer .footer-wrap .f-company{
	font-size:22px;
	font-weight:bold;
}

#footer .footer-wrap .f-navi{
	margin-top:30px;
	text-indent:5px;
	font-size:16px;
	width:100%;
	border-style:solid;
	border-width:0px 0px 1px 0px;
	border-color:#ffffff #ffffff #e0f0db #ffffff;
}

#footer .footer-wrap .f-menu{
	margin-top:5px;
	font-size:14px;
	/*text-indent:2em;*/
}

@media screen and (max-width: 780px){
#footer .footer-wrap .fnavi{
	display:none;
}
}

#footer .footer-wrap .copyright{
	margin-top:40px;
	font-size:12px;
	letter-spacint:1px;
	text-align:center;
}
@media screen and (max-width: 780px){
#footer .footer-wrap .copyright{
	margin-top:0px;
	font-size:10px;
}
}

/*------------------------*/
/* page top               */
/*------------------------*/
#pagetop{
	position:fixed;
	right:20px;
	bottom:10px;
	z-index:9999;
	width:64px;
	height:64px;
}
@media screen and (max-width: 780px){
#pagetop{
	right:10px;
	width:44px;
	height:44px;
}
}

/*------------------------*/
/* pankuzu                */
/*------------------------*/
#pankuzu{
	position:relative;
	background:#efefef;
	color:#000000;
	font-size:14px;
	width:100%;
}
#pankuzu a{
	color:#6baf3c;
}
#pankuzu a:hover{
	color:#999999;
	text-decoration:underline;
}
#pankuzu #pankuzu-wrap{
	position:relative;
	margin:0px auto 0px auto;
	padding-top:5px;
	padding-bottom:5px;
	text-align:right;
	width:980px;
}
@media screen and (max-width: 780px){
#pankuzu{
	display:none;
}
}

/*------------------------*/
/* page title             */
/*------------------------*/
.page-title{
	position:relative;
	margin:20px auto 0px auto;
	color:#3a8c3a;
	font-size:30px;
	font-weight:bold;
	letter-spacing:2px;
	width:980px;
}
@media screen and (max-width: 780px){
.page-title{
	position:relative;
	margin:20px auto 0px auto;
	font-size:24px;
	letter-spacing:1px;
	width:96%;
}
}

/*------------------------*/
/* button                 */
/*------------------------*/
.button-right-wrap{
	float:right;
	margin-top:30px;
}
.green-line-button a{
	background:#ffffff;
	display:block;
	color:#6baf3c;
	font-size:20px;
	font-weight:bold;
	line-height:34px;
	letter-spacing:2px;
	text-align:center;
	text-decoration:none;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	-ms-border-radius:10px;
	-o-border-radius:10px;
	border-radius:10px;
	/*width:210px;*/
	height:40px;
	border-style:solid;
	border-width:3px 3px 3px 3px;
	border-color:#6baf3c #6baf3c #6baf3c #6baf3c;
}

/*------------------------*/
/* others                 */
/*------------------------*/
.mt20{
	margin-top:20px;
}

/*------------------------*/
/* language selector      */
/*------------------------*/
.lang-selector {
	margin-left: 10px;
	position: relative;
	cursor: pointer;
}

.lang-current {
	padding-top: 6px;
    padding-bottom: 6px;
	display: inline-block;
	color: #ffffff;
	background: #6baf3c;
	border: none; 
	border-radius: 4px; 
	cursor: pointer; 
	transition: background 0.3s;
	min-width: 91px;
}

.lang-arrow {
	font-size: 10px;
	margin-left: 3px;
}

.lang-dropdown {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	background: #ffffff;
	margin: 0;
	padding: 0;
	list-style-type: none;
	border: 1px solid #e0e0e0;
	box-shadow: 0 2px 5px rgba(0,0,0,0.1);
	z-index: 1000;
	min-width: 120px;
}

.lang-selector:hover .lang-dropdown {
	display: block;
}

.lang-dropdown li {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	float: none !important;
	line-height: normal !important;
}

.lang-dropdown li a {
	display: block;
	padding: 10px 15px;
	color: #000000;
	font-size: 14px;
	text-align: left;
	border: none !important;
}

.lang-dropdown li a:hover {
	background: #f5f5f5;
}

.lang-dropdown li a.active,
.li-lang-is-show a.active {
	background: #295f12;
	font-weight: bold;
	color: #6baf3c;
	border-left: 3px solid #6baf3c !important;
}

.sp-lang-title {
	background: #5a9e2b;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 780px) {
	.lang-selector {
		display: none;
	}
}

/* 语言选择器增强样式 */
.lang-icon {
	margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
}

.lang-text {
    display: inline-block;
    vertical-align: middle;
}

.lang-dropdown button {
    display: block;
    width: 100%;
    padding: 10px 15px;
    color: #000000;
    font-size: 14px;
    text-align: left;
    border: none;
    background: none;
    cursor: pointer;
}

.lang-dropdown button:hover {
    background: #f5f5f5;
}

.li-lang-is-show{
	display: none;
}
