@charset "UTF-8";


body {
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}

/* ---------------------------------------------------------------------------

	スマホ（ブラウザの横幅が指定したpx以下の時に適用されます）

--------------------------------------------------------------------------- */
@keyframes fadeIn {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}


@media screen and (max-width : 959px) {


	/**{overflow:hidden;} /*スマホで閲覧した時にグラグラしなくなる*/





	/* [sp] header headerType02
----------------------------------------------------------*/
	/* [sp] logo */
	/*
#logo {
	padding-right:4%;
	width:60%;
}
#logo img {
	width:100%;
}*/
	/* box01 */
	.box01 {
		display: none;
	}

	/* [sp] gNavi */
	.sp {
		display: block;
	}

	/* [sp] Menu */
	#menuBtn {
		top: 0;
		width: 50px;
		z-index: 9999;
		position: absolute;
	}

	.Wrapper {
		position: relative;
		width: 100%;
		transition: all .4s;
	}


	#menuBtn input.check {
		width: 50px;
		height: 50px;
		position: absolute;
		z-index: 0;
		transition: all .4s;
		display: none;
	}

	.check {
		width: 50px;
	}


	#menuBtn input {
		display: block;
		transition: all .4s;
	}

	.menuBox {
		height: 50px;
		width: 50px;
		z-index: 9999;
		position: relative;
		right: 0px;
		/*	background:#FFF;*/
	}

	.Trigger {
		height: 50px;
		width: 50px;
		z-index: 9999;
		position: fixed;
		right: 0px;
	}

	.menuBox input.check:checked {
		top: 25px;
	}


	.menuTrigger,
	.menuTrigger span {
		display: inline-block;
		box-sizing: border-box;
	}

	.menuTrigger {
		margin-left: 10px;
		position: relative;
		width: 30px;
		height: 40px;
	}

	.menuTrigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: #fff;
		border-radius: 4px;
	}

	.menuTrigger span:nth-of-type(1) {
		top: 12px;
	}

	.menuTrigger span:nth-of-type(2) {
		top: 22px;
	}

	.menuTrigger span:nth-of-type(3) {
		bottom: 4px;
	}


	#SPgNavi {
		display: none;
		opacity: 0.0;
		width: 100%;
		position: relative;
		z-index: 9999;
	}

	#SPgNavi label:after {
		position: absolute;
		right: 1em;
		content: "+";
	}

	/* サブナビがない場合「＋」を非表示 */
	#SPgNavi label.iconNone:after {
		display: none;
	}

	#SPgNavi label.Nosmenu:after {
		position: absolute;
		right: 1em;
		content: "";
	}


	#menuBtn input:checked~#SPgNavi {
		display: block;
		padding-top: 0;
		background: rgba(0, 0, 0, 0.8);
		opacity: 1;
		animation: fadeIn 0.5s ease 0s 1 normal;
		-webkit-animation: fadeIn 0.5s ease 0s 1 normal;
		position: fixed;
		left: 0px;
		top: 50px;
		padding: 4%;
		width: 100%;
		box-sizing: border-box;
	}

	/* [sp] MenuList */
	#SPgNavi label {
		background: #115fad;
		color: #fff;
		display: block;
		margin: 0;
		border-top: 1px solid #fff;
		z-index: 9999;
		padding: 10px 10px;
	}

	#SPgNavi label:last-child {
		border-bottom: 1px solid #fff;
	}

	#SPgNavi a {
		display: block;
		text-decoration: none;
		box-sizing: border-box;
	}

	#SPgNavi input[type="checkbox"].on-off {
		display: none;
	}



	/* メガメニュー非表示 */
	#gNavi {
		display: none;
	}


	/* メガメニュー部分は非表示 */
	#sNaviBg {
		display: none;
	}

	.spNaviMenuWrapper {
		margin-bottom: 30px;
	}

	.spNaviMenu01 li a {
		margin: 0 auto 10px auto;
		padding: 5px 0 5px 10px;
		box-sizing: border-box;
		text-decoration: none;
		display: block;
		text-align: left;
		width: 100%;
		/*	background:url(../images/common/arrow02.png) ,-moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,-webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
*/
		background: -moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: -webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background-repeat: no-repeat;
		background-position: 96%;
		font-size: 13px;
		font-weight: bold;
		color: #222222;
		position: relative;
	}

	.spNaviMenu01 li a:after {
		content: '';
		/*何も入れない*/
		display: inline-block;
		/*忘れずに！*/
		width: 15px;
		/*画像の幅*/
		height: 15px;
		/*画像の高さ*/
		background: url(../images/common/arrow02.png) no-repeat;
		background-size: 15px;
		position: absolute;
		right: 10px;
		top: 9px;
	}


	.spNaviMenu01 li a:hover {
		opacity: 0.6;
	}


	.spNaviMenu02 {
		overflow: hidden;
	}

	.spNaviMenu02 li {
		overflow: hidden;
		width: 49%;
	}

	.spNaviMenu02 li:nth-child(odd) {
		float: left;
	}

	.spNaviMenu02 li:nth-child(even) {
		float: right;
	}

	.spNaviMenu02 li a {
		margin: 0 auto 10px auto;
		padding: 5px 0 5px 10px;
		box-sizing: border-box;
		text-decoration: none;
		display: block;
		text-align: left;
		/*	background:url(../images/common/arrow02.png) ,-moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,-webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
*/
		background: -moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: -webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background-repeat: no-repeat;
		background-position: 96%;
		font-size: 11px;
		font-weight: bold;
		color: #222222;
		position: relative;
	}

	.spNaviMenu02 li a:after {
		content: '';
		/*何も入れない*/
		display: inline-block;
		/*忘れずに！*/
		width: 10px;
		/*画像の幅*/
		height: 10px;
		/*画像の高さ*/
		background: url(../images/common/arrow02.png) no-repeat;
		background-size: 10px;
		position: absolute;
		right: 10px;
		top: 11px;
	}


	.spNaviMenu02 li a:hover {
		opacity: 0.6;
	}

	.spNaviMenu03 {
		overflow: hidden;
	}

	.spNaviMenu03 li {
		overflow: hidden;
		width: 49%;
	}

	.spNaviMenu03 li:nth-child(odd) {
		float: left;
	}

	.spNaviMenu03 li:nth-child(even) {
		float: right;
	}


	.spNaviMenu03 li a {
		margin: 0 auto 10px auto;
		padding: 5px 0 5px 10px;
		box-sizing: border-box;
		text-decoration: none;
		display: block;
		text-align: left;
		border-radius: 5px;
		/*	background:url(../images/common/arrow02.png) ,-moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,-webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
	background:url(../images/common/arrow02.png) ,linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
*/
		background: -moz-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: -webkit-linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: linear-gradient(top, #fff 0%, #fff 49%, #dcdcdc 50%, #dcdcdc 100%);
		background-repeat: no-repeat;
		background-position: 96%;
		font-size: 13px;
		font-weight: bold;
		color: #222222;
		position: relative;
	}

	.spNaviMenu03 li a:after {
		content: '';
		/*何も入れない*/
		display: inline-block;
		/*忘れずに！*/
		width: 15px;
		/*画像の幅*/
		height: 15px;
		/*画像の高さ*/
		background: url(../images/common/arrow02.png) no-repeat;
		background-size: 15px;
		position: absolute;
		right: 10px;
		top: 9px;
	}



	.spNaviMenu03 li a:hover {
		opacity: 0.6;
	}



}


/* ---------------------------------------------------------------------------

	パソコン（ブラウザの横幅が指定したpx以上の時に適用されます）

--------------------------------------------------------------------------- */
@media screen and (min-width : 960px) {

	#SPgNavi,
	#menuBtn {
		display: none;
	}


	/* --------------------------------------------------- fixedBox★必須★ */
	#gNavi {
		box-sizing: border-box;
		color: #222222;
		float: left;
		width: 100%;
	}

	#fixedBox {
		display: block;
		/*	opacity:0.9; スクロールした時にナビ部分を少し薄くする*/
		text-align: center;
	}

	.fixed {
		position: fixed;
		top: 0;
		z-index: 10000;
		text-align: center;
		width: 100%;
	}

	/* --------------------------------------------------- btn★必須★ */
	.btn__box {
		width: 250px;
		line-height: 50px;
		margin: 100px auto 0;
		font-size: 13px;
	}

	.btn__box a {
		position: relative;
		display: block;
		color: #fff;
		background: #fff;
	}

	.btn__box a:before {
		content: '';
		position: absolute;
		top: -5px;
		left: -5px;
		box-sizing: border-box;
		width: 250px;
		border: 1px solid #666;
		-webkit-transition: all .5s ease;
		transition: all .5s ease;
	}

	.btn__box a:hover:before {
		-webkit-transform: translate(10px, 10px);
		-ms-transform: translate(10px, 10px);
		transform: translate(10px, 10px);
	}

	/* --------------------------------------------------- menu★必須★ */
	.menu {
		position: relative;
		width: 1100px;
		/*height: 84px;  ★設定必要★ */
		overflow: hidden;
		margin: 0 auto;
		font-size: 14px;
	}

	.menu li {
		float: left;
		width: calc(1100px / 7);
		box-sizing: border-box;
		border-left: 1px solid #0c780b;
	}

	.menu li:last-child {
		border-right: 1px solid #0c780b;
	}

	.menu li a {
		display: block;
		text-decoration: none;
		color: #fff;
	}

	.menu__second-level {
		visibility: hidden;
		opacity: 0;
		z-index: 1;
	}

	ul.menu__third-level {
		visibility: hidden;
		opacity: 0;
	}

	ul.menu__fourth-level {
		visibility: hidden;
		opacity: 0;
	}

	.menu>li:hover {
		-webkit-transition: all .5s;
		transition: all .5s;
	}

	.menu a:hover {
		opacity: 1;
	}

	.menu__second-level li {
		border-top: 1px solid #111;
	}

	.menu__third-level li {
		border-top: 1px solid #111;
	}

	.menu__second-level li a:hover {
		background: #111;
	}

	.menu__third-level li a:hover {
		background: #2a1f1f;
	}

	.menu__fourth-level li a:hover {
		background: #1d0f0f;
	}

/* -------------------------------- ★Gナビ設定★ ----------------------------- */

	#gNavi a.init-bottom:hover span {
		opacity: 1;
		color: #c48d00;
	}

	/* Gナビが画像の場合の設定 */

	#gNavi a {
		padding: 12px 0 12px 0;
		position: relative;
		font-size: 13px;
		line-height: 130%;
	}

	#gNavi a span {
		display: block;
		font-size: 14px;
		color: #115fad;
	}

	/* -------------------------------- ★メガメニュー設定★ ----------------------------- */

	li.menu__mega .menu__second-level {
		position: fixed;
		left: 0;
		box-sizing: border-box;
		width: 100%;
		/*padding:40px 0 20px 0;*/
		-webkit-transition: all .2s ease;
		transition: all .6s ease;
		/* ドロップ時の動き／時間が遅すぎると、ホバー外して残像が残るため何もないところでメガメニュー発動する */
		color: #fff;
	}

	li.menu__mega:hover .menu__second-level {
		visibility: visible;
		opacity: 1;
	}

	#sNaviBg {
		background: #115fad;
	}

	#sNavi {
		margin: 0 auto;
		width: 1160px;
		display: table;
		padding-left: 330px;
		box-sizing: border-box;
	}

	.sNaviBtn {
		border: none;
		width: 100%;
	}

	.sNaviBtn:nth-child(2n) {
		margin-right: 0;
	}

	/* サブ */
	.sNaviBtn li {
		border: none;
		float: none;
		width: auto;
		text-align: left;
		line-height: 140%;
		text-align: center;
		margin-left: 40px;
	}

	.sNaviBtn li:last-child {
		border: none;
	}

	.sNaviBtn li a {
		position: relative;
		color: #fff;
		font-size: 15px !important;
	}

	.sNaviBtn li a:hover {
		opacity: 0.6;
		background: none;
	}








	.sNaviBtn a {
		color: #fff;
	}

	/* 写真 */
	.sNaviBtn .photo {
		float: left;
		width: 20%;
	}

	.sNaviBtn .photo img {
		border-radius: 4px;
		width: 100%;
	}

	/* ページ名 */
	.sNaviBtn span {
		box-sizing: border-box;
		display: block;
		text-align: left;
		line-height: 120%;
		text-decoration: underline;
		font-size: 16px;
		padding: 0 20px;
		border-right: 1px solid #fff;
		text-decoration: none;
	}

	/* 説明文 */
	.sNaviBtn p.message {
		padding: 0 0 0 20px;
		box-sizing: border-box;
		float: right;
		width: 78%;
		text-align: left;
		text-decoration: none;
		font-weight: normal;
		font-size: 12px;
	}

	ul.sNaviBtn li {
		float: left;
		padding: 20px 0;
	}

	ul.sNaviBtn li a {
		padding: 0px !important;
		text-decoration: none;
	}

	.firstNavi {
		background: -moz-linear-gradient(top, #159011 0%, #159011 49%, #128a0f 50%, #128a0f 100%);
		background: -webkit-linear-gradient(top, #159011 0%, #159011 49%, #128a0f 50%, #128a0f 100%);
		background: -ms-linear-gradient(top, #159011 0%, #159011 49%, #128a0f 50%, #128a0f 100%);
		background: linear-gradient(top, #159011 0%, #159011 49%, #128a0f 50%, #128a0f 100%);
		height: 40px;
		border-top: 3px solid #99cc00;
		border-bottom: 3px solid #99cc00;
	}

	.secondnaviWrapper {
		background: -moz-linear-gradient(top, #eee 0%, #eee 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: -webkit-linear-gradient(top, #eee 0%, #eee 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: -ms-linear-gradient(top, #eee 0%, #eee 49%, #dcdcdc 50%, #dcdcdc 100%);
		background: linear-gradient(top, #eee 0%, #eee 49%, #dcdcdc 50%, #dcdcdc 100%);
		width: 1100px;
		margin: 15px auto;
		overflow: hidden;
	}

	.secondnavimenu {
		padding: 3px 0 0 24px;
	}

	.secondnavimenu li {
		float: left;
	}

	.secondnavimenu li a {
		color: #222222;
		text-decoration: none;
		font-size: 13px !important;
		background: url(../images/common/arrow03.png) no-repeat 96% 50%;
		padding: 0 26px 0 0 !important;
		margin-right: 22px;
		display: inline-block;
	}

	.secondnavimenu li:last-child a {
		margin-right: 10px;
	}

	.secondnaviLeft {
		width: 155px;
		float: left;
		background: #128a0f;
		color: #fff;
		font-size: 14px;
		padding: 5px 0 5px 5px;
		margin-right: 20px;
	}

	.secondnavimenu li a:hover {
		opacity: 0.6;
	}

	.menu__mega a:hover {
		border-bottom: 3px solid #fe5900;
	}

	.menu__mega a.on {
		border-bottom: 3px solid #fe5900;
	}

	.init-bottom.onsub {
		color: #fd0002;
	}

}