@charset "utf-8";
/* ============================================================ */
/* header */
/* ============================================================ */
header {
	margin: 0 0 20px;
}

header #header_inner {
	max-width: 980px;
	margin: 0 auto;
	padding: 20px 0 15px;
	overflow: hidden;
	display: -webkit-flex;
	display: flex;
}


/* #logo
------------------------------------------------------------ */
header #logo {
	margin: 10px 0 0;
	width: 300px;
}


/* #hnavi
------------------------------------------------------------ */
header #hnavi {
	font-size: 1.2rem;
	width: 700px;
	height: 66px;
	position: relative;
}

header #hnavi .btn {
	width: 133px;
	display: block;
	font-size: 1.4rem;
	margin: 0 0 0 15px;
}

header #hnavi #header_search {
	/*width: 580px;*/
}

header #hnavi #header_search nav {
	position: absolute;
	right: 0;
	top: 0;
}

header #hnavi #header_search nav ul {
	display: -webkit-flex;
	display: flex;
}

header #hnavi #header_search nav ul li {
	margin: 0 30px 0 0;
}

header #hnavi #header_search nav ul li:last-of-type {
	margin: 0;
}

header #hnavi #header_search nav ul li a {
	color: #333;
}

header #hnavi #header_search nav ul li a i {
	color: #107609;
}


/* #header_search #box_search */

header #hnavi #header_search > div {
	position: absolute;
	right: 0;
	bottom: 0;
	display: -webkit-flex;
	display: flex;
}

#header_search #box_search {
	float: left !important;
	display: inline-block !important;
	font-size: 0 !important;
	white-space: nowrap !important;
	vertical-align: middle !important;
	width: 300px !important;
	background: #eaeae4;
	border: 1px solid #e0e0d8 !important;
	padding: 5px;
	box-sizing: border-box;
	margin: 0 0 0 90px;
}

#header_search #box_search .gsc-branding {
	display: none;
}

#header_search #box_search .gsc-search-box ,
#header_search #box_search .gsc-search-box table {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

#header_search #box_search .gsc-search-box tbody ,
#header_search #box_search .gsc-search-box td {
	padding: 0 !important;
	border: none !important;
	background: none !important;
}

#header_search #box_search .gsc-search-box .gsc-input-box {
	padding: 0 !important;
	border: none !important;
	background: #fff !important;
}

#header_search #box_search .gsc-search-box .gsc-input-box #gsc-i-id2 {
	position: relative!important;
	margin-bottom: 0!important;
	*margin-left: 0!important;
	vertical-align: top!important;
	width: 214px!important;
	height: 25px!important;
	padding: 0 2px!important;
	background: #fff!important;
	border: none!important;
	-webkit-appearance:none!important;
	border-radius: 0!important;
	margin: 0 !important;
	font-size: 1.1rem!important;
	line-height: 1.4;!important;
	box-sizing: border-box!important;
}

#header_search #box_search .gsc-search-box table td.gsc-input ,
#header_search #box_search .gsc-search-box table #gs_id51 {
	width: 250px!important;
	height: 25px!important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: #fff !important;
}

#header_search #box_search .gsc-search-box #gsc-iw-id2 ,
#header_search #box_search .gsc-search-box .gsc-input-box ,
#header_search #box_search .gsc-search-box .gsc-input {
	margin: 0 !important;
	padding: 0 !important;
	width: 250px!important;
	height: 25px!important;
	overflow: hidden !important;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
	#header_search #box_search .gsc-search-box .gsc-input {
		border-radius: 0!important;
	}
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
	#header_search #box_search .gsc-search-box .gsc-input {
		border-radius: 0!important;
	}
}

#header_search #box_search .gsc-search-box .gsc-search-button {
	padding: 0 !important;
	margin: 0 !important;
}

#header_search #box_search .gsc-search-box .gsc-search-button input[type="image"] {
	padding: 12px 6px 11px 7px !important;
	border: 1px solid #fff !important;
	border-left: none !important;
	/*background: #fa80aa !important;*/
    border-radius: 0!important;
	background: url(/common/img/common/bg_btn_search.png) 5px 5px no-repeat #fff !important;
	width: 0  !important;
	height: 0  !important;
}

/*:root #header_search #box_search .gsc-search-box .gsc-search-button input[type="image"] {
	width: 13px\0/  !important;
	height: 13px\0/  !important;
	padding: 5px 6px 5px 7px\0/ !important;
}*/

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
	#header_search #box_search .gsc-search-box .gsc-search-button input[type="image"] {
		margin: -2.5px 0 0 !important;
		padding: 20px 6px 9px 7px !important;
	}
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
	#header_search #box_search .gsc-search-box .gsc-search-button input[type="image"] {
		margin: -2.5px 0 0 !important;
		padding: 16px 6px 7px 7px !important;
	}
}



/* ============================================================ */
/* #gnavi */
/* ============================================================ */
#gnavi {
	background: url(/common/img/common/bg_gnavi.png) 0 0 repeat-x;
}

#gnavi > ul {
	max-width: 980px;
	margin: 0 auto;
	position: relative;
}

#gnavi > ul::after {
    display: block;
    content: "";
    clear: both;
}

#gnavi > ul > li {
	float: left;
}

#gnavi > ul > li > p > a {
	padding: 60px 0 0 0;
	width: 140px;
	height: 0;
	display: block;
	overflow: hidden;
}

#gnavi > ul > .gnavi_top > p > a {
	background: url(/common/img/common/gnavi_top.png) 0 0 no-repeat;
	width: 95px;
}

#gnavi > ul > .gnavi_top > p > a:hover {
	background: url(/common/img/common/gnavi_top_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_npo > p > a {
	background: url(/common/img/common/gnavi_npo.png) 0 0 no-repeat;
}

.npo #gnavi > ul > .gnavi_npo > p > a ,
#gnavi > ul > .gnavi_npo > p > a:hover {
	background: url(/common/img/common/gnavi_npo_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_organization > p > a {
	background: url(/common/img/common/gnavi_organization.png) 0 0 no-repeat;
	width: 180px;
}

.organization #gnavi > ul > .gnavi_organization > p > a ,
#gnavi > ul > .gnavi_organization > p > a:hover {
	background: url(/common/img/common/gnavi_organization_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_newbie > p > a {
	background: url(/common/img/common/gnavi_newbie.png) 0 0 no-repeat;
	width: 130px;
}

.newbie #gnavi > ul > .gnavi_newbie > p > a ,
#gnavi > ul > .gnavi_newbie > p > a:hover {
	background: url(/common/img/common/gnavi_newbie_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_find > p > a {
	background: url(/common/img/common/gnavi_find.png) 0 0 no-repeat;
	width: 165px;
}

.instructor #gnavi > ul > .gnavi_find > p > a ,
#gnavi > ul > .gnavi_find > p > a:hover {
	background: url(/common/img/common/gnavi_find_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_active > p > a {
	background: url(/common/img/common/gnavi_active.png) 0 0 no-repeat;
}

.active #gnavi > ul > .gnavi_active > p > a ,
#gnavi > ul > .gnavi_active > p > a:hover {
	background: url(/common/img/common/gnavi_active_on.png) 0 0 no-repeat;
}

#gnavi > ul > .gnavi_shop > p > a {
	background: url(/common/img/common/gnavi_shop.png) 0 0 no-repeat;
	width: 130px;
}

.shop #gnavi > ul > .gnavi_shop > p > a,
#gnavi > ul > .gnavi_shop > p > a:hover {
	background: url(/common/img/common/gnavi_shop_on.png) 0 0 no-repeat;
}


#gnavi > ul > li > .sub {
	display: none;
	position: absolute;
	top: 60px;
	/*left: 0;*/
	background: #36891a;
	z-index: 9999;
	width: 240px;
	overflow: hidden;
	padding: 15px;
}

#gnavi > ul > li > .sub > li {
	padding: 0;
	margin: 0;
	/*float: left;*/
	width: 240px;
}

#gnavi > ul > li > .sub > li > a {
	padding: 10px 14px;
	background: #eaeae4;
	border: 1px solid #bcbcb6;
	border-right: none;
	border-bottom: none;
	display: block;
	/*width: 201px;*/
	font-size: 1.4rem;
	color: #333;
}

#gnavi > ul > li > .sub > li:nth-child(4n) > a {
	border-right: 1px solid #bcbcb6;
	/*width: 200px;*/
}

#gnavi > ul > li > .sub > li > a i {
	color: #2e9708;
}
