@charset "UTF-8";

/* Reset */
*,*:before,*:after {box-sizing: border-box;}

ul {list-style:none;}
ul,li {margin:0; padding:0;}

ol {padding:0; margin:0 0 1em 1.5em;}
ol li {margin-bottom:0.5em;}
ol ol {margin-top:1em;}

a {color:#282828; text-decoration:none; outline:none;}
.txt_link a {color: #0c9; text-decoration: underline;}

img {vertical-align:middle;}

dl,dt,dd {margin:0;}

address,caption,em,th {
	font-style:normal;
}

/* Fluid-img */
/*img {width:100%; height:auto;}*/


/* --------------------------------------------------
	ベース
-------------------------------------------------- */
html {/*color:#282828; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;*/ font-weight: 500; font-size:3.733vw; line-height:1.7; height:100%;}/* 基準フォントサイズは14px */

/* --------------------------------------------------
	共通
-------------------------------------------------- */
/* PC用のもは非表示 */
.pc_only {display:none !important;}

/* 見出し一旦クリア & H1〜H3は明朝体 */
h1,h2,h3,h4,h5,h6 {margin:0 0 0.5em; font-size:1em; line-height:1.35;}

/* 段落 */
p {margin:0 0 0.75em;}

/* インデント */
.indent {text-indent:-1em; margin-left:1em;}

/* 画像 */
figure {margin:0;}

/* アコーディオン */
.trigger {cursor: pointer;}
.acordion_tree {display: none;}

/* ノーマルリスト */
.normal_list {list-style:disc; margin-left:1.75em; margin-bottom:1em; line-height:1.5;}
.normal_list li {margin-bottom:0.5em;}
.normal_list.square {list-style:square;}
.normal_list.decimal {list-style:decimal;}

/* 注意書きリスト */
.caution_list {margin-bottom:1em;}
.caution_list li {padding-left:1em; margin-bottom: 0.5em; position:relative;}
.caution_list li:before {content:"※"; position:absolute; top:0; left:0;}



/* 注意書き（段落） */
p.caution {font-size: 0.857em; padding-left:1em; position:relative;}
p.caution:before {content:"※"; position:absolute; top:0; left:0;}

/* インラインブロック（ウインドウ幅によって途中で改行される場合にキレのいいところで改行させるため） */
.inline_block {display:inline-block;}

/* リンクボタン & button */
.btn01 a {display:inline-block; background-color: #f7f7f7; color:#282828; border: 1px solid #ddd; border-radius: 4px; line-height:1; padding:0.35em;}

/* ページャー change 20180124 */
.pager {text-align:center; margin-top:1.5em;}
.pager ul {display:flex; justify-content: center;}
.pager li {margin: 0 2px;}
.pager li a {display:block; padding:0.5em 0.75em; color: #666; border:1px solid #666; line-height:1;}
.pager .current a {background-color:#666; color:#fff;}
.pager li a:hover {background-color: #999; color: #fff; border-color: #999;}

/* --------------------------------------------------
フォーム
-------------------------------------------------- */
/* 必須項目注意書き */
form .hissu {font-size:0.75em; color:#f00; margin-bottom:1.5em;}

/* 入力エリア */
input[type="text"],textarea {-webkit-appearance: none; background-color:#fff; border:1px solid #ccc; border-radius:0; font-size:16px; padding: 0.4em; width:100%; box-sizing:border-box; line-height:1.5;}
textarea {height:10em;}
::-webkit-input-placeholder {color:#aaa;}

/* ラジオボタン */
input[type="radio"] {display:none;}
input[type="radio"] + label {position:relative; padding-left:1.5em; display: inline-block;}
input[type="radio"] + label:before {display:block; position:absolute; top:calc(50% - 0.6em); left:0; width:1.2em; height:1.2em; content: ""; border:1px solid #ccc; border-radius:50%; background-color:#fff; cursor: pointer;}
input[type="radio"]:checked + label {color:#f39800;}
input[type="radio"]:checked + label:after {display:block; position:absolute; top:calc(50% - 0.6em); left:0; width:1.2em; height:1.2em; content:""; border-radius:50%; background-color:#f39800;}

/* 送信ボタン */
button {display:block; width: 100%; line-height:1; padding:1em 0; text-align: center; background-color: #f79646; color: #fff; font-size: 1.125em; font-weight: bold; border: none;}


/* --------------------------------------------------
	レイアウト・セクション・見出し等
-------------------------------------------------- */
#contents {padding: 0 2.67vw; margin-bottom: 8vw;}
section {margin-bottom: 8vw;}

section h1 {font-size: 1.143em; padding-bottom: 0.5em; margin-bottom: 1em; border-bottom: 3px solid #1eb8cb;}
#home section h1 {font-size: 1.07em;}
section h1 span {color: #0c9; font-size: 0.67em; margin-left: 1em;}
section h1 span.date {display: block; color: #999; font-size: 0.75em; margin-left: 0; margin-top: 0.2em;}

#main_cont h2 {font-size: 1.07em; border-left: 4px solid #1eb8cb; padding: 0.17em 0 0.17em 0.5em; margin-bottom: 1em;}
#main_cont h2 + .caution {font-size: 0.8em; margin: -1em 0 1em 0;}

section h3 {border-bottom: 1px solid #1eb8cb; border-top: 1px solid #1eb8cb; padding: 0.5em 0; margin: 1em 0;}

/* --------------------------------------------------
	下層ページ共通
-------------------------------------------------- */
/* パンクズリスト */
#breadcrumb {font-size: 0.857em; margin: 0.5em 0 1em;}
#breadcrumb li {display:inline-block;}
#breadcrumb li a {color: #0c9;}
#breadcrumb li a:after {margin:0 0.5em; content: ">"; color: #ccc;}

/* ページタイトル */
#page_ttl h1 {font-size: 1.43em;}

/* PHOTOボックス */
.fig_box {margin: 0 1em;}
.fig_box figure {margin-bottom: 1em;}
.fig_box figcaption {font-size: 0.857em; margin-top: 0.75em; text-align: center;}

/* PHOTOボックス ２列〜４列 */
.fig_box.col4 {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fig_box.col4 figure {width: 48%;}

/* 段落文字 */
#contents section p {margin-bottom: 1.5em;}
#contents section.p_btm05em p {margin-bottom: 0.5em;}

/* リード（大カテゴリの説明文） */
#page_ttl .lead {background-color: #f7f7f7; padding: 0.5em; margin-bottom: 1.5em;}

/* ページ内アンカーリンク */
#anchor_link {border: 1px solid #e1e1e1; padding: 1em 1em 0.5em; margin-bottom: 2em;}
#anchor_link h1 {font-size: 1.07em; border-bottom: 1px solid #e1e1e1; padding-bottom: 0.5em; margin-bottom: 1em;}
#anchor_link li {margin-bottom: 0.5em; padding-left: 1em; position: relative;}
#anchor_link li:before {content: "▶︎"; display: block; color:#E4B717; font-size: 0.57em; margin-right: 0.5em; position: absolute; top: 0.57em; left: 0;}

/* 表 */
.history_list dt {color: #666; font-weight: bold;}
.history_list dd {margin-bottom: 0.75em; padding-bottom: 0.75em; border-bottom: 1px dotted #ccc;}

/* テーブル基本 */
table {width: 100%; margin-bottom: 1em;}
table th {background-color: #f7f7f7; white-space: nowrap;}
table th,table td {border: 1px solid #e1e1e1; padding: 0.5em; text-align: center;}

/* テーブルTYPE01 ボーダー無しTR間隔あり */
table.type01 tr {border-bottom: 8px solid #fff;}
table.type01 th,table.type01 td {border: none;}
table.type01 td {text-align: left;}

/* テーブルレスポンシブ01 SP時上部ヘッダを左サイドへ展開 */
table.resp01 {display: block; position: relative; width: 100%;}
table.resp01 thead {display: block; float: left;}
table.resp01 thead tr {display: block;}
table.resp01 thead th {border-bottom: none;}
table.resp01 thead th:last-child {border-bottom: 1px solid #e1e1e1;}
table.resp01 tbody {display: block; width: auto; position: relative; overflow-x: auto; white-space: nowrap;}
table.resp01 tbody tr {display: inline-block; border-right: 1px solid #e1e1e1;}
table.resp01 th,table.resp01 td {display: block;}
table.resp01 tbody th, table.resp01 td {border: none; border-top: 1px solid #e1e1e1;}
table.resp01 tbody tr td:last-child {border-bottom: 1px solid #e1e1e1;}

/* オレンジディスク */
.orange_disc {color: #E4B717; font-size: 0.625em; margin: 0 0.5em; vertical-align: text-top;}

/* Google Map */
.map {margin-bottom: 2em;}
.map iframe {width: 100%; height: 47vw;}

/* イメージ Map */
img[usemap="#ImageMap"] {max-width: 100%; height: auto;}

/* --------------------------------------------------
	 お問合わせ
-------------------------------------------------- */
#contact sup {color: #f79646;}
#contact_caution {height: 40vw;}
#contact_caution .mCSB_inside > .mCSB_container {margin-right: 20px;}
#contact_caution .mCSB_scrollTools {width: 4px;}
#contact_caution .mCSB_scrollTools .mCSB_draggerRail {background-color: #f3f3f3; width: 4px;}
#contact_caution .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {background-color: #0c9;}

#contact_form {font-size: 16px; background-color: #f7f7f7; padding: 1em;}
#contact_form dt {margin-bottom: 0.5em;}
#contact_form dd {margin-bottom: 1em;}


#main .headLine01{ display: block; width: 100%; margin-bottom: 20px;}

/* --------------------------------------------------
	 768px〜　タブレット
-------------------------------------------------- */
@media print, screen and (min-width : 768px) {
	
html {font-size:14px;}


/* --------------------------------------------------
	共通
-------------------------------------------------- */
a:hover {color:#f79646; transition: all 0.5s ease;}
a:hover img {opacity: 0.75; transition: all 0.25s ease;}


.sp_only {display:none !important;}
.pc_only {display:block !important;}

/* リンクボタン */
.btn01 a:hover {background-color:#f79646; color: #fff; border-color: #f79646; transition: all 0.25s ease;}

/* 送信ボタン */
button {width: 300px; margin: 0 auto;}

/* --------------------------------------------------
	コンテンツレイアウト・セクション・見出し等
-------------------------------------------------- */
#contents {max-width: 1040px; margin: 40px auto 80px; padding: 0 20px;}
section {margin-bottom: 30px;}

section h1 {font-size: 1.43em;}
section h1 span.date {font-size: 0.6em;}

section h2 {font-size: 1.286em;}
section h2 + .caution {font-size: 1em;}

section h3 {font-size: 1.14em;}

/* --------------------------------------------------
	下層ページ共通
-------------------------------------------------- */
/* レイアウト */
#contents.col2 {display: flex; flex-wrap: wrap; justify-content: space-between;}
#side_navi {width: 23%}
#main_cont {width: 75%;}
#page_ttl {width: 100%;}
#main_cont img {/*width: auto; height: auto;*/ margin: 0 2vw;}

/* パンクズリスト */
#breadcrumb {width: 100%; margin:20px 0 30px; font-size:1em; border: none;}

/* ページタイトル */
#page_ttl h1 {font-size: 2.14em;}

/* サイドナビ */
#side_navi li {font-size: 1.143em; font-weight: bold; margin-bottom: 1px; display: inline-block;}
#side_navi li a,#side_navi li .trigger {display:block; background-color: #f7f7f7; padding:0.75em 1em 0.75em 0.5em; position: relative;}
#side_navi li a {padding: 0.75em 0.5em 0.75em 1.5em;}
#side_navi a:before {content: "▶︎"; color: #f79646; font-size: 0.5em; position:absolute; top:50%; left:1em; transform: translateY(-50%);}
#side_navi .trigger:after {content:"▼"; color: #f79646; font-size: 0.5em; position:absolute; top: 50%; right:1em; transform: translateY(-50%);}
#side_navi .trigger.active:after {content:"▲";}
#side_navi .acordion_tree li {font-size: 0.875em; font-weight: normal; margin-bottom: 0; border-bottom: 1px dotted #ccc;}
#side_navi .acordion_tree li:last-child {border: none;}
#side_navi .acordion_tree a {background-color: #fff;}
	
#side_navi .banner01{ margin: 1em 0;}	
#side_navi .banner01 img { width: 100% !important; height: auto;}
#side_navi .banner01 a:before {content:none;}


#side_navi li a:hover,#side_navi li .trigger:hover {background-color: #ccc;}
#side_navi .acordion_tree a:hover {background-color: #eee;}

/* PHOTOボックス ２列 */
.fig_box.col2 {display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 0 20px;}
.fig_box.col2 figure {width: 48%; margin-bottom: 0;}
.fig_box figcaption {font-size: 1em;}


/* PHOTOボックス ４列 */
.fig_box.col4 {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fig_box.col4 figure {width: 24%;}

/* PHOTOボックス・フロート右 */
.fig_r:after {content: ""; clear: both; display: block;}
.fig_r .fig_box {float: right; width: 40%; margin: 0 0 1.5em 1.5em;}
.fig_r .fig_box figure img {width: 100% !important; height: auto;}	

/* PHOTOボックス・フロート無し */
.fig_box.no_float {float: none; width: 60%; margin: 0 auto;}

/* 段落文字 */
#contents section p {font-size: 1.143em;}

/* リード（大カテゴリの説明文） */
#page_ttl .lead {font-size: 1.143em; padding:1em; margin-bottom: 30px;}

/* ページ内アンカーリンク */
#anchor_link {margin-bottom: 30px;}


/* リスト */
.history_list:after {content: ""; clear: both; display: block;}
.history_list dt {float: left; padding-top: 0.1em;}
.history_list dd {font-size: 1.07em; padding-left: 6.4em;}

/* テーブル共通 */
table th,table td {padding: 0.75em;}

/* テーブルTYPE01 */
table.type01 {font-size: 1.07em;}

/* テーブルレスポンシブ01 PC時左サイドのヘッダを上部へ戻す */
table.resp01 {display: table;}
table.resp01 thead {display: table-header-group; float: none;}
table.resp01 thead tr {display: table-row;}
table.resp01 thead th {border: 1px solid #e1e1e1;}
table.resp01 tbody {display: table-row-group;}
table.resp01 tbody tr {display: table-row; border: none;}
table.resp01 th,table.resp01 td {display: table-cell;}
table.resp01 tbody th, table.resp01 td {border: 1px solid #e1e1e1;}

/* テーブル２列 */
.tbl_box.col2 {display: flex; justify-content: space-between;}
.tbl_box.col2 table {width: 48%;}

/* Google Map */
.map {margin-bottom: 30px;}
.map iframe {height: 360px;}

/* --------------------------------------------------
	 新着情報
-------------------------------------------------- */
body:not(#home) .info_list dl:after {content: ""; clear: both; display: block;}
body:not(#home) .info_list dt {float: left; padding-top: 0.15em;}
body:not(#home) .info_list dd {font-size: 1.07em; padding-left: 5.5em;}

/* --------------------------------------------------
	 お問合わせ
-------------------------------------------------- */
#contact_caution {height: auto;}
#contact_caution ol {font-size: 1.143em;}

#contact_form {padding: 50px;}
#contact_form dl:after {content: ""; clear: both; display: block;}
#contact_form dt {float: left; margin: 0.4em 0 0;}
#contact_form dd {padding-left: 11em; margin-bottom: 2em;}


}

/* --------------------------------------------------
	 1024px〜　PC
-------------------------------------------------- */
@media print, screen and (min-width : 1024px) {

}

/* --------------------------------------------------
	 1240px〜
-------------------------------------------------- */
@media print, screen and (min-width : 1240px) {

}

/* --------------------------------------------------
	 1560px〜
-------------------------------------------------- */
@media print, screen and (min-width : 1560px) {
	
}

