﻿@charset "utf-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

html{
    overflow-y: scroll;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

input, textarea,{
	margin: 0;
	padding: 0;
}

ol, ul{
    list-style:none;
}

table{
    border-collapse: collapse; 
    border-spacing:0;
}

caption, th{
    text-align: left;
}

a:focus {
	outline:none;
}

.clearfix:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*ﾂ･*//*/
	height: auto;
	overflow: hidden;
	/**/
}

.both{
	clear:both;
}

.inline_block {  
	display: inline-block;  
	*display: inline;  
	*zoom: 1;  
}
/* よく使うCSS start*/

img {
	max-width:100%;
}

table {
	width:100%;
}

a,a:hover,a:before,a:after,a:hover:before,a:hover:after {
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

a img:hover {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
}


*,*:before,*:after{-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}

/*--root--*/
:root{
--green:#008730;
--d_brown:#341000;
--orange:#fbc64c;
--yellow:#fff100;
--link_color:#3a84df;
--link_hover:#5f84f2;
}

/*--body--*/
body{position:relative;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-webkit-text-size-adjust: 100%;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
/*font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
*/
}

a{color:var(--link_color); text-decoration:none;cursor:pointer}
a:hover{color:var(--link_hover);}
/*a:visited{color:#999;}*/

.pc{display:block;}
.pc.inline{display:inline-block}
.smp{display:none;}

.f_l{float:left;}
.f_r{float:right;}

.ind1{text-indent:1em;}
.sml{font-size:.72em;}
.bold{font-weight:bold;}

.mt1{margin-top:1em;}
.mt2{margin-top:2em;}
.mt3{margin-top:3em;}
.mt4{margin-top:4em;}

.mb1{margin-bottom:1em}
.mb2{margin-bottom:2em;}
.mt3{margin-top:3em;}
.mt4{margin-top:4em;}

.fz_08{font-size:80%;}
.fz_12{font-size:120%;}

.red{color:#F00;}

.ta_c{text-align:center;}
.ta_r{text-align:right;}
.ta_l{text-align:left;}

article{position:relative}
section a[href$="pdf"]:after{content:url(/image/icons/icon_pdf.gif);margin-left:.5em;position:relative;top:2px}
section a[href$="doc"]:after,a[href$="docx"]:after{content:url(/image/icons/icon_doc.gif);margin-left:.5em;position:relative;top:2px}
section a[href$="xls"]:after,a[href$="xlsx"]:after{content:url(/image/icons/icon_xls.gif);margin-left:.5em;position:relative;top:2px}

.marugo{font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";}
.mincho{font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;}
img{display:block;max-width:100%;margin:0 auto}

ol.deci{list-style: decimal;margin-left:2em}
.wrap{width:1100px;margin:0 auto}
main{margin:0 auto;/*position:relative;*/background:url(../img/common/bg.png);padding-top:1em}

.flex{display:flex;margin:0 auto;justify-content:space-between;flex-wrap:wrap}
.flex.col3,.flex.col4{justify-content:flex-start}

.col3 li{width:32%;margin-right:2%}
.col3 li:nth-of-type(3n){margin-right:0}
.col4 li{width:23%;margin-right:2%}
.col4 li:nth-of-type(4n){margin-right:0}

/*--header--*/
header{padding:1em 0}
header a{text-decoration:none !important}
header .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;align-items: flex-end}
header div{width:30%;margin-left:2em}
header h2{width:65%;margin:0;line-height:0}
header h1{margin:.5em 0;line-height:0;}
header ul{display:flex;}
header ul li{margin:0 1em;}
header ul li a{color:#000;font-size:.8em;}
header li a img{display:inline-block;margin-right:.5em;transition:.4s}
header li a:hover img{filter:hue-rotate(90deg)}

header span{color:transparent;font-size:0;line-height:0}



/*--nav.modal(gmenu)--*/
.modal{margin:0 auto;background: linear-gradient(to bottom, rgba(128,92,34,1) 0%,rgba(90,51,23,1) 100%)}
.modal ul{width:1100px;border-left:1px #2b1400 solid;border-right:1px #cdad86 solid;margin:0 auto;padding:0;display:flex;justify-content:space-between}
.modal li:nth-of-type(n+6){display:none}
.modal li{width:20%;border-left:1px #cdad86 solid;border-right:1px #2b1400 solid}
.modal ul li a{text-align:center;padding:.8em 1em .4em;letter-spacing:.1em;font-weight:bold;line-height:1.4em;font-size:1.1em;display:block;color:#fff;background: linear-gradient(to bottom, rgba(128,92,34,1) 0%,rgba(90,51,23,1) 100%);transition:.4s}
.modal ul li a span{display:block;font-size:.8em;transition:.4s}

.modal li a:hover,
#top li.top a,#facility li.facility a,#reserve li.reserve a,#charge li.charge a,#usage li.usage a{
background: linear-gradient(to bottom, rgba(126,78,6,1) 0%,rgba(160,119,77,1) 100%);}

.modal li a:hover span,
#top li.top a span,#facility li.facility a span,#reserve li.reserve a span,#charge li.charge a span,#usage li.usage a span{
color:#fff100}

article div.hero{max-width:100%;margin: 0 auto}

/*--footer_head--*/
figure.footer{width:100%;margin-top:10em;padding-bottom:1ems;position:relative;text-align:center;background:url(../img/common/footer_head.png) bottom/contain no-repeat}


/*--footer--*/
footer{margin:0 auto 2em;position:relative;padding:1em 0;text-align:center;color:#fff;padding:1em 0 1em;background: linear-gradient(to bottom, rgba(127,90,34,1) 0%,rgba(90,51,23,1) 100%); }

p.gotop{position:fixed;z-index: 99;bottom: -60px;right: 50px;transition:.4s}
p.gotop a{display:inline-block;text-align:center;height:48px;width:48px;background:#cda342;position:relative;border-radius:50%}
p.gotop a:before{content:"";display:block;width:25px;height:20px;margin:auto;background:#341000;clip-path:polygon(0 100%,100% 100%,50% 0);position:absolute;top:0;left:0;right:0;bottom:0;transition:.4s}
p.gotop a:hover{background:#fbc64c}
p.gotop a:hover:before{bottom:.5em}

footer h2 img,footer h3 img{line-height:0;filter:invert(1) brightness(5);margin:1em auto}
footer h2 img{width:20%;margin-top:.5em}
footer h3 img{width:14%;margin-bottom:.5em}
footer h2 span,footer h3 span{font-size:0;color:transparent;line-height:0;position:absolute}
footer address{padding:.5em 0}
footer span.pc{display:block;margin:0 1em}
small{width:100%;padding:.5em 0;background:var(--d_brown);position:absolute;bottom:-2em;left:0}

p.btn{margin:1em auto;}

/*----*/
main section,main aside{width:1000px;margin:2em auto;position:relative}
h2.ttl{color:transparent;font-size:1.2em;font-weight:bold;letter-spacing:.1em;position:relative;padding:.4em .5em .5em 1em;border-radius:1em 1em 0 0;background: linear-gradient(to bottom, rgba(128,92,34,1) 0%,rgba(90,51,23,1) 100%);border-bottom:2px #fbc64c solid;text-align:left}
h2.ttl span{font-size:.9em;display:inline-block;margin-left:1em;letter-spacing:normal}
h2.ttl:before{display:inline-block;position:absolute;left:2em;top:.6em}
h2.ttl:after{display:inline-block;position:absolute;right:2em;bottom:0}

ul.dot{margin:1em auto;list-style:disc;padding-left:2em}

@media screen and (max-width: 540px){ 
.pc,.pc.inline{display:none;}
.smp{display:block;}
.smp.inline{display:inline-block}
.f_l,.f_r{float:none;}
.wrap,main section,main aside{width:100%}
main{width:100%;margin:1em auto 0;}

.flex.col3,.flex.col4{justify-content:space-between}
.col3 li,.col4 li{width:49%;margin-right:0}
    
/*--header--*/
header{padding:.5em}
header .wrap{padding:0 .5em}
header div{width:100%;margin-left:0}
header h2{margin:0}
header h2+a{width:100%}
header ul{display:none}
header ul+a{display:block;margin:0 auto;width:50%}
p.menu_btn{position:fixed;width:auto;top:.5em;right:.5em;text-align:center;z-index:100}
p.menu_btn a{background:#666;color:#fff;padding:.2em .5em;border:1px #666 solid}
p.menu_btn a:hover{color:#666;background:#fff}    
    
/*--modal--*/
.modal{background:none}
.modal ul{flex-wrap:wrap;line-height: 2em;font-weight: bold;width:85vw;margin: 0 auto;background:none;border:none;justify-content: center}
.modal li:nth-of-type(n+6){display:block;}
.modal li{width:80%;border-left:none;border-right:none;border-bottom: 1px #fff solid;}
.modal ul li a{padding:.2em .5em;background:none;line-height:1.2em}
.modal ul li a span{display:inline-block;margin-left:1em}
.modal li a:hover,
#top li.top a,#facility li.facility a,#reserve li.reserve a,#charge li.charge a,#usage li.usage a,
#download li.download a,#inquiry li.inquiry a,#access li.access a
{background:none;color:var(--yellow)}

/* ****************
 * Modal window
 * *************** */
.modal{
  position:fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 20px;
}
.modal:not(:target){
opacity:0;
visibility: hidden;
transition: opacity .4s linear visibility .4s linear;
/*transform: translate(0,100%);*/
}

/* Modal content */
.modal-inner {
  position:relative;
  margin:20% auto;
  padding:0;
  box-sizing: border-box;
  z-index:5000;
}

.modal a{color:#fff;}
.modal a:hover{background:rgba(255,255,255,.4);}

/* ****************
 * Modal close button
 * *************** */
.modal .close {
  display:block;
  position: absolute;
  top: 0;
  left: 0;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,.74);
  z-index:1;
}
.modal .close span {
  position: absolute;
  top: 5%;
  right: 5%;
  width: 40px;
  height: 40px;
  background-color: rgba(255,255,255,.5);
  cursor:pointer;
}
.modal .close span {
  text-indent: -9999px;
}
.modal .close span:before,
.modal .close span:after {
  content: "";
  position: absolute;
  top: 4px;
  border: 1px solid #fff;
  height: 30px;
}
.modal .close span:before {
  left: 19px;
  transform: rotate(-45deg);
}
.modal .close span:after {
  right: 19px;
  transform: rotate(45deg);
}

/* ****************
 * Append modal(target id)
 * *************** */
.modal:target{
  opacity: 1;
  visibility: visible;  
  /*transform: translate(0,0);*/
  transition: opacity .4s linear visibility .4s linear;
  z-index:100;
}
    

/*----*/
    
section{width:100%;margin:1em auto;}
footer{padding:1em 0}    
footer h2,footer h3{width:95%;margin:.5em auto}
footer h2 img{width:80%}
footer h3 img{width:50%}
footer span.pc{display:none}
}

