@charset "Shift_JIS";

/*--------------------------------------------------------
  非レスポンシブパーツ
--------------------------------------------------------*/

/* リスト（標準） */
#hpb-main ul{
	margin-top: 0px;
	margin-bottom: 0px;
	padding-right: 0px;
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
	margin-left: 2em;
	margin-right: 0px;
	list-style-type: square;
}
#hpb-main ul li{
	margin-top: 0.5em;
	margin-bottom: 1em;
	padding-right: 0;
	padding-left: 0;
	line-height: 1.4;
	text-align: left;
}

/* リスト（番号） */
#hpb-main ol{
	margin-top: 0px;
	margin-bottom: 0px;
	padding-right: 0px;
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
	margin-left: 2em;
	margin-right: 0px;
}
#hpb-main ol li{
	margin-top: 0.5em;
	margin-bottom: 1em;
	padding-right: 0;
	padding-left: 0;
	line-height: 1.4;
	text-align: left;
}

/* ボタン１（横長オレンジ） */
.button01 a{
    display: block;
    overflow: hidden;
    padding: 6px 10px 4px 10px;
    margin: 0px;
    font-weight: bold;
    color: #FF9900;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
    text-align: center;
    border: solid 3px #FF9900;/*線*/
    border-radius: 10px;/*角の丸み*/
}
.button01 a:link{
    color: #FF9900;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button01 a:visited{
    color: #FF9900;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button01 a:active{
    color: #FF9900;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button01 a:hover{
    color: #FFFFFF;
    background: #FF9900;
    text-decoration: none;
}

/* ボタン２（横長グレー） */
.button02 a{
    display: block;
    overflow: hidden;
    padding: 6px 10px 4px 10px;
    margin: 0px;
    font-weight: bold;
    color: #666666;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
    text-align: center;
    border: solid 3px #666666;/*線*/
    border-radius: 10px;/*角の丸み*/
}
.button02 a:link{
    color: #666666;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button02 a:visited{
    color: #666666;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button02 a:active{
    color: #666666;/*文字色*/
    background: #FFFFFF;
    text-decoration: none;
}
.button02 a:hover{
    color: #FFFFFF;
    background: #666666;
    text-decoration: none;
}

/* 画像リンク効果１ */
.img_wrap01{
    padding: 0px;
    margin: 0px;
    overflow: hidden;
}
.img_wrap01 img{
    cursor: pointer;
    transition-duration: 0.3s;
}
.img_wrap01:hover img{
    opacity: 0.6;
    transition-duration: 0.3s;
}

/* 画像リンク効果２ */
.img_wrap02{
    padding: 0px;
    margin: 0.5em 0 1em 0;
    overflow: hidden;
}
.img_wrap02 img{
    cursor: pointer;
    transition-duration: 0.3s;
}
.img_wrap02:hover img{
    opacity: 0.6;
    transition-duration: 0.3s;
}

/* パンくずリスト */
#topic-path ol{
	margin: 0.5em 0 1em 0;
	padding: 0.5em;
	background-color: #f9f9f9;
	list-style-type: none;
	font-size: 75%;
}
#topic-path ol li{
	padding: 0em;
	display: inline;
}
#topic-path ol li a{
	padding-right: 1.5em;
	background: url(topic-path.png) no-repeat right;
}


/*--------------------------------------------------------
  サイドナビゲーションデザイン設定
--------------------------------------------------------*/

/* サイドナビゲーション */
.side-nav ul{
    margin: 0 0 1.5em 0;
    padding: 0;
    list-style-type: none;
    text-align: left;
}

.side-nav ul::after{
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.side-nav li{
	float: left;
	display: inline;
	font-size: 13px;
	line-height: 38px;
	height: 38px;
	width: 100%;
	overflow: hidden;
}

* html .side-nav li{
    /* ie6用ハック */
    width: 100%;
}

.side-nav li a{
    display: block;
    height: 37px;
    overflow: hidden;
    padding-left: 27px;
    padding-right: 20px;
}

* html .side-nav li a{
    /* ie6用ハック */
    padding-left: 5px;
    padding-right: 5px;
    font-size: 12px;
}

.side-nav li span.en{
    display: none;
}

.side-nav a:link{
    background-image : url(sidemenu_off.png);
    background-position: top left;
    background-repeat: no-repeat;
}

.side-nav a:visited{
    background-image : url(sidemenu_off.png);
    background-position: top left;
    background-repeat: no-repeat;
}

.side-nav a:hover{
    background-image : url(sidemenu_on.png);
    background-position: left top;
    background-repeat: repeat-x;
}

.side-nav a:active{
    background-image : url(sidemenu_on.png);
    background-position: left top;
    background-repeat: repeat-x;
}

* html .side-nav li a:link{
    /* ie6用ハック */
    background-image : url(sidemenu_off.png);
    background-position: top right;
    background-repeat: no-repeat;
}

* html .side-nav li a:visited{
    /* ie6用ハック */
    background-image : url(sidemenu_off.png);
    background-position: top right;
    background-repeat: no-repeat;
}

* html .side-nav li a:hover{
    /* ie6用ハック */
    background-image : url(sidemenu_on.png);
    background-position: left right;
    background-repeat: repeat-x;
}

* html .side-nav li a:active{
    /* ie6用ハック */
    background-image : url(sidemenu_on.png);
    background-position: left right;
    background-repeat: repeat-x;
}

.side-nav li a{
    /* ナビゲーション文字設定 */
    font-weight: bold;
}

.side-nav li a:link{
    color: #666666;
    text-decoration: none;
}

/* ナビゲーション文字色設定 */
.side-nav li a:visited{
    color: #666666;
    text-decoration: none;
}

.side-nav li a:hover{
    color: #ffffff;
    text-decoration: none;
}

.side-nav li a:action{
    color: #ffffff;
    text-decoration: none;
}

.side-nav li span.en{
    display: none;
}

.side-nav h4{
	margin: 0.5em 0 0 0;
	color: #ffffff;
	text-align: center;
	font-weight: bold;
	padding: 7px 0 5px 0;
	background-color: #999999;
	font-size: 1em;
}


/*--------------------------------------------------------
  レスポンシブパーツ（ＰＣサイズ時）
--------------------------------------------------------*/
/* トップメイン */
#hpb-top_main{
	width: 980px;
	float: left;
	text-align: left;
	padding-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
}
.hpb-layoutset-01 #hpb-top_main{
	padding-top: 20px;
}
.hpb-layoutset-02 #hpb-top_main{
	padding-top: 10px;
}

/* トップバナー（色分け３箇所注意） */
.top-banner{
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: -4px 0 1em 0;
}
.top-banner li{
	width: calc(100%/2);/*←画像を横に2つ並べる場合*/
	box-sizing: border-box;
}
.top-banner li a{
	display: block;
	overflow: hidden;
	padding: 5px 10px 10px 10px;
	margin: 3px;
	font-weight: bold;
	color: #33CC00;/*文字色*/
	background: #FFFFFF;
	border: solid 3px #33CC00;/*線*/
	border-radius: 10px;/*角の丸み*/
	text-align: center;
	text-decoration: none;
}
.top-banner li a:hover{
	color: #FFFFFF;
	background: #33CC00;
}
.top-banner img{
	height: 90px;
}

/* レイアウト（色分け２箇所注意） */
.container{
    background-color : #f9f9f9;
    margin-top : 0.5em;
    margin-bottom : 1em;
}

.container2{
    margin-top : 0.5em;
    margin-bottom : 1em;
}

.container-hen{
    margin-top : 0.5em;
    margin-bottom : 1em;
    display : flex;
}

.container-oto1{
    background-color : #00FF33;
    margin-top : 0.5em;
    margin-bottom : 0.5em;
    padding : 0;
}

.container-oto1 p{
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
	padding : 0.5em;
	font-size: 1.2em;
	font-weight: bold;
	color : white;
}

.container-oto2{
    margin-top : 0.5em;
    margin-bottom : 1em;
    padding-top : 1em;
    padding-left : 1.5em;
    padding-right : 1.5em;
    padding-bottom : 1em;
    border-width : 5px;
    border-style : solid;
    border-color : #00FF33;
    display : flex;
}

.container-ft{
    margin-top : 0.5em;
    margin-bottom : 1em;
    display : flex;
}

.box{
    padding : 0.5em 0.5em 0.5em 0.5em;
}

.box-oto1{
    padding : 0.5em 0.5em 0.5em 0.5em;
    width : 60%;
}

.box-oto2{
    padding : 0.5em 0.5em 0.5em 0.5em;
    width : 40%;
}

.box-hen{
    padding : 0.5em 0.5em 0.5em 0.5em;
    width : 50%;
}

.box-ft{
    padding : 0.5em 0.5em 0.5em 0.5em;
    border-left-width : 1px;
    border-right-width : 1px;
    width : 25%;
}


/* =======================================================
  レスポンシブパーツ（スマホサイズ時）
======================================================= */
@media screen and (max-width: 568px) {

	/* トップメイン */
	#hpb-top_main{
		width: 96%;
		float: none;
		padding: 0;
		margin-left: auto;
		margin-right: auto;
	}
	.hpb-layoutset-01 #hpb-top_main{
		padding-top: 0;
		margin-top: -10px;
	}
	.hpb-layoutset-02 #hpb-top_main{
		padding-top: 0;
	}

	/* トップバナー */
	.top-banner li{
		width: calc(100%/1);/*←画像を横に1つ並べる場合*/
	}

	/* レイアウト */
	.container-hen{
       display : flex;
       flex-flow : column;
       }
       .box-hen{
       width : 94%;
       }
       .container-oto2{
       display : flex;
       flex-flow : column;
       }
       .box-oto1{
       width : 94%;
       }
       .box-oto2{
       width : 94%;
       }
       .container-ft{
       display : flex;
       flex-flow : column;
       }
       .box-ft{
       border-left-width : 0px;
       border-right-width : 0px;
       width : 94%;
       }

}