@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Dancing+Script&display=swap');

/* 
 default Style [
----------------------------------------------------------- */
html
  {
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
font-weight: 400;
height:100%;
margin-bottom:1px;
text-align: center;
overflow-y:scroll;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,p,blockquote,th,td,figure {
margin: 0;
padding: 0;
border: none;
list-style: none;
font-size: 16px;
}

h1,h2,h3,h4,h5,h6 {
font-size:100%;
font-weight:normal;
transform: rotate(.03deg);
}

p {
margin: 0;
color: #000000;
}

ol,ul {
list-style:none;
}

ol,ul li {
list-style: none;
text-align: left;
}

img { 
border:0;
vertical-align: top;
}

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

caption,th {
text-align:left;
}

address,caption,cite,code,dfn,em,strong,th,var {
font-style:normal;
}

a {
overflow: hidden;
cursor: pointer;
text-decoration: none;
}

.red {
color: #F00;
font-weight: normal;
}

form {
margin: 0px;
padding: 0px;
}

/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after, ul.post li:after,nav#mainNav .inner:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{zoom: 1;}

/*
 Base Link Color [
----------------------------------------------------------- */
a {
color: #000000;
text-decoration-skip-ink: none;
}

a:hover {
text-decoration: none;
color: #999999;
/*
text-align: right;
*/
}

a img,
a {
-webkit-transition: 0.3s ease-in-out;
   -moz-transition: 0.3s ease-in-out;
 -o-transition: 0.3s ease-in-out;
 transition: 0.3s ease-in-out;
}

a img {
-webkit-backface-visibility: hidden; /* 追加 */
backface-visibility: hidden; /* 追加 */
}


a:hover img {
opacity: 0.6;
filter: alpha(opacity=60);
}

img.object_fit_img{
object-fit: cover;
font-family: 'object-fit: cover;';
}

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_

パソコン向けスタイルおよび共通スタイルの指定

/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/*==========================================
 body
===========================================*/
body {
min-width: 100%;
text-align: center;
background-color: #FFFFFF;
width: 100%;
}

body.admin-bar {
position: absolute;
}

.spImg {
display: none;
}

.Toggle{display:none;}

/*==========================================
 ヘッダーのスタイル
===========================================*/
#headerTop {
background-color: #38AFE6;
position: absolute;
top: 0px;
z-index: 1;
width: 100%;
}

#headerTop .share {
display: flex;
flex-wrap:wrap;
justify-content: space-between;
align-items: center;
}

#headerTop .share h1.sp {
display: none;
}

#headerTop .share h1 {
color: #FFFFFF;
font-size: 0.75em;
padding: 15px 0;
}

#headerTop .share h1 a{ color: #fff;}

#headerTop .share .inner {
display: flex;
flex-wrap:wrap;
justify-content:flex-end;
}

#headerTop .share .inner p {
font-size: 1.125em;
margin-right: 23px;
}

#headerTop .share .inner p a {
color: #FFFFFF;
text-decoration: underline;
}

#headerTop .share .inner p a:hover {
color: #F7DE00;
text-decoration: none;
}

#headerTop input.searchBox {
background-color: #FFFFFF;
border-width: 0px;
padding:8px 15px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 248px;
}

#headerTop input.searchBtn {
border-width: 0px;
padding:8px 15px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
background-color: #33485D;
color: #FFFFFF;
}

#pcMenu {
position: absolute;
top: 48px;
z-index: 2;
display: flex;
justify-content: center;
background-image: url(./images/bg1.svg);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover;
padding:20px 0 44px;
width: 100%;
}

#pcMenu ul {
display: inline-flex;
background-image: url(./images/t_line.png);
background-repeat: no-repeat;
background-position: left 0%;
flex-wrap:wrap;
}

#pcMenu ul li {
background-image: url(./images/t_line.png);
background-repeat: no-repeat;
background-position: right 0%;
font-weight: bold;
}

#pcMenu ul li a {
padding:0 13px;
display: inline-flex;
flex-direction:column;
align-items: center;
height: 83px;
justify-content: space-between;
}

#pcMenu ul li a img {
margin-top: 8px;
}

#pcMenu ul li a strong {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
margin-bottom: 5px;
}

#pcMenu ul li.menu1 img {
margin-top: 15px;
}

#pcMenu ul li.menu2 img {
margin-top: 15px;
}

#pcMenu ul li.menu5 img {
margin-top: 10px;
}

#pcMenu ul li.menu6 img {
margin-top: 15px;
}

#pcMenu h1 a {
display: flex;
flex-direction: column;
justify-content: center;
padding: 0 40px;
}

#pcMenu h1 a img {
align-self: center;
width: 220px;
height: auto;
margin: 10px 0 0 0;
}

#pcMenu h1 a span {
font-size: 0.75em;
color: #41A0CB;
font-weight: bold;
}

#pcMenu h1 a:hover span {
opacity: 0.6;
filter: alpha(opacity=60);
}

.NavMenu {
display: none;
}

/*==========================================
 メインコンテンツ共通スタイル
===========================================*/
.share {
max-width: 1326px;
width: 98%;
margin: 0 auto;
text-align: center;
}

.share2 {
max-width: 1088px;
width: 100%;
margin: 0 auto;
text-align: center;
}


.shareStyle {
width: 100%;
text-align: center;
}

.NavMenu {
width: 100%;
background-color: #FFFFFF;
}

#pNavi {
background-color: #EBF9FF!important;
}

#pNavi .post:after {
display:inline;
}

#pNavi aside {
max-width: 1092px;
width: 99%;
text-align: left;
margin: 0 auto;
font-size: 0.875em;
padding: 10px 0;
}


/*==========================================
 フッターのスタイル
===========================================*/
footer {
width: 100%;
background-image: url(./images/footer_bg.png);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
padding-top: 40px;
background-color: #C8EEFF;
margin-top: 50px;
}

footer .inner {
display: flex;
flex-direction: row-reverse;
flex-wrap: wrap;
justify-content: center;
margin-bottom: 250px;
}

#footerInfo {
    text-align: left;
    background: #fff;
    padding: 10px;
    box-sizing:  border-box;
    border-radius: 10px;
    margin: 0 0;
    max-width: 500px;
}

#footerInfo aside {
color: #000000;
font-weight: bold;
}

#footerInfo address {
color: #000000;
}

footer .inner ul {
display: flex;
flex-wrap:wrap;
justify-content:flex-end;
margin: 0 0 1em 3em;
}

footer .inner ul li {
margin-left: 5px;
font-weight: bold;
}

footer .inner ul li a{ background: #fff; padding: 0 10px; box-sizing: border-box; border-radius: 50px;}

#copy {
color: #FFFFFF;
font-size: 0.75em;
text-align: right;
padding: 0 20px 20px 0;
}

#page-top {
display: none;
position: fixed;
bottom: 50px;
right: 10px;
z-index: 40;
}


/*==========================================
Other
===========================================*/
#mainBg {
position: absolute;
top: 0px;
width: 100%;
z-index: 0;
}

#mainBg figure.topImg img {
width: 100%;
height: 80vw;
}
@media only screen and (max-width: 1100px) and (min-width: 1px){
#mainBg figure.topImg img {
max-height: 560px;
height: 100vw;
min-height: 500px;
}
}

@media only screen and (max-width: 700px){
#mainBg figure.topImg img {
max-height: 450px;
height: 100vw;
min-height: 400px;
width: 100%;
}
}

.slick-initialized .slick-slide {
position: relative;
}

#mainBg p#topCaption {
position: absolute;
top: 690px;
color: #FFFFFF;
background-color: hsla(0,0%,0%,0.60);
right: 15px;
padding: 13px;
}

#topConcept {
background-image: url(./images/bg2.svg);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
top: 800px;
z-index: 10;
padding-top: 80px;
width: 100%;
position: absolute;
}

#topConcept figure img {
width: 288px;
height: auto;
}

#topConcept .inner {
background-image: url(./images/top_bg.png);
background-repeat: no-repeat;
background-position: center 95px;
}

#topConcept .inner h2 {
font-size: 1.75em;
font-weight: 700;
letter-spacing: 0.3em;
margin:27px 0 20px;
}

#topConcept .inner h2 span {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
}

#topConcept .inner p {
letter-spacing: 0.1em;
text-align: left;
width: 548px;
margin:0 auto 60px;
}

#topInfo {
z-index: 9;
width: 100%;
margin: 1400px 0 -130px;
background-image: url(./images/bg4.svg);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
padding-top: 200px;
position: relative;
bottom: 130px;
}

#topInfo .inner {
margin: 70px auto 0 auto;
padding-bottom: 50px;
max-width: 1200px;
background-image: url(./images/top_bg2.png);
background-repeat: no-repeat;
background-position: center 70px;
background-color: #EBF9FF;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

#information,
#twitter {
margin:0 35px 90px 0;
background-color: #FFFFFF;
border-radius: 5px;
-webkit-box-shadow: 10px 10px hsla(0,0%,0%,0.16);
box-shadow: 10px 10px hsla(0,0%,0%,0.16);
width: 363px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
text-align: left;
height: 444px;
}


#instagram {
margin:0 35px 90px 0;
-webkit-box-shadow: 10px 10px hsla(0,0%,0%,0.16);
box-shadow: 10px 10px hsla(0,0%,0%,0.16);
width: 363px;
height: 100px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
text-align: left;
}


#information h3,
#twitter h3 {
font-family: 'Dancing Script', cursive;
color: #38AFE6;
font-size: 3.75em;
text-align: center;
margin-top: -45px;
}

#information p,
#twitter p {
text-align: center;
font-weight: bold;
letter-spacing: 0.2em;
margin: 5px 0 15px;
}

#information dl,
#twitter div {
margin: 0 20px;
}

#information dl dt {
color: #38AFE6;
font-size: 0.75em;
font-weight: bold;
margin-right: 10px;
}

#information dl dd {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% bottom;
padding-bottom: 13px;
margin: 0 10px 15px 0;
}

#information dl dd:last-child {
background-image: none;
padding-bottom: 0px;
}

#information dl {
height: 325px;
overflow-y: scroll;
}

#twitter aside a {
margin: 0 20px;
text-align: center;
display: block;
background-color: #38AFE6;
border-radius: 4px;
color: #FFFFFF;
padding: 20px 0;
}

#twitter aside a:hover {
background-color: #79D375;
}

#topCharm {
padding-top: 63px;
}

#charmTit {
background-image: url(./images/mark2.png);
background-position: left top;
background-repeat: no-repeat;
display: inline-block;
text-align: center;
padding:0 0 20px 150px;
margin: 0 150px 50px 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#charmTit h2 {
font-size: 1.625em;
font-weight: bold;
letter-spacing: 0.4em;
}

#charmTit h2 span {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
}

#charmTit p {
font-size: 1.875em;
color: #38AFE6;
font-family: 'Dancing Script', cursive;
letter-spacing: 0.2em;
font-weight: 700;
}

#area {
background-image: url(./images/line.png);
background-repeat: repeat-x;
background-position: 0% top;
width: 800px;
margin: 0 auto;
text-align: center;
padding-top: 30px;
}

#area h3 {
color: #000000;
font-size: 1.125em;
font-weight: bold;
letter-spacing: 0.3em;
padding-bottom: 25px;
}

#area h3 span {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
}

#area ul {
background-image: url(./images/line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
padding-bottom: 30px;
margin-bottom: 38px;
display: flex;
flex-wrap:wrap;
justify-content: space-between;
}

#area ul li {
font-size: 1.125em;
}

#area ul li a {
color: #38AFE6;
text-decoration: underline;
}

#area ul li a:hover {
color: #C2C2C3;
text-decoration: none;
}

#areaLink {
display: flex;
flex-wrap: wrap;
justify-content: center;
width: 960px;
margin: 0 auto;
}

#areaLink figure {
margin: 0 10px 47px;
}

#areaLink figure img {
width: 300px;
height: 170px;
object-fit: cover;
}

#areaLink figure figcaption {
color: #FFFFFF;
font-size: 1.125em;
font-weight: bold;
letter-spacing: 0.3em;
display: block;
text-align: left;
position: relative;
bottom: 20px;
left: 5px;
margin-bottom: -20px;
}

#areaLink figure figcaption span {
display: inline-block;
padding:5px 5px 5px 10px;
min-width: 98px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
}

#areaLink figure figcaption span#area1 {
background-color: #60A83C;
}

#areaLink figure figcaption span#area2 {
background-color: #CB7041;
}

#areaLink figure figcaption span#area3 {
background-color: #A1992F;
}

#areaLink figure figcaption span#area4 {
background-color: #41B3CB;
}

#areaLink figure figcaption span#area5 {
background-color: #CB418B;
}

#areaLink figure figcaption span#area6 {
background-color: #2A55AB;
}

#mainBg2 {
width: 100%;
z-index: 0;
/*position: absolute;*/
/*top: 0px;*/
}

#mainBg2 img.object_fit_img{
width: 100%;
height: calc(100vw * 0.32);
max-height:640px;
}

#mainInner {
padding-bottom: 50px;
margin-top: 2em;
}

@media only screen and (min-width: 1700px) {
/*==========================================
 幅1700px以上 固定ヘッダー調節
===========================================*/
#pcMenu {
height:110px;
}
}

@media only screen and (min-width: 1501px) and (max-width: 2000px){
/*==========================================
 幅1501px以上 固定ヘッダー調節
===========================================*/
#mainBg2 img.object_fit_img {
min-height:480px;
}
}

@media only screen and (min-width: 1001px) and (max-width: 1500px){
/*==========================================
 幅1001px以上 固定ヘッダー調節
===========================================*/
#mainBg2 img.object_fit_img {
max-height:480px;
min-height:320px;
}
}

@media only screen and (max-width: 1000px){
/*==========================================
 幅1000px以下 固定ヘッダー調節
===========================================*/
#mainBg2 img.object_fit_img {
max-height:320px;
min-height:250px;
}
}

ul#listBtn {
display: inline-flex;
flex-wrap:wrap;
justify-content: center;
}

ul#listBtn li {
margin: 0 5px 15px;
}

ul#listBtn li a {
background-color: #38AFE6;
color: #FFFFFF;
padding:12px 15px;
display: inline-block;
-webkit-box-shadow: 5px 5px hsla(0,0%,0%,0.16);
box-shadow: 5px 5px hsla(0,0%,0%,0.16);
border: 3px solid #38AFE6;
}

ul#listBtn li a:hover,
ul#listBtn li.on a {
background-color: #FFFFFF!important;
color: #38AFE6!important;
}

ul#listBtn li.on a:hover {
background-color: #EBF9FF!important;
}

.contents_title {
background-image: url(./images/point.png);
background-repeat: no-repeat;
background-position: center top;
padding-top: 50px;
margin-top: 30px;
}

.contents h2,.contents_title h2 {
font-size: 2em;
font-weight: bold;
margin-bottom: 50px;
}

.contents h2 .cat_title {font-size: 0.8em;}
.contents h2 .cat_title:before {content: '- ';}
.contents h2 .cat_title:after {content: ' -';}

.contents_title h2 span {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
}

.contents{ max-width: 1200px; margin: 0 auto; width: 90%;}

.contents a{ color: #38AFE6; text-decoration: underline;}

.contents p {
/*width: 990px;*/
text-align: left;
margin: 0 auto;
padding-bottom: 30px;
}

#aboutBox {
width: 985px;
border: 1px solid #D8D8D8;
border-radius: 9px;
margin: 30px auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding:30px 0;

display: flex;
justify-content: center;
}

#aboutBox dl dt {
color: #38AFE6;
font-size: 1.063em;
}

#aboutBox dl dd {
color: #38AFE6;
font-size: 2.5em;
}

#aboutBox dl dd p {
color: #38AFE6;
font-size: 0.425em;
margin-top: -10px;
}

#aboutBox aside {
align-self: center;
font-size: 2.5em;
margin: 0 50px;
}

.contents #aboutBox p {
margin: 0;
text-align: center;
padding-bottom: 0;
width: auto;
}

#mainBg3 {
width: 100%;
z-index: 0;
background-image: url(./images/bg5.svg);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
padding-top: 210px;
}

#mainInner2 {
margin-top: 2em;
padding-bottom: 50px;
}

.font1 {
text-align: center!important;
font-size: 1.5em;
font-weight: bold;
padding-top: 20px;
}

.font2 {
text-align: center!important;
font-size: 1.250em;
font-weight: bold;
}

.font3 {
font-size: 1.250em;
font-weight: bold;
}

.font4 {
text-align: center!important;
padding-bottom: 10px!important;
font-weight: bold;
}

.contents #cms .font5 {
text-align: center!important;
font-size: 1.125em;
padding-top: 20px;
width: 100%;
box-sizing: border-box;
}

.font5 a {
color: #38AFE6;
text-decoration: underline;
}

.font5 a:hover {
color: #C7C7C7;
text-decoration: none;
}

.titStyle {
padding-top: 20px;
font-size: 1.75em;
font-weight: bold;
color: #38AFE6;
margin-bottom: 38px;
}

#threeGroup {
width: 1083px;
margin: 0 auto 50px;
display: inline-flex;
justify-content: space-between;
}

#threeGroup dl {
max-width: 350px;
width: 33%;
border-radius: 20px;
-webkit-box-shadow: 5px 5px hsla(0,0%,0%,0.16);
box-shadow: 5px 5px hsla(0,0%,0%,0.16);
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 20px;
text-align: left;
}

#threeGroup dl:nth-child(1) {
border: 5px solid #AB4776;
}

#threeGroup dl:nth-child(2) {
border: 5px solid #309B8C;
}

#threeGroup dl:nth-child(3) {
border: 5px solid #948838;
}

#threeGroup dl dt {
font-size: 1.5em;
font-weight: bold;
background-image: url(./images/dot2.png);
background-repeat: repeat-x;
background-position: 0% bottom;
padding-bottom: 15px;
margin-bottom: 15px;
}

#threeGroup dl dt span {
font-size: 0.667em;
font-weight: normal;
}

#threeGroup dl dd {
font-weight: bold;
}

#threeGroup dl:nth-child(1) dt {
color: #AB4776;
}

#threeGroup dl:nth-child(2) dt {
color: #309B8C;
}

#threeGroup dl:nth-child(3) dt {
color: #7E630A;
}

#areaBlock {
background-color: #F6F6F6;
margin: 50px auto;
padding: 24px 0;
width: 933px;
}

#areaBlock section {
padding:0 24px;

display: flex;
margin-bottom: 20px;
text-align: left;
}

#areaBlock section h3 {
font-weight: bold;
font-size: 1.5em;
letter-spacing: 0.2em;
white-space: nowrap;
align-self: flex-start;
color: #FFFFFF;
padding: 10px 18px;
}

#areaBlock section p {
font-weight: bold;
margin-left: 20px;
}

#areaBlock section:nth-child(1) h3 {
background-color: #0F5849;
}

#areaBlock section:nth-child(2) h3 {
background-color: #478D54;
}

#areaBlock section:nth-child(3) h3 {
background-color: #92774D;
}

.table {
width: 750px;
border: 1px solid #B9B9B9;
margin: 57px auto 0;
}

.table th {
background-color: #F8F8F8;
text-align: center;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
}

.table td {
text-align: left;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
vertical-align: middle;
}


.contents ul {
margin: 0 0 0 0;
}

.contents ul li {
list-style-position: outside;
list-style-type: disc;
margin: 0 0 5px 20px;
}

ul#mokuji {
margin: 10px 0 70px;
}

ul#mokuji li {
list-style-position: outside;
list-style-type: disc;
margin: 0 0 5px 20px;
}

ul#mokuji li a {
color: #38AFE6;
text-decoration: underline;
}

ul#mokuji li a:hover {
text-decoration: none;
color: #979797;
}

#cms h2 {
color: #38AFE6;
font-weight: bold;
font-size: 1.5em;
text-align: left;
border-bottom: 2px solid #38AFE6;
padding-bottom: 10px;
margin-bottom: 26px;
}

#cms p,.contents #cms p {
text-align: left;
padding-bottom: 30px;
margin: 0;
}

.photList {
margin-bottom: 53px;
display: flex;
flex-wrap:wrap;
}

.photList2 {
margin-bottom: 53px;
display: flex;
flex-wrap:wrap;
}

.photList2 li {
list-style: none !important;
margin: 0 5px !important;
}

.photList li {
list-style: none !important;
margin: 0 5px !important;
}

.photList li:last-child,
.photList2 li:last-child{
margin-right: 0px;
}

.photList li img,
.photList2 li img {
margin-bottom: 8px;
}

#cms h3 {
margin: 50px 0 15px;
text-align: left;
font-size: 1.25em;
font-weight: bold;
border-left: 9px solid #38AFE6;
padding-left: 16px;
}

.fontStyle {
padding-bottom: 0px!important;
}

.imgBlock {
display: flex;
margin-bottom: 30px;
}

.imgBlock figure {
margin-left: 35px;
text-align: left;
}

.imgBlock figure figcaption {
margin: 8px 0 0 15px;
}

.cms table,.cms2 table {
width: 100%;
margin:0 auto;
border: 1px solid #B9B9B9;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.cms table th,.cms2 table th {
background-color: #F8F8F8;
text-align: left;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
white-space: nowrap;
vertical-align: top;
}

.cms table td,.cms2 table td {
text-align: left;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
vertical-align: middle;
}

#mainInner3 {
margin: 0 0 -50px;
background-color: #EBF9FF;
padding-bottom: 50px;
}

#mainInner3 .contents {
background-image: none!important;
padding-top: 0px!important;
}

#mapArea {
background-image: url(./images/b_line.png);
background-repeat: repeat-x;
background-position: 0% top;
background-color: #FFFFFF;
margin-bottom: 70px;
}

#mapArea .inner {
background-image: url(./images/b_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
padding: 20px;
display: flex;
flex-direction:row-reverse;
justify-content: space-between;
}

#mapArea .inner form {
text-align: left;
padding: 20px;
}

#mapArea .inner form p {
font-size: 0.875em;
font-weight: bold;
margin-bottom: 5px;
}

#mapArea .inner form label {
font-size: 1.125em;
}

p.hight {
margin-top: 23px;
}

label.c1 {
background-color: #60A83C;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

label.c2 {
background-color: #CB7041;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

label.c3 {
background-color: #A1992F;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

label.c4 {
background-color: #41B3CB;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

label.c5 {
background-color: #CB418B;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

label.c6 {
background-color: #2A55AB;
display: inline-block;
color: #FFFFFF;
padding:0 5px;
margin-bottom: 10px;
}

.searchBtn2 input {
margin-top: 25px;
background-color: #38AFE6;
border-radius: 4px;
display: list-item;
width: 207px;
text-align: center;
border-width: 0px;
color: #FFFFFF;
font-size: 1.125em;
padding: 10px 6px;
transform: rotate(.03deg);
cursor:pointer;
-webkit-appearance: none;
}

.searchBtn2 input:hover {
background-color: #233DB8;
}

.areaList {
display: flex;
flex-wrap:wrap;
}

.areaList a {
width: 260px;
text-align: left;
-webkit-box-shadow: 0px 0px 6px hsla(0,0%,0%,0.16);
box-shadow: 0px 0px 6px hsla(0,0%,0%,0.16);
display: block;
background-color: hsla(0,0%,100%,1.00);
margin: 0 15px 75px 0;
position: relative;
}

.areaList a img {
width: 100%;
height: 168px;
object-fit: cover;
}

.areaList a:nth-child(4n) {
margin-right: 0px;
}

.areaList a p {
font-size: 0.813em;
position: absolute;
top: 0px;
left: 0px;
color: #FFFFFF;
}

.areaList a p span.s1 {
background-color: #60A83C;
display: inline-block;
padding: 3px 8px;
}

.areaList a p span.s2 {
background-color: #CB7041;
display: inline-block;
padding: 3px 8px;
}

.areaList a p span.s3 {
background-color: #A1992F;
display: inline-block;
padding: 3px 8px;
}

.areaList a p span.s4 {
background-color: #41B3CB;
display: inline-block;
padding: 3px 8px;
}

.areaList a p span.s5 {
background-color: #CB418B;
display: inline-block;
padding: 3px 8px;
}

.areaList a p span.s6 {
background-color: #2A55AB;
display: inline-block;
padding: 3px 8px;
}

.areaList a h3 {
font-size: 1.125em;
font-weight: bold;
padding: 15px;
min-height: 4em;
}

.areaList a aside {
margin: 25px 15px 8px;
font-size: 0.813em;
font-weight: bold;
border: 1px solid #707070;
border-radius: 50px;
display: inline-block;
padding: 2px 10px;
}

.areaList a aside span:not(:last-child):after {
content: '/';
}

#layer {
display: flex;
justify-content: space-between;
padding-bottom: 80px;
}

#left {
background-color: #FFFFFF;
width: 812px;
border-radius: 10px;
-webkit-box-shadow: 5px 5px hsla(0,0%,0%,0.07);
box-shadow: 5px 5px hsla(0,0%,0%,0.07);
align-self: flex-start;
text-align: left;
padding-bottom: 2em;
}

#right {
background-color: #FFFFFF;
width: 254px;
border-radius: 10px;
-webkit-box-shadow: 5px 5px hsla(0,0%,0%,0.07);
box-shadow: 5px 5px hsla(0,0%,0%,0.07);
align-self: flex-start;
text-align: left;
}

#left p span.c1 {
background-color: #60A83C;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#left p span.c2 {
background-color: #CB7041;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#left p span.c3 {
background-color: #A1992F;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#left p span.c4 {
background-color: #41B3CB;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#left p span.c5 {
background-color: #CB418B;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#left p span.c6 {
background-color: #2A55AB;
display: inline-block;
padding: 10px 20px;
color: #FFFFFF;
}

#serchBlock {
background-color: #FFFFFF;
max-width: 990px;
width: 100%;
margin:0 auto;
border-radius: 10px;
-webkit-box-shadow: 5px 5px hsla(0,0%,0%,0.07);
box-shadow: 5px 5px hsla(0,0%,0%,0.07);
align-self: flex-start;
text-align: left;
}

#cms2 #searchList ul {
    margin: 0 0 1em 0;
}

#cms2 #searchList ul li {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% bottom;
width: 100%;
padding: 10px 1em 5px;
text-align: left;
list-style-position: inside;
font-size: 1.1em;
box-sizing:border-box;
list-style: none;
}

#cms2 #searchList .search_comment {
font-size: 1.5em;
padding: 0;
}

#cms2 {
margin: 0 30px;
padding: 30px 0;
text-align: left;
}

aside.s_area {
font-size: 0.875em;
font-weight: bold;
border: 1px solid #707070;
border-radius: 50px;
padding-left: 10px;
padding-right: 10px;
display: inline-block;
margin-bottom: 12px;
}

#cms2 h1 {
color: #000000;
font-size: 1.85em;
font-weight: bold;
padding-bottom: 1em;
clear:both;
letter-spacing: 0.02em;
}

#cms2 p {
padding-bottom: 1em;
line-height: 1.8;
}

#cms2 a{color: #38AFE6; text-decoration: underline;}

#cms2 figure {
padding-bottom: 35px;
}

#cms2 h2 {
color: #38AFE6;
font-size: 1.5em;
font-weight: bolder;
border-bottom: 2px solid #38AFE6;
padding-bottom: 5px;
margin-bottom: 20px;
clear:both;
}

#cms2 ul,#cms2 ol{
margin: 0 0 1em 0em;
}
#cms2 ol{margin: 0 0 1em 1.5em;}

#cms2 ul li {
list-style-type: disc;
}
#cms2 ol li {
list-style-type: decimal;
}

#cms2 img {
max-width: 100%;
height: auto;
}

#cms2 img.alignleft {
float: left;
margin: 0 1em 1em 0;
}

#cms2 img.alignright {
float: right;
margin: 0 0 1em 1em;
}

#cms2 img.aligncenter {
text-align:center;
display: block;
margin: 0 auto 1em;
}

.NewsPageNavi {
width: calc(100% - 2em);
display: flex;
justify-content: space-between;
margin: 1em auto 0;
}

.NewsPageNavi p a {
display: block;
border: 1px solid #ccc;
padding: 0.3em 1em;
font-size: 1.2em;
box-sizing: border-box;
box-shadow: 0 1px 1px grey;
}

.rightImg {
float: right;
padding-left: 15px;
}

.leftImg {
float: left;
padding-right: 15px;
}

#right .inner {
padding:0 30px 30px;

}

#right .inner h3 {
font-size: 1.125em;
font-weight: bold;
padding-top: 30px;
}

ul.newsList li {
border-bottom: 1px solid #E4E4E4;
padding:15px 0 14px;
}

ul.newsList li a {
background-image: url(./images/point2.png);
background-repeat: no-repeat;
background-position: left 5px;
padding-left: 13px;
display: block;
text-align: left;
}


ul.listStyle {
margin-top: 15px;
}

ul.listStyle li {
background-image: url(./images/point3.png);
background-repeat: no-repeat;
background-position: left 11px;
padding-left: 13px;
margin-bottom: 5px;
}

.navigation {
text-align: center;
}

#newsBlock {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% top;
}

#newsBlock {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% top;
padding-bottom: 30px;
}

#newsBlock dl {
display: flex;
flex-wrap:wrap;
}

#newsBlock dl dt {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% bottom;
width: 8em;
padding: 13px 0;
text-align: left;
color: #666;
font-size: 0.95em;
align-self: center;
}

#newsBlock dl dd {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% bottom;
width: 80%;
padding: 10px 0;
text-align: left;
}

#right form select {
padding: 10px;
border-bottom-width: 1px;
border-radius: 5px;
background-color: #FFFFFF!important;
}

.day {
color: #BBBBBB;
font-size: 0.875em;
}

#cms2 h3 {
font-size: 1.25em;
font-weight: bold;
background-color: #E8F8FF;
padding: 8px 15px;
margin-bottom: 20px;
}

#cms2 h4 {
font-size: 1.25em;
font-weight: bold;
padding:0 15px;
margin-bottom: 20px;
border-left: 9px solid #38AFE6;
}

#cms2 h5,#cms2 h6 {
font-size: 1.125em;
font-weight: bold;
margin-bottom: 20px;
border-bottom: 1px solid #C2C2C2;
padding-bottom: 8px;
}

dl.word {
text-align: left;
}

dl.word dt {
font-size: 1.75em;
font-weight: bold;
}

dl.word dd p {
padding-top: 5px;
}

dl.word dd p a {
color: #38AFE6;
text-decoration: underline;
}

dl.word dd p a:hover {
color: #A2A2A2;
text-decoration: none;
}

/* サイトマップ用のスタイル */
.contents .sitemap{
width: 90%;
max-width: 990px;
margin: 0 auto;
}
.contents .sitemap ul li {
font-size:1em;
line-height:30px;
list-style: none;
}

.contents .sitemap ul li a {
 text-decoration: none;
}

.contents .sitemap ul li a:hover {
text-decoration: underline;
}

.contents .sitemap ul li ul {
margin: .5em 0 .75em 48px;
}
 
.contents .sitemap ul li ul li {
margin-bottom: .25em;
position: relative;
}
 
.contents .sitemap ul li ul li::before {
content: "";
position: absolute;
top: -0.5em;
left: -16px;
width: 10px;
height: calc(100% + .75em);
border-left: 1px solid #888;
}
 
.contents .sitemap ul li ul li:last-child::before {
height: calc(1em + .25em);
}
 
.contents .sitemap ul li ul li::after {
content: "";
position: absolute;
top: .75em;
left: -16px;
width: 10px;
border-bottom: 1px solid #888;
}


/* PC向けおよび大型タブレット向けのレイアウトの指定：1px～1100px */
@media only screen and (min-width:1px) and (max-width:1100px){
/*==========================================
 body
===========================================*/
body {
min-width: 100%;
text-align: center;
width: 100%;
margin-top: 0px;
}

img {
width: 100%;
max-width: 100%;
height: auto;
width /***/: auto;
/*IE8のみ適用*/
; text-align: center;
}

.share {
width: 100%;
text-align: center;
}

.share2 {
width: 90%;
margin: 0 5%;
text-align: center;
}

.spImg {
display: inherit;
}

.pcImg {
display: none;
}

#headerTop .inner form {
display: none;
}

#headerTop .share h1 {
display: none;
padding: 15px 0 0;
}

#headerTop {
background-image: url(./images/bg1.svg);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover;
padding-bottom: 30px;
background-color: transparent;
}

#headerTop .share h1.sp {
display: inherit;
margin-top: 0px!important;
margin-left: 15px;
white-space: nowrap;
padding: 5px 0 0 0;
}

#headerTop .share h1.sp a {
display: flex;
align-items: center;
}

#headerTop .share h1.sp a span {
margin-left: 15px;
color: #38AFE6;
font-size: 1.1em!important;
font-weight: bold;
}

#headerTop .share h1.sp a img {
height: 40px;
width: auto;
}

#headerTop .share .inner p {
font-size: 0.667em;
margin: 10px 70px 0 15px;
text-align: right;
}

#headerTop .share .inner p a {
color: #000000;
text-decoration: underline;
}

#headerTop .share .inner p a:hover {
color: #000000;
text-decoration: none;
}

#pcMenu {
display: none;
}

/*==========================================
Menu
===========================================*/
nav.NavMenu {
position: fixed;/*表示位置を固定*/
z-index: 30!important;/*重ね順を変更*/
top: 0;/*表示位置を指定*/
left: 0;/*表示位置を指定*/
background-color: #FFFFFF;
color: #000;/*文字色を黒にする*/
text-align: center;/*テキストを中央揃え*/
width: 100%;/*全幅表示*/
transform: translateX(100%);/*ナビを上に隠す*/
height:100vh;
}

nav.NavMenu ul {
padding: 0;
background-image: url(./images/line2.png);
background-repeat: repeat-x;
margin: 20px 5% 0;
}

nav.NavMenu ul li {
font-size: 1.1em;
list-style-type: none;
padding: 0 0 15px 0;
width: 100%;
text-align: left;
background-image: url(./images/line2.png);
background-repeat: repeat-x;
background-position: 0% bottom;
}

nav.NavMenu ul li.sp1 a {
background-image: url(./images/icon1.svg);
background-repeat: no-repeat;
background-position: 10px 20px;
}

nav.NavMenu ul li.sp2 a {
background-image: url(./images/icon2.svg);
background-repeat: no-repeat;
background-position: 5px 15px;
}

nav.NavMenu ul li.sp3 a {
background-image: url(./images/icon3.svg);
background-repeat: no-repeat;
background-position: 10px 20px;
}

nav.NavMenu ul li.sp4 a {
background-image: url(./images/icon4.svg);
background-repeat: no-repeat;
background-position: 5px 15px;
}

nav.NavMenu ul li.sp5 a {
background-image: url(./images/icon5.svg);
background-repeat: no-repeat;
background-position: 10px 20px;
}

nav.NavMenu ul li.sp6 a {
background-image: url(./images/icon6.svg);
background-repeat: no-repeat;
background-position: 10px 20px;
}

nav.NavMenu ul li a strong {
background-image: url(./images/y_line.png);
background-repeat: repeat-x;
background-position: 0% bottom;
margin-bottom: 5px;
}

nav.NavMenu ul li a {
display: block; /*クリックできる領域を広げる*/
color: #000;
text-decoration: none!important;
padding: 1em 0 0 50px;
text-align: left;
}

nav.NavMenu ul li a:hover {
color: #990000;
}

/*トグルボタンが押されたときに付与するクラス*/
nav.NavMenu.active {
transform: translateX(0%);
transition: all 0.6s;/*アニメーションの時間を指定*/
}
/*トグルを閉じる操作をしたら付与するクラス*/
nav.NavMenu.off {
transition: all 0.6s;/*アニメーションの時間を指定*/
}

/*トグルボタンのスタイルを指定*/
.Toggle {
display: block;
position: fixed;/* bodyに対しての絶対位置指定 */
right: 5px;
top: 5px;
width: 42px;
height: 42px;
cursor: pointer;
z-index: 50;
}
 
.Toggle span {
display: block;
position: absolute;
width: 40px;
border-bottom: solid 5px #38AFE6;
-webkit-transition: .35s ease-in-out;/*変化の速度を指定*/
-moz-transition: .35s ease-in-out;/*変化の速度を指定*/
transition: .35s ease-in-out;/*変化の速度を指定*/
left: -12px;
}
 
.Toggle span:nth-child(1) {
top: 10px;
}
 
.Toggle span:nth-child(2) {
top: 20px;
}
 
.Toggle span:nth-child(3) {
top: 30px;
}
 
/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
top: 18px;
left: -12px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}
 
/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 18px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}

.NavMenu {
display: inherit;
}

.NavMenu ul {
flex-direction:column;
}

.NavMenu ul li {
text-align: center;
font-size: 1em;
margin: 0;
font-weight: 600;
}

.NavMenu p {
margin: 5% 5% 0;
text-align: left;
}

.NavMenu p a {
text-decoration: underline;
}

.NavMenu p a:hover {
text-decoration: none;
}

.NavMenu form {
margin: 10px 5% 0;
text-align: left;
}

.NavMenu input.searchBox {
background-color: #FFFFFF;
border-left: 1px solid #707070;
border-right: 1px solid #707070;
border-bottom: 1px solid #707070;
border-top: 1px solid #707070;
padding: 8px 15px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 60%;
}

.NavMenu input.searchBtn {
border: 1px solid #707070;
padding: 8px 15px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
background-color: #33485D;
color: #FFFFFF;
}

/*==========================================
Other
===========================================*/

#mainBg p#topCaption {
position: absolute;
bottom: auto;
top: 70%;
/*
right: 15px;
left: 15px;
*/
}

#topConcept {
top: 500px;
}

#topConcept .inner {
background-image: none;
}

#topInfo {
bottom: 400px;
background-size: contain;
margin-bottom: -400px;
}

#topInfo .inner {
background-image: none;
margin-top: 0px;
}

#information {
margin-bottom: 90px;
}

#charmTit {
margin-right: 0px;
}

#area {
width: auto;
margin: 0 5%;
}

#area ul {
justify-content: center;
}

#area ul li {
margin: 0 10px;
}

#charmTit h2 {
font-size: 1.125em;
}

#charmTit {
background-image: url(./images/mark2.png);
background-size: 120px auto;
padding-left: 120px;
}

#areaLink {
width: auto;
}

#footerInfo {
padding: 10px;
/*
margin-right: 0px;
*/
margin: 0 auto;
width: 90%;
}

footer .inner ul {
margin: 0 5% 43px;
justify-content: center;
}

footer .inner {
display: block;
}

footer {
background-position: center bottom;
background-size: cover;
}

#pNavi aside {
width: auto;
margin: 0 5%;
}

.contents p {
width: auto;
padding:0 5% 30px;
}

#aboutBox {
width: auto;
margin: 30px 5%;
}

#aboutBox dl dt {
color: #38AFE6;
font-size: 1em;
}

#aboutBox dl dd {
color: #38AFE6;
font-size: 2em;
}

#aboutBox aside {
font-size: 2em;
margin: 0 20px;
}

#mainBg3 {
background-size: contain;
padding-top: 80px;
}

#mainInner3 {
padding-top: 5%;
}

#threeGroup {
width: auto;
flex-wrap:wrap;
justify-content: center;
}

#threeGroup dl {
width: 30%;
margin: 0 10px 20px;
}

#threeGroup dl dt span {
display: block;
}

#areaBlock {
width: auto;
}

.font2 {
padding:0 5% 30px;
}

.centerImg img {
width: 100%;
max-width: 95%;
height: auto;
width /***/: auto;
/*IE8のみ適用*/
; text-align: center;
}

.table {
width: 680px;
}

.photList,
.photList2 {
justify-content: center;
}

.photList li {
width: calc(25% - 20px);
margin-right: 10px!important;
margin-left: 10px!important;
margin-bottom: 30px;
}

.photList2 li {
width: calc(50% - 20px);
margin-right: 10px!important;
margin-left: 10px!important;
margin-bottom: 30px;
}

.photList li:last-child,
.photList2 li:last-child {
margin-right: 10px;
}

.imgBlock figure {
margin-left: 20px;
}
.imgBlock figure img {
min-width: 250px;
}

.areaList a {
margin:0 10px 75px;
}

.areaList a {
width: calc(33% - 20px);
}

.areaList a:nth-child(4n) {
margin:0 10px 75px;
}

.areaList a aside {
border-radius:25px;
}

#layer {
display: block;
margin: 0 5%;
}

#left,
#right {
width: 100%;
}

#left {
margin-bottom: 50px;
}

.wp_social_bookmarking_light img {
    height: 100%;
    width: auto;
    max-height: 20px;
}
}

@media only screen and (max-width:700px){
/*==========================================
 Other
===========================================*/
#mainBg p#topCaption {
top: 65%;
}

#mainInner {
margin-top: 0;
}

#mainInner2 {
margin-top: 0;
}

#topConcept {
top: 380px;
background-size: contain;
padding-top: 50px;
}

#topConcept figure img {
width: 190px;
height: auto;
}

#topConcept .inner h2 strong {
display: inline-block;
}

#topConcept .inner p {
width: auto;
padding: 0 5%;
}

#topInfo {
bottom: 500px;
margin-bottom: -500px;
}

#topInfo .inner {
background-image: none;
margin-top: -20px;
}

footer .inner {
display: flex;
flex-direction:column;
margin-bottom: 185px;
}

footer .inner ul {
justify-content: flex-start;
flex-direction: column;
}

footer .inner ul li {
margin: 0 0 7px;
}

footer {
background-image: url(./images/footer_bg_sp.png);
background-position: center bottom;
background-size: cover;
background-color: #C8EEFF;
}

#copy {
text-align: center;
padding-right: 0px;
}

ul#listBtn {
display: block;
background-color: #EBF9FF;
padding:5%;
}

#aboutBox dl dt {
color: #38AFE6;
font-size: 0.8em;
}

#aboutBox dl dd {
color: #38AFE6;
font-size: 1.5em;
}

#aboutBox aside {
font-size: 1.5em;
margin: 0 20px;
}

#mainBg3 {
background-size: contain;
padding-top: 80px;
}

#threeGroup {
display: block;
}

#threeGroup dl {
width: 90%;
margin: 0 auto 20px;
}

.font1 {
text-align: left!important;
font-size: 1.1em;
font-weight: bold;
padding-top: 20px;
}

.font1 br,
.font2 br {
display: none;
}

.font2 {
text-align: left!important;
font-size: 1em;
}

#areaBlock section {
padding:0 5%;
display: block;
text-align: left;
}

#areaBlock section p {
margin-left: 0;
width: 98;
padding: 0 1% 30px;
}

#areaBlock section h3 {
font-weight: bold;
font-size: 1.5em;
letter-spacing: 0.2em;
white-space: nowrap;
align-self: flex-start;
color: #FFFFFF;
padding-top: 5px 18px;
margin-bottom: 10px;
}

.table {
width: 90%;
margin: 57px 5% 0;
}

.table th {
font-size: 0.9em;
}

.table td {
font-size: 0.9em;
}

.photList li {
width: calc(50% - 20px);
margin:0 10px 30px;
font-size: 0.8em;
}

.imgBlock {
flex-wrap:wrap;
}

.imgBlock figure {
margin: 0 auto;
text-align: center;
}

.imgBlock figure img {
min-width: 100%;
}


.imgBlock figure figcaption {
margin-left: 0px;
}

#mapArea .inner {
display: block;
}

#mapArea .inner form {
padding: 20px 0 0;
}

.areaList a {
width: calc(50% - 20px);
}

.rightImg,
.leftImg {
float: none;
padding: 0px;
margin:0 auto;
text-align: center;
}

#newsBlock dl {
display: block;
}


#newsBlock dl dt {
background-image: none;
background-repeat: repeat-x;
background-position: 0% bottom;
width: 100%;
padding: 10px 0 0;
text-align: left;
color: #666;
font-size: 0.85em;
align-self: center;
}

#newsBlock dl dd {
background-image: url(./images/dot.png);
background-repeat: repeat-x;
background-position: 0% bottom;
width: 100%;
padding: 0 0 10px;
text-align: left;
}
}


@media only screen and (max-width: 470px){
/*==========================================
 幅470px以下から ヘッダー等微調節
===========================================*/
#mainBg p#topCaption {
font-size: 0.625em;
top: 70%;
}

#mainBg img {
width: auto;
height: 410px;
object-fit: cover;
}

#topInfo {
bottom: 400px;
margin-bottom: -400px;
}

#information,
#twitter {
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#information {
margin-top: -50px;
}

#information h3,
#twitter h3 {
font-size: 3.125em;
margin-top: -45px;
}

#area ul {
justify-content:flex-start;
}

#areaLink figure img {
width: 150px;
height: 150px;
object-fit: cover;
}

ul#listBtn li {
font-size: 0.875em;
margin-bottom: 10px;
}

ul#listBtn li a {
padding:3px 5px;
}

.contents_title {
padding-top: 35px;
background-size: 68px auto
}

.contents_title h2 {
width: 300px;
margin: 0 auto 50px;
}

.contents h2 {
font-size: 1.250em;
margin-bottom: 30px;
}

#aboutBox dl dt {
color: #38AFE6;
font-size: 0.3em;
}

#aboutBox dl dd {
color: #38AFE6;
font-size: 0.8em;
}

#aboutBox aside {
font-size: 0.8em;
margin:0 10px;
}

#aboutBox dl dd p {
margin-top: 0px;
}

#mainBg3 {
background-image: none;
padding-top: 85px;
}

#mainInner2 .contents {
position: relative;
top: 20px;
}
#mainInner2 .contents_title {
position: relative;
top: 20px;
}

#cms table th,#cms2 table th,
#cms table td,#cms2 table td {
width: 100%;
display: block;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#cms table th,#cms2 table th {
background-color: #E4E4E4;
}

.areaList a {
    width: calc(50% - 8px);
}
.areaList a {
    margin: 0 2px 55px;
}
.areaList a:nth-child(4n) {
    margin: 0 2px 55px;
}

.areaList a h3 {
font-size: 0.9em;
font-weight: bold;
padding:10px;
}

.areaList a aside {
margin: 20px 10px 8px;
}

.areaList a img {
height: 150px;
}

#accessMap a {
pointer-events: none;
}

dl.word dt {
font-size: 1.25em;
}

.font3 {
font-size: 0.9em;
}

.font3 br {
display: none;
}

#mainBg2 {
background-color: #EBF9FF;
}

#cms2 {
    margin: 0 1.2em;
    padding: 1em 0;
}
}

/*SNSシェア・ライクボタン　位置調整*/
#cms2 .wp_social_bookmarking_light,
.contents .wp_social_bookmarking_light {
display: flex;
justify-content: center;
margin-top: 1em!important;
flex-wrap: wrap;
}

#cms2.the_post h2,#cms2.the_post h3,#cms2.the_post h4,#cms2.the_post h5,#cms2.the_post h6 {
margin-top:1em;
clear:both;
}
#cms2.the_post h2.nomgn,#cms2.the_post h3.nomgn,#cms2.the_post h4.nomgn,#cms2.the_post h5.nomgn,#cms2.the_post h6.nomgn {
margin-top:0;
}
#cms2 blockquote {
width:98%;
background-color: #f4f2f2;
margin: 0.5em auto 1em;
padding: 1em;
border-radius: 0.5em;
box-sizing:border-box;
clear:both;
}
#cms2 table {
width:98%;
margin: 0.5em auto 1em;
clear:both;
}

.contents p.comment_404 {
text-align: center;
font-size: 2em;
}

.gallery .gallery-item dt img{ border: none !important; max-width: 100%; height: auto;}
.gallery .gallery-item dt{ margin: 5px;}

.wp-pagenavi a, .wp-pagenavi span{ padding: 8px; background: #fff; line-height: 3em;}



ul.slick-dots{bottom: 20%;}
@media only screen and (min-width: 1200px){
    ul.slick-dots{bottom: 25%;}
}

@media only screen and (min-width: 1300px){
    ul.slick-dots{bottom: 35%;}
}

@media only screen and (min-width: 1500px){
    ul.slick-dots{bottom: 45%;}
}

@media only screen and (min-width: 1700px){
    ul.slick-dots{bottom: 50%;}
}

#searchList a{ text-decoration: none;}
.wp-caption-text{ font-size: 0.9em;}
.wp-caption.alignleft{ float: left;}
.wp-caption.alignright{ float: right;}

/**** Clearfix ****/
.clearfix{content:""; display: table;clear: both;}
.clearfix{zoom: 1;}



/****************************************
プレ公開中
*****************************************/
/*
.preKokai{ display:block;}
.preKokai{ position: absolute; top: 50px;z-index: 10; padding: 12px 0;  width: 100%;  background: #FFEAEA; color: #f00; font-weight: bold;}
#pcMenu{ top:98px;}
  #mainBg3{ padding-top: 260px;}
@media only screen and (min-width:1px) and (max-width:1100px){
    #mainBg3{ padding-top: 100px;}
}
*/
/*******************************************/


#cms2 table {
width: 98%;
margin: 0.5em auto 1em;
clear: both;
border: 1px solid #B9B9B9;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#cms2 table th {
background-color: #F8F8F8;
text-align: left;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
white-space: nowrap;
vertical-align: top;
}

#cms2 table td {
text-align: left;
font-weight: normal;
padding: 10px;
border-right: 1px solid #B9B9B9;
border-bottom: 1px solid #B9B9B9;
vertical-align: middle;
}
