﻿@import url('https://use.fontawesome.com/releases/v6.5.2/css/all.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');


/*--------------------------------------------------------------------
  3タイプ共用スタイルシート
  #one_colomun				「上メニュー」
  #two_colomun_leftmenu		「左メニュー」
  #two_colomun_rightmenu	「右メニュー」
--------------------------------------------------------------------*/




HTML,BODY{
height: 100%;	/* フッター下部固定 */
}


BODY{
margin:0;
padding:0;
color:#000;
background:#FFF;
font-size: 100.0%;	/* 16pxベース */
line-height:1.6;
text-align: center;
letter-spacing:1px;
font-family:'Open Sans', 'Noto Sans JP', sans-serif;
-webkit-text-size-adjust: 100%;	/* iPhone版Safari対策 */
}

/*------ フォントサイズ ------
font-size:62.5%;	10px
font-size:75.0%;	12px
font-size:87.5%;	14px
font-size:100.0%;	16px
font-size:112.5%;	18px
font-size:125.0%;	20px
font-size:137.5%;	22px
font-size:150.0%;	24px
font-size:162.5%;	26px
font-size:175.0%;	28px
font-size:187.5%;	30px
font-size:200.0%;	32px
font-size:212.5%;	34px
font-size:225.0%;	36px
font-size:237.5%;	38px
font-size:250.0%;	40px
-----------------------------*/
IMG{
max-width: 100%;
height:auto;
image-rendering: -webkit-optimize-contrast;
}
IMG,
A IMG{
border:none;
}

/*--------------------------------------------------------------------
  「レスポンシブ」固有
--------------------------------------------------------------------*/
.pc,
.pc_tablet{
display:inline-block;
}

.tablet_sp,
.tablet,
.sp{
display:none;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	IMG{
	width:auto;
	height:auto;
	max-width: 100%;
	}
	.block_tablet_sp{	/* タブレット・スマホの時だけ改行する */
	display:block;
	}
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.pc,
	.sp{
	display:none !important;
	}
	.tablet_sp,
	.pc_tablet,
	.tablet{
	display:inline-block !important;
	}
	.block_tablet{	/* タブレット・スマホ横の時だけ改行する */
	display:block;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	*{
	word-break: break-all;
	}
	.pc_tablet,
	.pc,
	.tablet{
	display:none !important;
	}
	.tablet_sp,
	.sp{
	display:inline-block !important;
	}
	.block_sp{	/* スマホ縦の時だけ改行する */
	display:block;
	}
}


/*--------------------------------------------------------------------
  リンクテキスト
--------------------------------------------------------------------*/
A{
color:#00C;
transition: color 0.3s ease;
}
A:visited{
color:#969;
}
A:hover{
color:#00F;
text-decoration:none;
}

/*--------------------------------------------------------------------
  見出し
--------------------------------------------------------------------*/
H1{
margin:0;
}
H2{
margin:0;
font-weight:normal;
}

/*------------------------------------------------
   H3
------------------------------------------------*/
/*------ H3基本設定 ------*/
H3{
margin:30px 0 20px 0;
clear:both;
font-family: 'Noto Serif JP', sans-serif;
}

#content H3{
padding:0.8em 20px 0.6em 10px;
border-bottom:5px solid #F8E58C;	/* 淡黄 */
font-size:200.0%;	/* 32px */
font-weight:normal;
}

/*------------------------------------------------
   H4
------------------------------------------------*/
/*------ H4基本設定 ------*/
H4{
margin:40px auto 15px auto;
clear:both;
}
#content H4{
padding:0.4em 0 0.3em 10px;
border-bottom:4px solid #F8E58C;	/* 淡黄 */
font-size:142.9%;	/* 20px */
font-weight:normal;
}

/*------ 他要素隣接時 ------*/
#content *+H4{	/* H4 他要素のすぐ下は余白を多く */
margin-top:70px;
}



/*------------------------------------------------
   H5
------------------------------------------------*/
/*------ H5基本設定 ------*/
H5{
margin:40px auto 10px auto;
padding:0.2em 0 0.2em 6px;
border-left:4px solid #006;
font-size:114.3%;	/* 16px */
font-weight:normal;
clear:both;
}

/*------ 他要素隣接時 ------*/
#content *+H5{	/* H5 他要素のすぐ下は余白を多く */
margin-top:60px;
}



/*--------------------------------------------------------------------
  インデント 
--------------------------------------------------------------------*/
.indent{
margin-left:15px;
}



/*------ #contentの直下は両サイド20px ------*/
#content>P,
#content>DIV,
#content>H5,
#content>DL,
#content>UL,
#content>OL,
#content>TABLE{
margin-right:20px;
margin-left:20px;
}

#content>H5+DIV{
margin-left:30px;
}


#content .subtitle{
font-size:113.3%;	/* 17px */
color:#F30;
}






/*--------------------------------------------------------------------
  左寄せ・右寄せ
--------------------------------------------------------------------*/
.aligncenter{
text-align:center;
}
.alignright{
text-align:right;
}

/*------------------------------------------------
  画像の左寄せ・右寄せ
------------------------------------------------*/
.left{
float: left;
margin: 0 20px 20px 0;
}
.right{
float: right;
margin: 0 0 20px 20px;
}
.clear{
clear:both;
}



/*--------------------------------------------------------------------
  フォントサイズ・色
--------------------------------------------------------------------*/
.large{
font-size:125.0%;	/* 20px */
}
.small{
font-size:87.5%;	/* 14px */
}

.orange{
color:#f60;
}
.green{
color:#690;
}




/*--------------------------------------------------------------------
  リストスタイル
--------------------------------------------------------------------*/
UL{
margin:1.2em 0;
padding:0;
list-style:none;
}
LI{
margin:0;
padding:0;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}


#content LI{
margin-top:0.5em;
margin-bottom:0.5em;
}
#content LI LI{
margin-top:0.2em;
margin-bottom:0.2em;
}


/*------------------------------------------------
  ネスト時
------------------------------------------------*/
LI UL,
DD UL,
TD UL{
margin-top:0;
margin-bottom:0.3em;
}


/*------------------------------------------------
  箇条書きリスト
------------------------------------------------*/
UL.list>LI,
UL>LI.list{
padding-left:1.3em;
text-indent:-1.3em;
}
UL.list>LI *,
UL>LI.list *{
padding-left:0;
text-indent:0;
}


LI.list:not(.kome)::before,
.list>LI:not(.kome)::before{
margin:-0.22em 0.5em 0 0.5em;
text-indent:0;
content:"\f111";
font-family: "Font Awesome 5 Free";
font-weight : 900;
font-size:0.6em;
vertical-align:middle;
display:inline-block;
color:#6C9;
}

/*------------------------------------------------
  横並びリスト
------------------------------------------------*/
UL.inline{
display:block;
}
UL.inline.table{
display:table;
}
UL.inline LI{
padding-right:1.25em;
display:inline-block;
vertical-align:middle;
}

/*------------------------------------------------
  番号付きリスト
------------------------------------------------*/
OL{
margin:1.2em 0;
padding:0;
}

/*------ ネスト時 ------*/
LI OL,
DD OL,
TD OL{
margin-top:0;
margin-bottom:0.3em;
}
OL>LI{
margin-left:2.2em;
list-style-type : decimal;
}
UL>LI OL>LI{
text-indent:0;
}

/*------ 両側に()カッコ ------*/
OL.kakko>LI{
margin-left:0;
padding-left:2.2em;
text-indent: -2.1em;
list-style-type:none;
list-style-position:inside;
counter-increment: cnt;
}
OL.kakko>LI:before{
display: marker;
content: "(" counter(cnt) ") ";
}




/*------------------------------------------------
  注釈 ※ リスト
------------------------------------------------*/
UL.kome>LI,
LI.kome{
padding-left:1.3em;
text-indent:-1.3em;
line-height:1.3;
}
UL.kome>LI::before,
LI.kome::before{
margin-right:0.2em;
display:inline-block;
content:"※";
color:#F00;
text-indent:0;
}

/*------------------------------------------------
  PDF・Word・Excelリスト
------------------------------------------------*/
/*------ 共通 ------*/
UL.pdf LI,
LI.pdf{
margin-top:0 !important;
margin-bottom:0 !important;
padding:0.4em 0 0.4em 40px;
background-repeat:no-repeat;
background-position:0 0.2em;
background-position:0 0.2em;
list-style:none;
min-height:36px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}

.pdf A{
vertical-align:top;	/* IE7対策 */
}

/*------ PDFリスト ------*/
UL.pdf LI,
LI.pdf{
background-image:url(img/pdf.png);
}


/*------ PDFリスト（小） ------*/
UL.pdf_s LI,
LI.pdf_s{
margin-top:0 !important;
margin-bottom:0 !important;
padding:0.2em 0 0.2em 20px;
background-repeat:no-repeat;
list-style:none;
min-height:20px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
background:url(img/pdf_s.gif) no-repeat 0 0.4em;
}
.pdf_s A{
vertical-align:top;	/* IE7対策 */
}




/*--------------------------------------------------------------------
  表
--------------------------------------------------------------------*/
TABLE,
TH,
TD{
font-size:100%;
}
TH{
text-align:center;
font-weight:normal;
}



/*------------------------------------------------
  罫線を表示するタイプの表
------------------------------------------------*/
TABLE.data_table{
border-collapse:collapse;
border:1px solid #999;
}
#one_colomun #content .data_table{
margin-right:auto;
margin-left:auto;
width:810px;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#one_colomun #content .data_table{
	width:92%;
	}
}
#one_colomun #content .data_table{
margin-right:auto;
margin-left:auto;
}

TABLE.data_table CAPTION{
text-align:right;
}
.data_table TH{
padding:15px;
border:1px solid #999;
background:#F7F6FB;	/* Lavender Ice */
white-space:nowrap;
}

.data_table TD{
padding:15px;
border:1px solid #999;
background:#FFF;
}
#content .data_table TD UL.inline{
margin:0;
}
#content .data_table TD UL.inline LI{
margin:0;
}


/*------------------------------------------------
  スマホ表示時にセルをスライドさせるタイプの表
------------------------------------------------*/
TABLE.float_table{
}
.float_table TH{
}
.float_table TD{
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	TABLE.float_table{
a	margin:inherit 6% inherit 0;
	width:92%;
	border-top:none;
	border-right:none;
	}
	.float_table TH,
	.float_table TD{
	float:left;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	}
	.float_table TH{
	padding:10px 3% 5px 3%;
	border-bottom:1px solid #DCDCDC;
	border-left:none;
	text-align:left;
	}
	.float_table TD{
	padding:10px 3%;
	border-top:none;
	border-bottom:none;
	border-left:none;
	}
}




/*--------------------------------------------------------------------
  「トップページ」固有の設定
--------------------------------------------------------------------*/
#one_colomun #top_left{	/* 「上メニュー」左右分割 左 */
margin:40px 0 20px 0;
float:left;
/* width:520px; 初期値 */
width:460px;
text-align: left;
}
#one_colomun #top_right{	/* 「上メニュー」左右分割 右 */
margin:40px 0 20px 0;
float: right;
/* width:400px; 初期値 */
width:450px;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#one_colomun #top_left,	/* 「上メニュー」左右分割 左 */
	#one_colomun #top_right{	/* 「上メニュー」左右分割 右 */
	margin:40px auto 20px auto;
	float:none;
	width:94%;
	}
}

/*------------------------------------------------
  トップページ左側 フリーPR欄
------------------------------------------------*/
#appeal H3{
margin:0;
/* padding:0.3em 0 0.3em 6px; */
/* border-left:4px solid #006; */
/* font-size:114.3%;	 初期値 16px */

font-size:150.0%;	/* 24px */
font-weight:700;
}
#appeal H3 .large{
color:#FA8072;	/* Salmon */
}
#appeal H4{
margin:5px 0 0 0;
padding:0;
font-weight:normal;
color:#006;
font-size:87.5%;	/* 14px */
}


#appeal P{
margin-left:15px;
}
#appeal H3+P{	/* H3のすぐ下の段落は上余白を少なく */
margin-top:10px;
}
#appeal H3~H3{	/* 2個目のH3は上に余白を持たせる */
margin-top:50px;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#appeal IMG{
	margin:0 auto;
	display:block;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#appeal H3,
	#appeal H4{
	text-align:center;
	}

}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#appeal IMG.left{
	margin:auto auto 10px auto;
	display:block;
	float:none;
	width:auto;
	}
}

/*------------------------------------------------
  トップページ右側 お知らせ欄
------------------------------------------------*/
#news H4{
margin:0;
padding:0.4em 0 0.3em 10px;
border-bottom:4px solid #006;
font-size:114.3%;	 /* 16px */
font-weight:normal;
}


/*------------------------------------------------
  #one_colomn 「上メニュー」
------------------------------------------------*/
#news UL{
margin:0;
padding:0;
}
#news LI{
margin:10px 0;
padding:10px 0 0 18px;
/ background:url(img/liststyle_arrow.gif) no-repeat 5px 1.2em;
}
#news LI:before{
margin-left:-10px;
margin-right:6px;
content: "\f0da";
font-family: "Font Awesome 5 Free";
font-weight : 900;
color:#C00;
}

#news LI+LI{
border-top:1px dotted #CCC;
}

/*------------------------------------------------
  #two_colomn 「左メニュー」「右メニュー」
------------------------------------------------*/
#two_colomun_leftmenu #news,
#two_colomun_rightmenu #news{
margin-top:30px;
}
#news DL{
margin:15px 0 0 0;
padding:0;
}
#news DT{
margin:0 0 10px 5px;
padding:0;
width:7em;
float:left;
}
#news DD{
margin:0 0 10px 5px;
padding:0 0 10px 9em;
/ background:url(img/liststyle_arrow.gif) no-repeat 8em 0.4em;
border-bottom:1px dotted #CCC;
}
#news DD:before{
margin-left:-10px;
margin-right:6px;
content: "\f0da";
font-family: "Font Awesome 5 Free";
font-weight : 900;
color:#C00;
}

/*------------------------------------------------
  トップページ右側 住所欄 
------------------------------------------------*/
#top_address{
/* margin:50px 0 0 0; 初期値 */
/* padding:0 0 9px 0; 初期値 */
margin:40px 0 0 0;
padding:20px;
border:1px solid #DCDCDC;
}
#top_address H5{
margin:0;
/*
padding:0.4em 0 0.4em 14px;
background:#006;
color:#FFF;
*/
font-weight:normal;
border-left:none;
font-size:100%;	/* 14px */
}

#top_address_inner{
padding:1px 14px 15px 15px;
background:#F5F5F5;
}
#top_address P{
margin:10px 0 0 0;
}
#top_address SPAN:not(.slash){
margin:0 5px 0 0;
display:inline-block;
width:5em;
}

#top_address IFRAME{
margin:10px 0;
border:1px solid #DCDCDC;
padding:4px;
background:#FFF;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#top_address IFRAME{
	margin:0;
	padding:0;
	width:100%;
	height:300px;
	border:none;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#top_address{
	padding:0;
	border:none;
	}
}

/*--------------------------------------------------------------------
  「コンテンツ」固有の設定
--------------------------------------------------------------------*/

/*------------------------------------------------
  ギャラリー設定
------------------------------------------------*/
.gallery-popup A{
margin:0 auto;
cursor: url(img/magnify_plus.cur), pointer;	/* カーソルを虫眼鏡に */
display:block;
position:relative;
outline:none;
transition: opacity 0.5s;
}
#photos .gallery-popup A{
margin:0 auto 5px auto;
display:table;
}
.gallery-popup A:hover{
opacity:0.8;	/* Safari,Opera,Chrome */
filter:alpha(opacity=80); 	/* IE8,IE7 */
-ms-filter:"alpha(opacity=80)";	/* IE8 */
-moz-opacity: 0.8;	/* FireFox */
zoom:1;
}
.gallery-popup A IMG{
vertical-align:top;
}

.caption LI>A,
.caption LI>IMG{
margin-bottom:0.5em;
}


/*------------------------------------------------
  電話番号自動リンク(with JavaScript)
------------------------------------------------*/
A.tellink {
pointer-events: none;	/* PCの時はリンクしない */
cursor: default;
text-decoration: none !important;
display:inline-block;
}
A.tellink.tel {
pointer-events: auto;
}
A.tellink:not(.tel){
color:#000;
}


/*------------------------------------------------
  区切りのスラッシュ / 表示
------------------------------------------------*/
.slash,
.dot{
display:inline-block;
}
.slash,
.slash_tablet{
padding:0 0.5em;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.slash_tablet,
	.dot_tablet{
	margin-bottom:-0.3em;
	padding:0;
	overflow: hidden;	/* -9999 */
	text-indent: 100%;	/* -9999 */
	white-space: nowrap;	/* -9999 */
	display:block;
	width:1px;
	height:0;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.slash,
	.dot{
	margin-bottom:-0.3em;
	padding:0;
	overflow: hidden;	/* -9999 */
	text-indent: 100%;	/* -9999 */
	white-space: nowrap;	/* -9999 */
	display:block;
	width:1px;
	height:0;
	}
}


/*-----------------------------------------------
  flexbox レイアウトをレスポンシブで可変
------------------------------------------------*/
BODY .flexbox{
margin:auto;
display : -webkit-box;     /* old Android */
display : -webkit-flex;    /* Safari etc. */
display : -ms-flexbox;     /* IE10        */
display : flex;
-webkit-flex-wrap: wrap;          /* Safari etc. */
-ms-flex-wrap    : wrap;          /* IE10        */
flex-wrap        : wrap;
align-items: stretch;	/* 子要素の高さを揃える */
justify-content:center;	/* 左右中央揃え（センタリング） */
}
.flexbox.space-between{
justify-content: space-between;
}
.flexbox.space-around{
justify-content: space-around;
}
.flexbox.start{
justify-content:flex-start;	/* 左揃え（初期値） */
}
.flexbox.end{
justify-content:flex-end;	/* 右揃え */
}
.flexbox.startalign{
align-items: flex-start;	/* 子要素の高さを揃えず上に付ける */
}
.flexbox.center{
align-items: center;	/* 子要素の高さを揃えず天地中央に置く */
}

/*------------------------------------------------
  アイテム横並び（等幅2～4分割） .flexboxと併用
------------------------------------------------*/
.item{
max-width:100%;
}
.item.space-between{
/*
padding-right:1.5em;
padding-left:1.5em;
*/
}
.item.space-around{
padding-right:0.75em;
padding-left:0.75em;
}


.item>*{
margin-top:1.5em;
margin-bottom:0;
padding:0;
text-indent:0;
}

.item.padding>*{
padding:1.0em;
}
.item>*::before{
display:none !important;
}
.item>*{
text-align:center;
}

.item>*>*{
margin-bottom:0;
}
.item>*>*:first-child{
margin-top:0;
}


/*------ 2列 ------*/
.item.part2>*{	/* □1.5□ */
width : -webkit-calc( (100% - 1.5em) / 2 );
width : calc( (100% - 1.5em) / 2 );
}
.item.part2.margin>*{	/* □3.0□ */
width : -webkit-calc( (100% - 3.0em) / 2 );
width : calc( (100% - 3.0em) / 2 );
}
.item.part2.margin>*:nth-child(n+3){	/* 3番目以降 */
margin-top:3.0em;
}

/*------ 3列 ------*/
.item.part3>*{	/* □1.5□1.5□ */
width : -webkit-calc( (100% - 3.0em) / 3 );
width : calc( (100% - 3.0em) / 3 );
}
.item.part3.margin>*{	/* □3.0□3.0□ */
width : -webkit-calc( (100% - 6.0em) / 3 );
width : calc( (100% - 6.0em) / 3 );
}
.item.part3.margin>*:nth-child(n+4){	/* 4番目以降 */
margin-top:3.0em;
}
.item.part3::after{	/* ダミーカラム */
content:"";
display: block;
width : -webkit-calc( (100% - 3.0em) / 3 );
width : calc( (100% - 3.0em) / 3 );
}
.item.part3.margin::after{	/* ダミーカラム */
content:"";
display: block;
width : -webkit-calc( (100% - 6.0em) / 3 );
width : calc( (100% - 6.0em) / 3 );
}

/*------ 4列 ------*/
.item.part4>*{	/* □1.5□1.5□1.5□ */
width : -webkit-calc( (100% - 4.5em) / 4 );
width : calc( (100% - 4.5em) / 4 );
}
.item.part4.space-around>*{	/* 0.75□1.5□1.5□1.5□0.75 */
width : -webkit-calc( (100% - 6.0em) / 4 );
width : calc( (100% - 6.0em) / 4 );
}

@media only screen and (min-width:768px) and (max-width:900px) {	/* 幅の狭いPC用 */
	.item.part4>*{	/* □1.5□1.5□ */
	width : -webkit-calc( (100% - 3.0em) / 3 );
	width : calc( (100% - 3.0em) / 3 );
	}
	.item.part4.space-around>*{	/* 0.75□1.5□1.5□0.75 */
	width : -webkit-calc( (100% - 4.5em) / 3 );
	width : calc( (100% - 4.5em) / 3 );
	}

	.item.part4::after{	/* ダミーカラム */
	content:"";
	display: block;
	width : -webkit-calc( (100% - 3.0em) / 3 );
	width : calc( (100% - 3.0em) / 3 );
	}
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.item.part3:not(.tab2)>*,
	.item.part2:not(.tab2)>*{
	width:100%;
	}
	.item.margin:not(.tab2)>*:nth-child(n+2){	/* 2番目以降 */
	margin-top:3.0em;
	}
	.space-between,
	.space-around{
	justify-content:center;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.item.part4>*,
	.item.tab2>*{	/* □1.5□ */
	width : -webkit-calc( (100% - 1.5em) / 2 );
	width : calc( (100% - 1.5em) / 2 );
	}
	.item.part4.space-around>*{	/* 0.75□1.5□0.75 */
	width : -webkit-calc( (100% - 3.0em) / 2 );
	width : calc( (100% - 3.0em) / 2 );
	}

	.item.tab2.margin>*{	/* □3.0□ */
	width : -webkit-calc( (100% - 3.0em) / 2 );
	width : calc( (100% - 3.0em) / 2 );
	}
	.item.tab2.margin>*:nth-child(n+3){	/* 3番目以降 */
	margin-top:3.0em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.item.part4::after,
	.item.part3::after{	/* ダミーカラム非表示 */
	display:none !important;
	}
	.item[class*="part"].tab2>*,
	.item[class*="part"]>*{
	width:100% !important;
	}
	.item.margin>*:nth-child(n+2){	/* 2番目以降 */
	margin-top:3.0em;
	}
}



/*------------------------------------------------
  アクセスマップ 
------------------------------------------------*/
#accessmap{
margin:auto !important;
text-align:center;
border:1px solid #CCC;
}
#two_colomun_leftmenu #accessmap,
#two_colomun_rightmenu #accessmap{
width:610px;
}
#one_colomun #accessmap{
width:810px;
}


#accessmap IFRAME{
margin:4px;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#one_colomun #accessmap{
	padding:4px;
	width:92%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	}

	#accessmap IFRAME{
	margin:0;
	width:100%;
	height:300px;
	}
}


/*--------------------------------------------------------------------
  共通レイアウト枠
--------------------------------------------------------------------*/

MAIN{
margin:0 auto;
display:block;
padding-bottom:100px; /* フッター下部固定 */
width:960px;
text-align:left;
background:#FFF;
}
#one_colomun #content{	/* 「上メニュー」コンテンツ部  860px */
margin:20px 50px 50px 50px;
}
#two_colomun_leftmenu #content_top,	/* 「左メニュー」トップページ右側コンテンツ部 */
#two_colomun_leftmenu #content{	/* 「左メニュー」右側コンテンツ部 */
margin: 20px 0 50px 0;
float: right;
width: 710px;
}
#two_colomun_rightmenu #content_top,	/* 「右メニュー」トップページ左側コンテンツ部 */
#two_colomun_rightmenu #content{	/* 「右メニュー」左側コンテンツ部 */
margin: 20px 0 50px 0;
float: left;
width: 710px;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	MAIN{
	width:96%;
	}

	#one_colomun #content{	/* 「上メニュー」コンテンツ部  */
	margin:20px 0 50px 0;
	}
	#two_colomun_leftmenu #content_top,	/* 「左メニュー」トップページ右側コンテンツ部 */
	#two_colomun_leftmenu #content{	/* 「左メニュー」右側コンテンツ部 */
	float: none;
	width: 100%;
	}
	#two_colomun_rightmenu #content_top,	/* 「右メニュー」トップページ左側コンテンツ部 */
	#two_colomun_rightmenu #content{	/* 「右メニュー」左側コンテンツ部 */
	float: none;
	width: 100%;
	}


}

/*--------------------------------------------------------------------
  サイドメニュー欄 
--------------------------------------------------------------------*/
#two_colomun_leftmenu #global_navi,
#two_colomun_rightmenu #global_navi{
margin:20px 0 0 0;
width:200px;
background:#FFF;
}

#two_colomun_leftmenu #global_navi{	/* 「左メニュー」 */
float:left;
}
#two_colomun_rightmenu #global_navi{	/* 「右メニュー」 */
float:right;
}


#two_colomun_leftmenu #global_navi UL,
#two_colomun_rightmenu #global_navi UL{
width:200px;
border-top:1px solid #CCC;
}

#two_colomun_leftmenu #global_navi UL LI,
#two_colomun_rightmenu #global_navi UL LI{
margin:0;
padding:0;
floatn:none;
display:block;
background:none;
border-bottom:1px solid #CCC;
width:100%;
}


#two_colomun_leftmenu #global_navi UL LI A,
#two_colomun_rightmenu #global_navi UL LI A{
color:#000;
width:auto;
text-align:left;
background:#FFF;
/ padding:0.8em 0 0.8em 15px;
/ background:#FFF url(img/menu_arrow.gif) no-repeat 3px 1.05em;
}
#two_colomun_leftmenu #global_navi UL LI A:hover,
#two_colomun_rightmenu #global_navi UL LI A:hover{
background:#CCC;
color:#666;
text-decoration:none;
/ background:#CCC url(img/menuh_arrow.gif) no-repeat 3px 1.05em;
}
#two_colomun_leftmenu #global_navi UL LI A::before,
#two_colomun_rightmenu #global_navi UL LI A::before{
margin-left:7px;
margin-right:6px;
content: "\f0da";
font-family: "Font Awesome 5 Free";
font-weight : 900;
color:#006;
}
#two_colomun_leftmenu #global_navi UL LI:hover A::before,
#two_colomun_rightmenu #global_navi UL LI:hover A::before{
color:#FFF;
}
#two_colomun_leftmenu #global_navi UL LI.active A,
#two_colomun_rightmenu #global_navi UL LI.active A{
background:#E6E6FA;
/ background:#E6E6FA url(img/menu_arrow.gif) no-repeat 3px 1.05em;
}
#two_colomun_leftmenu #global_navi UL LI.active:hover A::before,
#two_colomun_rightmenu #global_navi UL LI.active:hover A::before{
color:#006;
}


/*--------------------------------------------------------------------
  ヘッダー
--------------------------------------------------------------------*/
HEADER{
margin:0;
/* background:#FFFACD;	 LemonChiffon */
background:#FFF;
min-width:960px;
}
#two_colomun_leftmenu HEADER,
#two_colomun_rightmenu HEADER{
border-bottom:1px solid #CCC;
}

.home HEADER{
height: 550px;
background:#FFF url(img/top.webp) center 30% no-repeat;
background-size:cover;
-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
position:relative;
text-align:left;
}

#header_inner{
margin:0 auto;
/* padding:50px 0 0 0;  初期値 */
padding:20px 0;
/* height:200px; 初期値 (250px)*/
text-align:left;
/* position:relative; */
width:960px;	/* 追加 */
}
.home #header_inner{
position:absolute;
top:0;
left:20px;
width:350px;
}


#header_inner H1{
margin:0 auto 10px auto;
}
#header_inner H1 A{
display:table;
transition: opacity 0.5s ease;
}
#header_inner H1 A:hover{
opacity:0.6;
}

#header_inner H1 A IMG{
vertical-align:top;
display:block;
}


#header_inner H2{
font-size:100.0%;	/* 14px */
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	HEADER{
	min-width:auto;
	min-width:initial;
	}
	#header_inner{
	padding:15px 0 10px 0;
	background-position:right 70px;
	background-size:cover;
	-webkit-background-size:cover;
	-moz-background-size:cover;
	-o-background-size:cover;
	-ms-background-size:cover;
	height:auto;
	width:100%;
	}

	#header_inner H1{
	margin:0 auto;
	padding:0;
/*	width:90%; */
	color:#FFF;
	position:static;
	transform:translate(0,0);
	display:inline-block;
	}
	#header_inner H2{
	display:none;
	}


	.home HEADER{
	height:auto;
	background:#FFF;
/*	background:#FFFACD;*/	/* LemonChiffon */

	}
	.home #header_inner{
	position:static;
	width:auto;
	}
	.home HEADER::after{
	content:"";
	display:block;
	width:100%;
	background-image:url(img/top.webp);
	background-repeat:no-repeat;
	background-position:center 30%;
	background-size:cover;
	-moz-background-size:cover;
	-webkit-background-size:cover;
	-o-background-size:cover;
	-ms-background-size:cover;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#header_inner H1 A{
	margin-left:5%;
	}
	.home HEADER::after{
	height:300px;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#header_inner{
	padding:60px 0 0 0;
	text-align:center;
	}
	#header_inner H1{
	margin:10px auto;
	width:90%;
	}
	#header_inner H1 A{
	margin:0 auto;
	}
	.home HEADER::after{
	height:250px;
	}

}

/*------------------------------------------------
  Homeボタン
------------------------------------------------*/
DIV#sp_home{
display:none;
z-index:101;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	DIV#sp_home{
	width:60px;
	height:60px;
	position:absolute;
	top:5px;
	display:block;
	}
	DIV#sp_home A{
	width:60px;
	height:60px;
	display: block;
	background:url(img/sp_nav.png) no-repeat 0 0;
	}
	DIV#sp_home A SPAN{
	display:none;
	}
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	DIV#sp_home{
	right:80px;
	}
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	DIV#sp_home{
	left:10px;
	}
}

/*------------------------------------------------
  メニューバー「上メニュー」
------------------------------------------------*/
#global_navi{
margin:0;
background:#06C;
}

/*------ 全体 ------*/
#global_navi > SPAN{
display: none;
}
#global_navi LI{
position: relative;
}
#global_navi LI A{
display: block;
}

/*------ PCメインメニュー第一階層 ------*/
#global_navi UL{
margin:0 auto;
padding:0;
width:961px;
display:table;
white-space:nowrap;
background:url(img/global_menu_bg.png);
table-layout:fixed;
}

#global_navi UL LI{
margin: 0;
padding:0;
display:table-cell;
}


#global_navi UL LI A{
margin:0 1px 0 0;
padding:0.8em 0;
display: block;
background:#06C;
color:#FFF;
text-decoration:none;
text-align:center;
transition: background 0.5s;
}
#global_navi UL LI:first-child A{
margin:0 1px;
}

#global_navi UL LI A:hover{
background:#396;
}

#global_navi UL LI.active A{
background-image:url(img/active.png);
background-position:center bottom;
background-repeat:no-repeat;
}

/*------ 英文 ------*/
#global_navi UL LI A SPAN{
display:block;
font-size:71.4%;	/* 10px */
}


/*------ スマホ横以下用 ------*/
@media only screen and (max-width:768px) {
	
	/* ------ スマホ：メインメニューアウトライン ------ */

	#two_colomun_leftmenu #global_navi,
	#two_colomun_rightmenu #global_navi,
	#global_navi{
	margin:0;
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:5px;
	background:none;
	}
	#global_navi > SPAN{
	display:block;
	padding:0;
	position:absolute;
	top:5px;
	right:10px;
	width: 60px;
	height: 60px;
	text-align: left;
	text-indent: -9999px;
	background:url(img/sp_nav.png) no-repeat -60px 0;
	cursor:pointer;
	}

	UL#globalmenu LI SPAN{
	display: block;
	}


	UL#globalmenu.open{
	display: block;
	font-size:112.5%;	/* 18px */
	}

	#global_navi > SPAN.open{
	background:url(img/sp_nav_close.png) no-repeat 0 0;
	}

	/*------------------------------------------------
	  スマホ：メインメニュー第一階層
	------------------------------------------------*/
	#two_colomun_leftmenu #global_navi UL,
	#two_colomun_rightmenu #global_navi UL,
	UL#globalmenu{
	margin:0 auto;
	width:100%;
	min-width:auto;
	min-width:initial;
	max-width:auto;
	max-width:initial;
	height: auto !important;
	display: none;
	position: absolute;
	top:65px;
	right:0;
	border-top:none;
	filter:alpha(opacity=97); /*IE*/
	-moz-opacity:0.97; /*FF*/
	opacity:0.97;
	z-index:110;	/* IE7以下でプルダウンメニューが隠れるための対策 */
	}
	#global_navi:target > UL#globalmenu{
	display: block;
	}
	#two_colomun_leftmenu #global_navi UL LI,
	#two_colomun_rightmenu #global_navi UL LI,
	UL#globalmenu>LI{
	margin:0 !important;
	padding:0 !important;
	display:block;
	clear:both;
	float: none !important;
	background-image:none;
	text-align:center;
	border-top:solid 1px #999;
	border-bottom:none;
	}

	#two_colomun_leftmenu #global_navi UL LI A,
	#two_colomun_rightmenu #global_navi UL LI A,
	UL#globalmenu>LI>A,
	UL#globalmenu>LI>A:visited{
	margin-left:0 !important;
	padding:0.5em 10px !important;
	line-height:2em !important;
	height:auto;
	font-size:112.5%;	/* 18px */
	clear:both;
	text-align:center;
	background-image:none;
	text-decoration:none;
	width:auto !important;
	}
	#two_colomun_leftmenu #global_navi UL LI A:hover,
	#two_colomun_rightmenu #global_navi UL LI A:hover,
	UL#globalmenu>LI>A:hover{
	}
	#two_colomun_leftmenu #global_navi UL LI.active A,
	#two_colomun_rightmenu #global_navi UL LI.active A,
	UL#globalmenu >LI.active >A{
	background:#03C;
	}
	UL#globalmenu >LI.active >A:hover{
	}

	#global_navi > ul > li:last-child{ border-bottom:none; }
	#global_navi > ul > a:after{ top: 60%; }
	#global_navi > ul:not( :target ) > a:first-of-type,
	#global_navi > ul:target > a:last-of-type{ display: block; }

	#two_colomun_leftmenu #global_navi UL LI A::before,
	#two_colomun_rightmenu #global_navi UL LI A::before{
	margin:0;
	content: "";
	display:none;
	}

	#global_navi UL LI A SPAN{
	display:none;
	}

}

/*--------------------------------------------------------------------
  パンくず・アンカー
--------------------------------------------------------------------*/
/*------------------------------------------------
  パンくずリスト
------------------------------------------------*/
#pkl{
font-size:85.7%;	/* 12px */
}
#one_colomun #pkl{
margin:15px 0;
}
#two_colomun_leftmenu #pkl,		/* 「左メニュー」 */
#two_colomun_rightmenu #pkl{	/* 「右メニュー」 */
margin:0;
}


/*------------------------------------------------
  アンカー 
------------------------------------------------*/
#pt{
margin:0 auto;
position: relative;
width:960px;
height:20px;
clear:both;	/* 左右分割をクリア */
font-size:120.0%;	/* 12px */
}
#pt A{
padding:0.5em 0;
display:block;
color:#FFF;
background:#666;	/* フッター背景色と同じ色 */
width:9em;
text-align:center;
text-decoration:none;
position: absolute;
bottom:20px;
right:0;
}
#pt A:hover{
color:#CCC;
}




/*--------------------------------------------------------------------
  フッター
--------------------------------------------------------------------*/
FOOTER{
margin-top: -60px;	/* フッター下部固定 */
height:60px;		 /* フッター下部固定 */
padding:0 0 0 0;
font-size:71.4%;	/* 10px */
background:#666;
color:#FFF;
min-width:960px;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#pt{
	width:96%;
	}
	FOOTER{
	min-width:auto;
	min-width:initial;
	}
}




/*--------------------------------------------------------------------
  clearfix
--------------------------------------------------------------------*/
/*------ 親要素にまとめて回り込み解除 ------*/
#global_navi::after,
MAIN::after,
#appeal::after,
#news DL::after{
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

#global_navi,
MAIN,
#appeal,
#news DL{
display: inline-table;
min-height:1%;  /* for IE 7*/
}

/* Hides from IE-mac \*/
* html #global_navi,
* html MAIN,
* html #appeal,
* html #news DL{
height: 1%;
}
#global_navi,
MAIN,
#appeal,
#news DL{
display: block;
}
/* End hide from IE-mac */



/*------ 個別に回り込み解除 ------*/
.clearfix:after{
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix{
display: inline-table;
min-height:1%;  /* for IE 7*/
}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

