@charset "utf-8";
body {margin:0px;color:#333333;background-color:#ffffff;font-size:100%;line-height:1.5;font-family:"Hiragino Kaku Gothic ProN","メイリオ",sans-serif;-webkit-text-size-adjust:100%;}
header ,article ,footer ,section ,h1,h2,h3,hr{clear:both;}/*-clear-*/
article ,section ,nav ,dl,ul,div{padding:0px 0px 5px;overflow:auto;}/*-hasLayout-*/
h1,h2,h3,h4,h5,p,dl,ul,ol {margin-top:0px;}
ul,ol{padding-left:30px;}
#Map,#Map *,#jump{padding:0px;overflow:visible;}
#jump a{position:absolute;width:0px;height:0px;overflow:auto;text-indent:-1000em;}
#jump a:focus{width:12em;height:1.5em;text-indent:0px;background:#ffffff;text-align:center;}
textarea {max-width:95%;}
#TOP{min-width:1000px;}
a{color:#14465f;text-decoration:underline;}
a:hover img{opacity:0.8;}
img{border:none; /* vertical-align:middle; */}


/* contents base */
/* width */
header .wrap,
header nav ul,
.contents .wrap,
footer .wrap { width: 1100px; margin: 0 auto;}
.contents .wrap { padding-left: 10px; padding-right: 10px; box-sizing: border-box;}

body { min-width: 320px;}

/* bg */
header { background-color: #ffffff;}
.contents {
  position: relative; background-color: #F2EDDD;
  &:before {
    position: absolute; content: ""; display: block; top: 0px; left: 0px; right: 0px; height: 0px; box-shadow: 0 0 .3rem .2rem rgba(64,64,64,.2);
  }
}

/*---------------*/
header .title { float:left;}
header .wrap .title,
header h1 { width: 342px; height: 76px; margin: 10px 0 0; float:left; overflow: hidden;;}
header .wrap .title a { display:block;}
header h1 img,
header .title img { max-width: 100%; height: auto;}

/* G NAV */
header nav { padding-bottom: 0px;}
header nav .menu_button { display:none;}
header nav ul { padding: 0px; list-style: none;}
header nav ul li { width: 20%; margin: 0px; padding: 0px; float:left;}
header nav ul li a { position: relative; display: flex; align-items: flex-end; justify-content: center; height: 105px; margin: 2px 2px 0; padding-bottom: 6px; font-size: 1.2em; font-weight: bold; color: #000; text-decoration: none; text-align: center; transition-duration: 0.2s; box-sizing: border-box;}
header nav ul li a:hover,
header nav ul li a:focus { background-color: #F3EEDE;}
header nav ul li a:before { position: absolute; content: ""; display: block; top: 12px; left: 0px; right: 0px; height: 46px; background: center center no-repeat; transition-duration: 0.2s;}
header nav ul li.menu01 a:before { background-image: url(../img/r5_01_menu_ico_01.png);} 
header nav ul li.menu02 a:before { background-image: url(../img/r5_01_menu_ico_02.png);} 
header nav ul li.menu03 a:before { background-image: url(../img/r5_01_menu_ico_03.png);} 
header nav ul li.menu04 a:before { background-image: url(../img/r5_01_menu_ico_04.png);} 
header nav ul li.menu05 a:before { background-image: url(../img/r5_01_menu_ico_05.png);} 


/* UD */
header .page_control{float:right;}
header .page_control ul,
#UD dl,
#UD dl dt,
header .page_control dl dd {margin:0px 1px;padding:0px;float:left;list-style:none;}
header .page_control ul li {margin:2px 0px 2px 10px;padding-top:5px;float:left;}
#UD dl.color_change,
#UD dl.textsize_change{margin:0px;padding:5px 0px 0px 0px;float:left;}
#UD dl dt{padding:0px 3px 0px 0px;background:no-repeat center center;text-indent:-1000em;}
#UD dl.color_change dt {width:50px;background-image:url(../img/control_collar_title.png);}
#UD dl.textsize_change dt {width:80px;background-image:url(../img/control_font_title.png);}
#UD dl dd a,
header .page_control ul li a,
header .page_control form.search label.search_txt{display:block;height:44px;background:no-repeat center center;}
header .page_control ul li a.announce {width:140px;background-image:url(../img/bt_voice.png);}
header .page_control ul li a.language {width:140px;background-image:url(../img/bt_language.png);}
header .page_control dl dd a img { width: 28px; height: auto; margin: 8px;}
header .page_control form.search {width: 362px;margin:18px 0px 0px;float:right;text-align:center;}
header .page_control form.search label.search_txt{display:block; float:left; width:132px; height: 37px; margin-right: 8px; line-height: 40px;}
header .page_control form.search input#search_txt {display:block;width:74%; padding:9px 2%;margin: 0%;border:none;background-color:#fafafa;float:left;}
header .page_control form.search input#search_txt:focus { background-color:#ffffff;outline: none;}
header .page_control form.search input.search_bt { width:20%; height: 29px; color:#ffffff;padding:3px 0px;margin: 2px 1% 2px 1%;font-weight:bold;background-color:#2b2b2b;border:none;float:left;font-family:"Hiragino Kaku Gothic ProN","メイリオ",sans-serif;-webkit-appearance:none;}
header .page_control form.search input.search_bt:hover { opacity: 0.9;}
header .page_control form.search .search_box { width: 214px; padding: 2px; background:#ffffff; box-shadow: inset 0px 0px 0px 1px #cccccc;}
header .page_control form.search .search_inner { padding: 0px; background-color: #ffffff;}

#UD{ position: relative; width:auto; margin-top: 14px; float:left; transition-duration:0.5s; z-index:1000;}
#UD.fade{opacity:1;}
#UD dl.color_change, #UD dl.textsize_change{ min-width: 0px; margin: 0px 2px; padding: 0px; overflow:hidden;}
#UD dl dt{ display:block; height:44px; margin:0px; padding:0px; background:no-repeat center center; background-size:80% 80%; text-align:center; cursor: pointer;}
#UD dl.color_change dt, #UD dl.textsize_change dt{ width: 44px; background-color: #333333; border-radius: 50%;}
#UD dl.color_change dt{background-image:url(../img/button_contrast.png);}
#UD dl.textsize_change dt{background-image:url(../img/button_font.png);}
#UD dl dd{width:0px;margin:0px;overflow:hidden;transition-duration:0.5s;}
#UD dl dd a{height:44px;margin:0px !important;padding:0px 0px 0px;text-align:center;}
#UD dl.active dd{width:52px;}

input.search_bt:hover { cursor: pointer;}


/* contents */
.contents { margin:0px auto; padding: 20px 0px; min-height: 640px;}
.contents .wrap { width:1100px; margin: 0px auto 10px; padding: 10px;}
.contents article { margin-bottom: 20px; padding: 10px 20px; min-height: 500px;background: #ffffff; overflow: visible;}

.contents .locus { padding: 0.2em 0 0 35px;  background: url(../img/ico_home.png) left center no-repeat;}

.contents article h1 { position: relative;margin: 0px -30px 20px; padding: 0.75em 40px; color: #ffffff; background: #333333;}
.contents article h1:before {
  position: absolute; content: ""; display: block; bottom: -10px; left: 0px;
  border-top: 5px solid #AAAAAA; border-right: 5px solid #AAAAAA; border-bottom: 5px solid transparent; border-left: 5px solid transparent;
}
.contents article h2 { font-size: 1.4em; padding: 0.3em 1em 0.2em; background: url(../img/bg_tile_02.png) #FDF1E1; border-bottom: 2px solid #333333;}
.contents article h3 { font-size: 1.3em; padding: 0.3em 1em 0.2em; border-bottom: 2px solid #AAAAAA;}
.contents article h4 { font-size: 1.2em; padding: 0.3em 0.5em; border-bottom: 1px dotted #949494;}
.contents article h5 { font-size: 1.1em; padding: 0.3em 0.5em;}
.contents article h6 { font-size: 1.05em;}

.contents article h4,
.contents article h5,
.contents article h6 { margin-bottom: 0.5em;}

.contents article ol {padding-left:2em;}
.contents article ul{list-style:none;padding-left:0px;}
.contents article ol li,.contents article ul li{margin-bottom:0.3em;}
.contents article ul li{padding-left:2em;}
.contents article ul li:before{top:0.4em;left:0.9em;width:0.5em;height:0.5em;background:#333333;border-radius:50%;}
.contents article table{border-collapse: collapse;margin-bottom:15px;}
.contents article table caption{padding:4px 0px;}
.contents article table table,.contents article table ul,.contents article table ol,.contents article table table dl{margin-bottom:0px;}
.contents article table th,.contents article table td{padding:0.5em;border: 2px solid #CDCDCD}
.contents article table th {background: #FDF1E1;}
.contents article table.wide_table{display:block;width:100%;overflow:auto;}
.contents article table.wide_table caption{display:block;}
.contents article table.wide_table tbody{display:table;}
.contents article .image_box {width:100%;margin:0px 0px 10px;}
.contents article .image_box figure {max-width:31%;margin:5px 1%;padding:0px;float:left;background:#dddddd;}
.contents article .image_box figure img {margin:1%;max-width:98%;height:auto;}
.contents article .image_box figcaption {position:static;width:auto;margin:0px;padding:3px;text-align:center;}
.contents article .imagetable table{max-width:50%;float:left;}
.contents article .imagetable table th{min-width:6em;}
.contents article .imagetable figure{max-width:50%;margin:0px;float:right;}
.contents article .acrobat {margin:8px 15px 8px;padding:8px;border:3px solid #EFEFEF;}
.contents article .acrobat .icon {margin:0px 8px 0px 0px;border:none;float:left;}
.contents article .acrobat p{margin:0px;font-size:0.9em;}
/*
.contents nav {width:225px;float:left;}
*/
.contents nav ul,
.contents nav dl{padding:0px;list-style:none;}
.contents nav dl dt{padding:0.5em;background:#ff0000;}
.contents nav dl dd{margin:0px;}
.contents nav dl dd a{display:block;padding:0.5em;}

.top dl.news { font-size: 0.9em;}
dl.news dt { padding: 0.5em 0.5em 0em;}
dl.news dd { margin: 0em 0em 1em; padding: 0.5em 0.5em; border-bottom: 1px dotted #aaaaaa;}
dl.news dt span { margin-left: 1em; padding: 0.25em 1em; text-align: center; color: #ffffff; background: url(../img/bg_tile_02.png) #aaaaaa; border-radius: 0.2em;}
dl.news dt span.flag_info { background-color: #842F31;}
dl.news dt span.flag_child { background-color: #2F4D26; padding-left: 1.5em; padding-right: 1.5em;}
dl.news dt span.flag_event { background-color: #937D46; }

/* menu page */
.contents ul[class^="menu_"] { list-style: none; margin: 1em 2em; padding-left: 0px;}
.contents ul[class^="menu_"] li { padding-left: 0px; margin-bottom: 2em; box-sizing: border-box; }
.contents ul[class^="menu_"] li:before { display: none;}
.contents ul[class^="menu_"] li a { position: relative; display: block; font-size: 1.2em; text-decoration: none; box-sizing: border-box; width: 100%;}
.contents ul[class^="menu_"] li a:before {
  position: absolute; display: block; content: ""; overflow: visible; transition-duration: 0.2s;
  top: 0.2em; bottom: 0.3em; width: 0.3em; height: auto; background: url(../img/bg_tile_03.png) #E3BB8A; border-radius: 0%;
}
.contents ul[class^="menu_"] li a:hover:before { background-color: #333333;} 

.contents ul.menu_01 li a { padding-left: 1.5em;}
.contents ul.menu_01 li a:before { left: 0em;}
.contents ul.menu_02 li { width: 31%; margin-left: 3.5%; margin-right: 0em; background-color: #FCEAD2; float: left;} 
.contents ul.menu_02 li:nth-child(3n-2) { margin-left: 0%; clear: both;}
.contents ul.menu_02 li a { width: 100%; height: 100%; padding: 1.8em 0.75em 1.8em 2em;}
.contents ul.menu_02 li a:before { top: 2em; bottom: 2em; left: 1em;}

/* footer */
footer { padding-top: 36px; color: #ffffff; background: url(../img/r5_bg_02.png) #383838;}

footer .heading { display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center;}
footer nav { margin-bottom: 2.5rem;}
footer nav a {
  position: relative; display: inline-block; margin: .5em 1em; padding-left: 16px; color: #fff; text-decoration: none;
  &:before { position: absolute; content: ""; display: block; top: 0em; bottom: 0em; left: 0px; width: 12px; background: url(../img/r5_arrow_12-18_gray.png) center center no-repeat;}
}
footer nav a:hover,
footer nav a:focus { text-decoration: underline;}

footer h2 { width: 100%; max-width: 330px;}
footer h2 img { max-width: 100%; height: auto;}

footer .address { display: flex; justify-content: space-between;}
footer .address_wrap { margin-right: 1em;}
footer .qr { margin: 0; padding: 0; list-style-type: none;}
footer .qr li { width: 140px; max-width: 100%; background-color: #fff; color: #000; text-align: center;}
footer .qr h3 { margin: 0; padding: .75em .3em 0em; font-size: 1em; font-weight: normal;}
footer .qr img { border: 10px solid #fff;}

footer .reread_link { position: fixed; width: 80px; height: 80px; margin: 0; padding: 0; bottom: 44px; right: 10px; z-index: 120; border-radius: 50%; box-shadow: 0 0 .3em .1em rgba(128,128,128,.3);}
footer .reread_link a { position: relative; display: block; width: 100%; height: 100%; padding: 0; color: #fff; text-indent: -1000em; border: 2px solid #fff; background: #474747; border-radius: 50%; box-sizing: border-box; opacity: 1; overflow: hidden;}
footer .reread_link a:before { position: absolute; display: block; content: ""; width: 26px; height: 26px; top: calc(50% - 13px); left: calc(50% - 13px); background: url(../img/r5_05_arrow_top.png) center center no-repeat; transition-duration: 0.2s;} 

footer .reread_link a:hover,
footer .reread_link a:focus { opacity:.8;}
footer .reread_link a:hover:before,
footer .reread_link a:focus:before { top: calc(50% - 19px);}

.copyright { text-align: center;}

/*
footer .address { float: left; margin-bottom: 2em;}
footer .address dt { margin-bottom: 10px;}
footer .address dd { margin-left: 10px;}
footer .qr { float: right; padding: 0px; margin: 0px; list-style: none; text-align: center;}
footer .qr li { float: left; background-color: #ffffff; margin: 10px 0px 10px 30px ;}
footer .qr li:first-child { margin-left: 0px;}
footer .qr li h2 { margin-bottom: 0px; padding: 0.5em 0px; background-color: #9d9d9d; font-size: 0.8em;}
footer .qr li h2 + img { margin: 15px 30px;}
footer nav { clear: both; float: left;}
footer nav a { position: relative; display: inline-block; margin: 0em 0.5em 0em 1.5em; padding-left: 15px; color: #ffffff; float: left; text-decoration: none;}
footer nav a:before { position: absolute; content: ""; display: block; top: 0em; bottom: 0.1em; left: 0px; width: 10px; background: url(../img/footer_arrow.png) center center no-repeat; transition-duration: 0.2s;}
footer nav a:hover:before { left: 3px}
footer .copyright{ margin: 0px; text-align: right; float: right;}
*/

.contents article ul li{position:relative;}
.contents article ul li:before{display:block;content:" ";position:absolute;}
.font_kyoutyo{font-weight:bold;}
.font_coment{font-size:80%;}
.font_red{color:#ff0000;}


/******************************************************************************************************/
/* READ LINK */
#Map,#Map *,#jump{padding:0px;overflow:visible;}
#jump a{position:absolute;width:100%;height:0px;text-align:center;overflow:hidden; box-shadow: 0px 0px 0px 2px #aaaaaa inset; transition-duration: 0.2s;}
#jump a:focus{height:2.5em;text-indent:0px;background:#ffffff; line-height: 2.5em; z-index:1000;}
#TOP{padding:0px;}

.font_kyoutyo{font-weight:bold;}
.font_comment{font-size:80%;}
.font_red{color:#ff0000;}

/* table */
.contents article table.noborder,
.contents article table.noborder th,
.contents article table.noborder td{border:none;}
.contents article table.widetable{display:block;max-width:100%;overflow:auto;border:none;}
.contents article table.widetable caption{display:block;}
.contents article table.widetable tbody{display:table;}

/* YouTube */
.contents article .mv_area{position:relative;height:0px;width:100%;/*max-width:715px*/;margin:1em 0;padding-top:56.25%;overflow:hidden;}
.contents article .mv_area.normal_wide{padding-top:75%;}
.contents article .mv_area iframe{position:absolute;top:0px;left:0px;width:100%;height:100%;}
.contents article .mv_area p{margin:0.5em 0;font-size:0.9em;}

/* よくある質問 */
.contents article .qanda dt{border-bottom:1px dotted #333333;}
.contents article .qanda dd{margin:0px;}
.contents article .qanda dt:before,article dl.qanda dd:before{content:"Q";padding-right:0.2em;color:#333333;font-size:240%;font-family:"monospace";border-radius:45%;}
.contents article .qanda dd:before{content:"A";color:#880000;}

/* IMAGE BOX */
.contents article .box-image { padding: 1em 0 0;}
.contents article .box-image li { margin: 0 1% 1%; padding: 0; float: left; text-align: center; }
.contents article .box-image li:before { display: none;}
.contents article .box-image li img { max-width: 100%; height: auto;}
.contents article .box-image li p { padding-top: 0.5em; font-size: 0.8em;}

.contents article .box-image.single li { width: 60%; padding-left: 19%; padding-right: 19%; float:none;}
.contents article .box-image.double li { width: 48%;}
.contents article .box-image.triple li { width: 31.3333333333%;}
.contents article .box-image.quadruple li { width: 23%;}
.contents article .box-image.pentadruple li { width: 18%;}
.contents article .box-image.hexatruple li { width: 14.6666666666%;}

.contents article .box-image.double li:nth-child(2n+1),
.contents article .box-image.triple li:nth-child(3n+1),
.contents article .box-image.quadruple li:nth-child(4n+1),
.contents article .box-image.pentadruple li:nth-child(5n+1),
.contents article .box-image.hexatruple li:nth-child(6n+1),.contents article .box-image li.clear{clear:both;}

.contents article .image_box {margin: 0px 0px 10px; padding-bottom: 0;}
.contents article .image_box img{max-width: 100%; height: auto;}
.contents article .image_box_center {min-width:240px; width: 50%; max-width: 80%; margin: 0px auto 10px; padding-right: 2em;}
.contents article .image_box_left,
.contents article .image_box_right {max-width: 50%; }
.contents article .image_box_left {float: left; margin-right: 10px;}
.contents article .image_box_right {float: right; margin-left: 10px;}
.contents article .image_box_left p,
.contents article .image_box_right p{padding-top: 0.5em; font-size: 0.85em; text-align:center;}

/* overview table */
.contents article .overview_list{margin:1em 0 0;}
.contents article .overview_list dt{width:10.5em;margin:0;padding:0 0 .7em 0;float:left;clear:both;}
.contents article .overview_list dd{margin:0 0 1em;padding:0 0 .7em 11em;border-bottom:1px dotted #333333;}
.contents article .overview_table{margin:1em 0;padding:0;width:auto;max-width:100%;}
.contents article .overview_table th{width:25%;}

/* event section */
.contents article .event_section .event{margin:.8em;padding:1.7em 1.2em 0.7em 1.2em;border:3px solid #c6c6c6;}
.contents article .event_section .event dt{width:7.5em;margin:0 0 .7em 0;padding: .3em 0;font-weight:bold;background:#F0F0F0;color:#333333;text-align: center;float:left;clear:both;}
.contents article .event_section .event dd{margin:0 0 1em;padding: .3em 0 .8em 8.6em;border-bottom:1px dotted #666666;}

/* file section */
.contents article .file_section ul.file_list li:before{ top: 0px; bottom: 0px; left: 4px; height: auto; width: 1em; max-width: 16px; background: url(../img/file_list_mark.gif) center center no-repeat; background-color: transparent; border-radius: 0px; background-size: contain;}
.contents article .file_section ul.file_list li.pdf:before { background-image: url(../img/file_list_mark_pdf.png);}
.contents article .file_section ul.file_list li.doc:before { background-image: url(../img/file_list_mark_doc.gif);}
.contents article .file_section ul.file_list li.xls:before { background-image: url(../img/file_list_mark_xls.gif);}

/* news section */
.contents article .news_section { position: relative;}
.contents article .news_section dl dt,
.contents article .news_section dl dd { padding: 0.8em 0px 0.7em;}
.contents article .news_section dl dt { width: 9.5em; padding-left: 0.5em; float: left;}
.contents article .news_section dl dd { margin-left: 0px; padding-left: 10em; border-bottom: 1px dotted #888888;}
.contents article .news_section a.more { position: absolute; display: block; top: 0px; right: 0px; padding: 0.5em; text-align: center; background-color: #cccccc;}

/* section */
.contents article .menu_section p.nodata,
.contents article .event_section p.nodata,
.contents article .news_section p.nodata { padding: 0px 1em; margin-bottom: 2em;}

/* 施設ページ */
.contents article .mapbox .overview_table{float:left;}
.contents article .mapbox .box-image{width:230px;float:right;}

/* イベントカレンダー */
.contents article .calendar_section table{width:100%;}
.contents article .calendar_section table td{vertical-align:middle;}
.contents article .calendar_section table td.center{text-align:center;}
.contents article .calendar_section table tr.day0{background-color:#FFDDDD;} /* 日曜・祝日 */
.contents article .calendar_section table tr.day6{background-color:#CDDFFF;} /* 土曜日 */
.contents article .calendar_section table td .weekday{font-size:.85em;}
.contents article .calendar_section table td .font_comment{display:block;}
.contents article .navgation{font-size:.9em;width: auto;margin: 0;clear:both;float:none;list-style-type:none;}
.contents article .navgation .previous_month{float:left;}
.contents article .navgation .next_month{float:right;}

.event .contents .nav h2{border-bottom:1px solid #ccc;font-size:1.05em;}
.event .contents .nav ul{margin:0;padding:0;}
.event .contents .nav li{display:block;padding:.3em;}
.event .contents .event_icon li{position:relative;min-height:24px;line-height:24px;padding-left:32px;}
.event .contents .event_icon li:before{display:block;content:" ";position:absolute;border-radius:0px;top:0;bottom:0;left:4px;width:24px;height:24px;margin:auto 0;background:none no-repeat 0 0;background-color:transparent;}

/* 施設マップ */
.map .contents article .map_cate li{display:inline;}
.map .contents article .map_cate ul.menu { padding-top: 0.5em; padding-bottom: 0.5em;}
.map .contents article .map_cate ul.menu li{ padding: 0em 0.5em 5px 2em;border:none;}
.map .contents article .map_cate ul.menu li:before{ top: 0.2em;}


.contents article .map_section .left_menu_list{width:34%;margin:0 1% 0 0;padding:0;float:left;}
.contents article .map_section .left_menu_list h2{font-size:1.3em;background:initial;border:none;border-bottom:3px solid #CFEDF3;}
.contents article .map_section .mapobject_list{width:auto; margin:0px;overflow:auto;padding:.4em;max-height:20em;}
.contents article .map_section .mapobject_list small{overflow:visible;}
.contents article .map_section .mapobject_kind{height:250px;width:auto;max-height: 20em;margin: 0px; overflow:auto;padding:.2em .4em;line-height:1.25em;}
.contents article .map_section .right_contents{width:64%;margin:2.1em 0 0 1%;padding:0;float:right;}
.contents article .map_section .right_contents *{overflow:visible;padding:0;}
.contents article .map_section .mapobject_map{width:auto;height:600px;border:1px solid #ddd;}
.contents article .map_section .mapobject_map .gm-style,
.contents article .map_section .mapobject_map .gm-style div{font-size:1em!important;font-weight:normal!important;line-height:1.3;}
.contents article .map_section .mapobject_map .gm-style .gm-style-cc span,
.contents article .map_section .mapobject_map .gm-style .gm-style-cc a,
.contents article .map_section .mapobject_map .gm-style .gm-style-mtc div,
.contents article .map_section .mapobject_map .gm-style .gm-style-iw{font-size:0.8em!important;font-weight:normal!important;line-height:1.3;}

/* custom search */
.contents article .search_result_google *{overflow:visible;}
.contents article .search_result_google table,
.contents article .search_result_google table tr,
.contents article .search_result_google table th,
.contents article .search_result_google table td{border:none;}
.contents article .search_result_google .gsc-results .gsc-cursor {display: block;text-align: center;}
.contents article .search_result_google .gsc-results .gsc-cursor-box .gsc-cursor-page{padding:.5em;border:1px solid #ccc;}
.contents article .search_result_google .gsc-results .gsc-cursor-box .gsc-cursor-current-page{border:2px solid #ccc;}
.contents article .search_result_google .gsc-control-cse div{padding:0;}
.contents article .search_result_google .gsc-control-cse div.gs-title{padding:.6em 0;}
.contents article .search_result_google .gsc-control-cse div.gsc-option {padding: 0.3em 1em;}
.contents article .search_result_google .gcsc-branding-img-noclear{max-width:unset;}
.contents article .search_result_google .gsc-webResult.gsc-result,
.contents article .search_result_google .gsc-results .gsc-imageResult{border:none;}

/* form */
.form .contents article .overview_list dt{width:12.5em;}
.form .contents article .overview_list dd{padding-left:13em;}
.form .contents article input[type="text"]:focus{outline:none;border:1px solid #CFEDF3;}
.form .contents article input[type="text"] {line-height:1.1em;border:1px solid #999999;max-width:90%;}
.form .contents article .formsubmit input[type="submit"] {margin-right:0.5em;}
textarea#iken { width: 100%; box-sizing: border-box;}
/******************************************************************************************/

.contents article .news .left{float:left;}
.contents article .news .right{float:right;}
.contents article .news{clear:both;}
.contents article .calender .left_box{float:left;}
.contents article .calender .right_box{float:right;width:60%;}
.contents article .calender{clear:both;}
.contents article .event_table .center{width:9em;}
.contents article .event_table ul li{padding-left:0px;}
.contents article .event_table ul li::before{background:none;}

@media screen and (min-width: 0px) and (max-width: 1120px) {
textarea ,
#TOP,
header ,
header .wrap .title,header h1 ,
.contents ,
.contents article ,
.contents article .image_box figure ,
.contents article .image_box figure img ,
.contents article .imagetable table,
.contents article .imagetable table th,
.contents article .imagetable figure,
.contents nav ,
footer {position:static;width:auto;min-width:0px;max-width:100%;float:none;}

header h1 img,
 header .title img { max-height: 76px;}

header nav ul li a img { position: static; margin: 72px auto 0px;}
  
/* contents base */
/* width */  
  header .wrap,
  header nav ul,
  .contents .wrap,
  footer .wrap { width: auto; margin: 0 auto;}

  header .wrap,
  .contents .wrap,
  footer .wrap{ padding-left: 2.5%; padding-right: 2.5%;}

  
/* UD */
#UD{position:fixed;width:auto;bottom:17px;right:-2px;/* opacity:0; */transition-duration:0.5s; z-index: 1001;}
#UD.fade{opacity:1;}
#UD dl.color_change, #UD dl.textsize_change{min-width:0px;margin:0px 2px;padding:0px;border-radius:26px;border:3px solid #9d9d9d;overflow:hidden; background-color: rgba(64,64,64,0.6);}
#UD dl dt{display:block;height:44px;margin:0px;padding:0px;background:no-repeat center center;background-size:80% 80%;opacity:1;text-align:center;}
#UD dl.color_change dt, #UD dl.textsize_change dt{width:44px;}
#UD dl.color_change dt{background-image:url("../img/button_contrast.png");}
#UD dl.textsize_change dt{background-image:url("../img/button_font.png");}
#UD dl dd{width:0px;margin:0px;overflow:hidden;transition-duration:0.5s;}
#UD dl dd a{width:44px;text-align:center;}
#UD dl.active dd{width:48px;}


/* search */
  header .page_control,
  header .page_control form.search { width: auto; margin-top: 0.5em; float: none;}
  header .page_control form.search .search_box { width: auto;}
  header .page_control form.search label.search_txt { width: 110px;}
  header .page_control form.search input#search_txt { width:84%;}
  header .page_control form.search input.search_bt { width:10%;}

  
  .contents { min-height: auto;}
  .contents ul[class^="menu_"] { margin-left: 2.5%; margin-right: 2.5%;}
  .contents ul.menu_02 li { width: 47.5%; margin-left: 5%;} 
  .contents ul.menu_02 li:nth-child(3n-2) { margin-left: 5%; clear: none;}
  .contents ul.menu_02 li:nth-child(2n-1) { margin-left: 0%; clear: both;}
  
  footer .reread_link{ width: 52px; height: 52px; bottom: 100px; right: 0px;}
  footer .reread_link a{ height:52px; padding: 0px;}
  /*
  footer .reread_link a:before { top: 2%;}
  */
  footer .reread_link a:hover:before { top: 4px;}
  footer .reread_link a img{ width: auto; max-width: 100%; height: auto; margin-top: 18px;}
  footer .copyright { float: none; text-align: center;}
  footer .address,
  footer .qr { float: none; clear: both; margin-bottom: 2em;}
  footer .qr { margin-left: auto; margin-right: auto; text-align: center;}
  footer .qr li { display: inline-block; margin: 15px; float: none;}
  footer .qr li:first-child { margin-left: 15px;}
  footer .qr li h2 + img { margin: 20px;}
  .contents article .calender .right_box{width:auto;}

  footer .heading { display: block;}
  footer nav { text-align: center;}
  footer .address { display: block;}
  

}
@media screen and (min-width: 0px) and (max-width:660px) {
  .not{position:static;width:auto;min-width:0px;max-width:100%;float:none;}
  
  header .wrap .title,
  header h1 { width: 242px; width: calc( 100% - 52px - 2.5%); margin: 10px 0px 5px;}
  
  header .page_control ul,header nav ul{display:none;}  
  header nav .menu_button{display:block;}
  header nav .menu_button{ position: fixed; top: 10px; right: 0px; height: 44px; width: 44px; padding-bottom: 0px; display: block; border: 3px solid #9d9d9d; border-radius: 7px; z-index: 1000; overflow: hidden;}
  header nav .menu_button a{ display: block; width: 100%; height: 100%; background: #000000; transition-duration: 0.2s;}
  header nav .menu_button.active a { background-color: #ffffff;}

  header .page_control form.search input#search_txt { width:74%;}
  header .page_control form.search input.search_bt { width:20%;}

  /* G NAVE */
  header nav ul { position: fixed; top: 0%; bottom: 0%; right: 0%; width: 95%; padding-top: 72px; background: url(../img/bg_tile_01.png) rgba(0,0,0,0.9); z-index: 999; box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.4);}
  header nav ul li { float: none; width: 100%; border-bottom: 1px solid rgba(0,0,0,0.3); background-color: rgba(255,255,255,1);}
  header nav ul li:first-child { border-top: 1px solid rgba(0,0,0,0.3);}
  header nav ul li a { height: 72px; align-items: center; padding: 0 64px; overflow: hidden;}
  header nav ul li a:before { top: 0px; bottom: 0px; left: 12px; height: auto; width: 50px;}
  header nav ul li a img { max-width: none; margin: 24px 0px 0px;}

  .contents ul.menu_02 li { width: 100%; margin-left: 0%; float: none;} 
  .contents ul.menu_02 li:nth-child(3n-2),
  .contents ul.menu_02 li:nth-child(2n-1) { margin-left: 0%;}
  
  footer { padding-bottom: 130px;}
  footer .address a { color: #ffffff !important;}

  footer nav { float: none; clear: both; margin-bottom: 2em; }
  footer nav a { display: block; float: none; margin: 0 auto; padding: 1em 2em; border-bottom: 2px dotted rgba(255,255,255,0.4); }
  footer nav a:first-child { border-top: 2px dotted rgba(255,255,255,0.4);}
  footer nav a:before { left: 1em;}
  footer nav a:hover:before { left: 1.2em;}
  
/******************************************************************************************/
  /* IMAGE BOX */
  .contents article .box-image.single li { width: 98%; padding-left: 0%; padding-right: 0%;}
  .contents article .box-image.quadruple li { width: 48%;}
  .contents article .box-image.pentadruple li,
  .contents article .box-image.hexatruple li { width: 31.3333333333%;}

  .contents article .box-image.pentadruple li:nth-child(5n+1),
  .contents article .box-image.hexatruple li:nth-child(6n+1) { clear: none;}

  .contents article .image_box_left,
  .contents article .image_box_right { width: 100%; max-width: none; margin: 10px 0px; float: none; clear: both;}

  /* event section */
  .contents article .event_section .event dt{width: auto;float:none;}
  .contents article .event_section .event dd{ padding: 0.3em 0px 0.8em 0px;}

  /* news section */
  .contents article .news_section dl dt { width: auto; padding-bottom: 0px; float:none;}
  .contents article .news_section dl dd { padding-top: 0.3em; padding-left: 1em;}
  .contents article .news_section a.more { position: static; display: block; top: inherit; right: inherit;}

  /* overview table */
  .contents article .overview_list dt{ width: auto; float:none;}
  .contents article .overview_list dt:first-of-type { padding-top: 0.7em; border-top: 1px dotted #333333;}
  .contents article .overview_list dd{ padding: 0px 0px 0.7em 1em;}
  .contents article .overview_table th{width: auto;}
  .contents article .overview_table th,
  .contents article .overview_table td{ display: block; clear: both; border-bottom: none;}
  .contents article .overview_table tr:last-of-type td { border-bottom: 1px solid #666666;}
/******************************************************************************************/
}
@media screen and (min-width: 0px) and (max-width:320px) {
  header nav ul li a { padding-right: 10px;}
}

/* UD add */
#UD dl * { box-sizing: border-box;}
#UD dl dd { display: flex; justify-content: center; align-items: center; height: 44px;}
#UD dl dd a {
  display: flex; justify-content: center; align-items: center; width: 38px; height: 38px; border: 2px solid #666; border-radius: 50%;
  font-weight: bold; text-decoration: none;
}
#UD dl.textsize_change a { background-color: #000; color: #fff;}
#UD dl.color_change dd.high a { background-color: #000; color: #fff;}
#UD dl.color_change dd.default a { background-color: #fff; color: #000;}
#UD dl.color_change dd.low a { background-color: #aaa; color: #000;}

/* AForm */
#rufous-sandbox+div {height:800px}
.aform-header {font-size:130%;font-weight:bold;margin:1em 0}
.aform-hdln {font-size:120%;font-weight:bold;margin:2em 0 0.5em;padding:3px 0;border-bottom:1px dotted #ccc}
.aform-note {margin:1em 0}
.aform-input[type="text"],.aform-text,.aform-email,.aform-password,.aform-tel,.aform-url,.aform-number,.aform-date,.aform-time,.aform-textarea,.aform-select,.aform-name,.aform-kana,.aform-zipcode,.aform-prefecture,.aform-calendar {font-size:16px;padding:5px;width:100%;box-sizing:border-box}
.aform-field-option-text {font-size:16px;padding:5px;width:auto;box-sizing:border-box;margin-left:5px;vertical-align:middle}
.aform-checkbox,.aform-radio {margin-right:5px;vertical-align:middle}
.aform-required {color:#fff;font-size:82%;font-weight:normal;margin-left:5px;padding:2px;display:inline-block;line-height:1;border-radius:3px;background:#d92b00;vertical-align:text-top}
.aform-validation {color:#595959;font-size:90%;font-weight:normal}
.aform-input-example {color:#595959;font-size:90%;font-weight:normal;margin-bottom:0.3em}
.aform-error {color:#d92b00}
.aform-input.error {color:#d92b00}
.aform-input.valid {}
.aform-content ul,.aform-content li {list-style:none;margin:0;padding:0}
@media (min-width:40em) {
 .aform-name-ul,.aform-kana-ul {display:flex}
  .aform-name-ul li,.aform-kana-ul li {flex:1}
  .aform-name-ul li+li,.aform-kana-ul li+li {margin-left:1em}
}
.aform-horizontal-ul li {display:inline-block;margin-right:1em}
.aform-twice-note {display:block;margin-top:0.5em}
.aform-content dl {margin:0.5em 0;padding:0.5em 0}
.aform-content dl dt {font-weight:bold}
.aform-content dl dd {margin:0 0 0.5em}
.aform-button-area {margin-top:20px;padding:15px 20px;background:#f3f3f3;text-align:center}
.aform-button-area input {margin:0 6px;padding:2px 16px;font-size:120%}
.aform-content p.powerdby {text-align:right;font-size:70%;margin:1em 0}
.aform-content p.powerdby a {color:#fff;padding:0 5px;background:#bad7e4;text-decoration:none}
.aform-content p.powerdby a:hover {background:#75aeca}
.aform-content .aform-demo {text-align:center;margin:2em 0;padding:5px 10px;border:1px solid #ee7ba0;background:#fdecf1}
.aform-content .aform-demo a {color:#903;font-weight:bold;margin:0 5px}
.aform-error-list {margin-bottom:20px}
.aform-error-list dt {float:none;width:auto;font-size:120%;margin-bottom:10px;padding-left:16px}
.aform-error-list dd {padding-left:inherit;margin-left:16px;display:list-item}
#aform_result {color:#c00;font-weight:bold;font-size:110%;margin:15px auto;padding:10px 15px}
#aform_result a {margin:0 1em}
.aform-calendar {width:auto;margin-right:5px;vertical-align:middle}
.aform-calendar+label {margin-right:5px;vertical-align:middle}
.aform-content .ui-datepicker-trigger {margin-left:5px;vertical-align:text-top}
.ui-datepicker .ui-widget-header {color:inherit}
.aform-payment li {margin-bottom:0.8em}
.aform-payment .aform-payment-description {margin-left:22px;margin-top:3px}
.aform-payment .aform-payment-description table th {font-weight:normal;padding:2px 5px 2px 0;vertical-align:top;text-align:left}
.aform-payment .aform-payment-description table td {padding:2px 5px 2px 0}
.aform-payment .aform-payment-description .aform-input {width:auto}
.contents article .aform-content ul li::before {display:none;}
.contents article .aform-content ul li{padding-left:0;}
.aform-header{display:none;}
.txtbox .aform{max-width:720px;}
.aform-error-list dt{padding-left:0;}
.aform-error-list dd{padding-left:1em;color:#f20000;position:relative;}
.aform-error-list dd:before{position:absolute;content:"";display:block;background:#f20000;width:0.75em;height:0.75em;left:0;top:0;bottom:0;margin:auto;border-radius:100%;}

@media screen and (min-width:661px) {html body #menu{display:block !important;}}

@media screen and (-webkit-min-device-pixel-ratio:2){header .page_control form.search input{font-size:16px;}}