@charset "utf-8";

#content{}

.container{
	width: 1100px;
	margin: 80px auto 120px auto;
}
.container-full{
	width:100%;
	margin: 80px auto 120px auto;
}

@media only screen and (max-width: 1100px){
  .container{
    margin: 40px auto 60px auto;
    width:100%;
    padding: 0 15px;
  }
  .container-full{
    margin: 40px auto 60px auto;
  }
}

.clearfix::after {
    content: "";
    clear: both;
    display: table;
}


/**********************************************
共通
**********************************************/

#h_Area{
	height: 300px;
	position: relative;
	background: url(../img/page/h1-back.png) no-repeat center ;
	background-size: cover;
}

#h_Area02{
	height: 135px;
	position: relative;
	background: url(../img/page/h1-back.png) no-repeat center ;
	background-size: cover;
}

#h_Area03{
	height: 740px;
	position: relative;
	background: url(../img/page/h1-back.png) no-repeat center ;
	background-size: cover;
}

#h_Area::before,
#h_Area02::before,
#h_Area03::before{
  content: '';
  width: 80px;
  height: 100%;
  background: #fff;
  display:block;
  position: absolute;
  left: 0;
  top: 0;
}


@media screen and (max-width: 768px) {
  #h_Area,
  #h_Area02{
    height: 120px;
  }
  #h_Area03{
    height: 400px;
  }
  #h_Area::before,
  #h_Area02::before,
  #h_Area03::before{
    width: 40px;
  }
}

.h_inner{
	max-width: 1100px;
	margin-right: auto;
	margin-left: auto;
	min-height: 300px;
}

@media screen and (max-width: 768px) {
  .h_inner{
		min-height: 120px;
		display: flex;
		align-items: center;
  }
}

.h_inner03,
.h_inner04{
  height: 100%;
  position: relative;
}
.h_inner03__info,
.h_inner04__info{
  padding: 0 120px;
  bottom: 50px;
  position: absolute;
}

.h_inner03__catch{
  margin-bottom: 30px;
}

.h_inner03__catch span{
  display: inline-block;
  font-size: 40px;
  font-weight: 600;
  margin-bottom: 10px;
  background: #fff;
  padding: 10px;
  line-height: 1;
}
.h_inner04{
  color:#fff;
}

h2.spot{
  margin-left: 52px;
  z-index: 3;
  position: relative;
}

@media screen and (max-width: 768px) {
  h2.spot{
    margin-left: 22px;
  }
}

h2.spot:nth-of-type(1)::before{content: '1';}
h2.spot:nth-of-type(2)::before{content: '2';}
h2.spot:nth-of-type(3)::before{content: '3';}
h2.spot:nth-of-type(4)::before{content: '4';}
h2.spot:nth-of-type(5)::before{content: '5';}
h2.spot:nth-of-type(6)::before{content: '6';}
h2.spot:nth-of-type(7)::before{content: '7';}
h2.spot:nth-of-type(8)::before{content: '8';}
h2.spot:nth-of-type(9)::before{content: '9';}
h2.spot:nth-of-type(10)::before{content: '10';}

h2.spot:nth-of-type(1)::before,
h2.spot:nth-of-type(2)::before,
h2.spot:nth-of-type(3)::before,
h2.spot:nth-of-type(4)::before,
h2.spot:nth-of-type(5)::before,
h2.spot:nth-of-type(6)::before,
h2.spot:nth-of-type(7)::before,
h2.spot:nth-of-type(8)::before,
h2.spot:nth-of-type(9)::before,
h2.spot:nth-of-type(10)::before{
  width: 60px;
  height: 60px;
  text-align: center;
  border-radius: 50%;
  margin-right: 20px;
  background: #2D437D;
  color: #fff;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  h2.spot:nth-of-type(1)::before,
  h2.spot:nth-of-type(2)::before,
  h2.spot:nth-of-type(3)::before,
  h2.spot:nth-of-type(4)::before,
  h2.spot:nth-of-type(5)::before,
  h2.spot:nth-of-type(6)::before,
  h2.spot:nth-of-type(7)::before,
  h2.spot:nth-of-type(8)::before,
  h2.spot:nth-of-type(9)::before,
  h2.spot:nth-of-type(10)::before{
    width: 40px;
    height: 40px;
  }
  .h_inner03__info,
  .h_inner04__info{
    padding: 0 60px;
    bottom: 20px;
    position: absolute;
  }
  .h_inner03__catch{
    margin-bottom: 10px;
  }
  .h_inner03__catch span{
    font-size: 24px;
    padding: 5px;
  }
}

.h_inner03__place{
  font-size: 21px;
  color: #fff;
}

.h_inner03__place::before {
  content: url(../img/map.png);
  line-height: 21px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}

@media screen and (max-width: 768px) {
  .h_inner03__place{
    font-size: 16px;
  }
}

h1.h1_ylw{
  padding: 0 40px;
	position:absolute;
	z-index:1;
	color: #fff;
	font-size: 32px;
	font-weight: 600;
	top: 43%;
	left: 20px;
	text-align: center;
  background: #ECCF1B;
}

.centerTitle{
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  position: relative;
}

.centerTitle::after{
  content: '';
  width: 160px;
  height: 7px;
  display: block;
  margin: 0 auto;
  background: linear-gradient(90deg, rgba(52,88,107,1) 0%, rgba(52,88,107,1) 67%, rgba(94,217,98,1) 67%, rgba(94,217,98,1) 100%);
}

@media screen and (max-width: 1110px) {
  h1.h1_ylw,
  .centerTitle{
		font-size: 21px;
  }
  h1.h1_ylw{
    padding: 0 20px;
  }
  .centerTitle{
    top: 30px;
  }
  .centerTitle::after{
    width: 80px;
  }
}

.centerTitle span{
  display: block;
  font-size: 14px;
}

h2.centerTitle{
  margin-bottom: 40px;
}

h2.info_ttl{
  margin-bottom: 40px;
  font-size: 21px;
  font-weight: 600;
  border-bottom: 3px solid #34586B;
}

@media screen and (max-width: 768px) {
  h2.info_ttl{
    font-size: 18px;
  }
}

h2.sp_h2{
  margin-bottom: 100px;
  font-size: 32px!important;
  font-weight: 600;
  text-align: center;
  color: #3A4F5A;
}

@media screen and (max-width: 768px) {
  h2.sp_h2{
    margin-bottom: 50px;
    font-size: 21px!important;
  }
}

h3{
  margin-bottom: 40px!important;
  font-size: 24px!important;
  font-weight: 600!important;
  position: relative;
}

@media screen and (max-width: 768px) {
  h3{
    margin-bottom: 20px!important;
    font-size: 21px!important;
  }
}

h3::before{
  content: '';
  width: 100%;
  height: 2px;
  background: #60B366;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  z-index: -1;
}

h3 span{
  margin-left: 30px;
  padding: 10px;
  background: #fff;
}

h4{
  font-size: 21px;
  font-weight: 600;
  margin-bottom: 20px;
}

#h_Area #breadcrumb,#h_Area #breadcrumb li a,#h_Area03 #breadcrumb,#h_Area03 #breadcrumb li a{color: #fff;}
#h_Area02 #breadcrumb,#h_Area02 #breadcrumb li a{color: #34586B;}

#breadcrumb {
	position: relative;
	left: 0;
	top: 0;
	z-index:  2;
	height: 40px;
  font-size: 14px;
}

#breadcrumb ul {
	height:  24px;
	padding:  8px 0 8px;
}

#breadcrumb li {
	float: left;
	padding: 0 5px 0;
}

#breadcrumb li a{
  color: #fff;
  text-decoration: none;
}

@media only screen and (max-width: 1111px){
  #breadcrumb{
	display: none;
  }
}


/**********************************************
news・event・blog
**********************************************/

/*Pagenation*/
.pageNation {
	text-align: center;
	margin: 0 auto;
}
.pageNation ul {
    margin: 0;
}
.pageNation li {
	font-size: 16px;
	margin-right: 6px;
	display: inline-block;
	color: #fff;
	text-align: center;
	background-color: #34586B;
  overflow: hidden;
  line-height: 50px;
  width: 50px;
}
.pageNation li.prev,
.pageNation li.next {
  width: 50px;
}
.pageNation li.active {
	color: #fff;
	background-color: #5ED962;
}
.pageNation li a {
	display: block;
	line-height: 50px;
  width: 100%;
  text-decoration: none;
  color: inherit;
}
.pageNation li a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #5ED962;
}


/*------ side ------*/
.contents-area{
	width: 800px;
	float: left;
}

.side-contents{
	width: 260px;
	float: right;
}

@media screen and (max-width: 1100px) {
	.lead-contents, 
	.contents-area{
		width: 100%;
		margin: 0;
	}
	
	.side-contents{
		display: none;
	}
}


.side-linkbox{
	background: #EEEEEE;
  padding: 20px;
}
.side-linkbox p{
	margin-bottom: 32px;	
	color: #34586B;
	font-weight: 600;
}
.side-linkbox span{
	margin-left: 16px;
	font-size:82%; 
}
.side-linkbox ul,li{
	list-style: none;
}
.side-linkbox ul{
	margin-left:0!important;
}
.side-linkbox li{
	margin-bottom: 16px;
}
.side-linkbox li:before{
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    margin-right: 4px;
    margin-left: 4px;
    border: transparent solid 5px;
    border-left-color: #2a2a2a;
    vertical-align: 4px;
}
.side-linkbox li a{
  color: #2e2e2e;
}

.archive-link{
  text-align:center;
  margin-top: 80px;
}

.archive-link a{
  width: 460px;
  display: inline-block;
  padding: 10px;
  border: 2px solid #34586B;
  text-align: center;
  text-decoration: none;
  color: inherit;
}

@media screen and (max-width: 768px) {
  .archive-link{
    margin-top: 40px;
  }
  .archive-link a{
    width: 70%;
    color: #fff;
    background: #34586B;
    font-size: 16px;
  }
}

/*-------------------------------
　　　post -search-
-------------------------------*/
.search input[type="submit"]{
  background: #34586B;
  color: #fff;
  padding: 10px;
  border: none;
  border-radius: 5px;
}

.search select{
  border-radius:0;
}

/*-------------------------------
　　　post -photo-
-------------------------------*/
.photo{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: stretch;
}

.photo li{
  width: calc(100% / 3 - 10px);
  margin: 0 5px 80px;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .photo li{
    width: calc(100% / 2 - 10px);
    margin: 0 5px 40px;
  }
}

.photo .photo__thumb{
  width: 100%;
  max-width: 340px;
  height:340px;
  overflow: hidden;
  position: relative;
}

.photo_title{
  position: absolute;
  left: 5px;
  bottom: 5px;
  text-decoration: none;
  color: #fff;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .photo .photo__thumb{
    height:200px;
  }
}

.photo_map,
.ex-map{
  width: 960px;
  margin: 0 auto;
  height: 360px;
}

@media screen and (max-width: 1110px) {
  .photo_map,
  .ex-map{
    width: 90%;
  }
}
@media screen and (max-width: 768px) {
  .photo_map,
  .ex-map{
    height: 260px;
  }
}
.photo_map iframe,
.ex-map iframe{
  width: 100%;
  height: 100%;
}

.photo_info{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.photo_info > table{
  width: 460px!important;
}

.photo_text{
  width: 600px;
}

@media screen and (max-width: 1110px) {
  .photo_info > table{
    width: 40%!important;
  }
  .photo_text{
    width: 58%!important;
  }
}

@media screen and (max-width: 768px) {
  .photo_info{
    flex-wrap: wrap;
  }
  .photo_info > table{
    width: 100%!important;
    margin-bottom: 20px;
  }
  .photo_text{
    width: 100%!important;
  }
}

.dl_kiyaku dt{
  width: 100%;
  display: block;
  margin-bottom: 10px;
}

.dl_kiyaku dd{
  width: 100%;
  display: block;
  margin-bottom: 20px;
}

.photo_2col{
  width: 90%;
  margin: 0 auto;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.photo_2col li{
  width: 50%;
}

@media screen and (max-width: 1110px) {
  .photo_2col{
    flex-wrap: wrap;
  }
  .photo_2col li:first-child{
    margin-bottom: 20px;
  }
  .photo_2col li{
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .photo_2col{
    width: 100%;
  }
}

.dl-link{
  text-align: center;
}

.dl-link a{
  width: 460px;
  display: inline-block;
  padding: 10px;
  background: #ECCF1B;
  text-align: center;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
}

.dl-link a:hover{
  background: #34586B;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .dl-link a{
    width: 70%;
    font-size: 16px;
  }
}

.photo_2col .archive-link{
  margin-top: 0;
}


/*-------------------------------
　　　post -speciality-
-------------------------------*/
.speciality{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-items: stretch;
}

.speciality li{
  width: calc(100% / 3 - 10px);
  margin: 0 5px 120px;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .speciality li{
    width: calc(100% / 2 - 10px);
    margin: 0 5px 60px;
  }
}

.speciality li a{
  text-decoration: none;
  color: #2e2e2e;
}

.speciality li a:hover img{
  transform: scale(1.1);
}

.speciality__thumb{
  width: 100%;
  max-width: 340px;
  height:340px;
  overflow: hidden;
  position: relative;
}

.speciality__thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s;
}

@media screen and (max-width: 768px) {
  .speciality__thumb{
    height:200px;
  }
}

.speciality__ttl{
  padding: 10px;
  font-size: 21px;
  color:#34586B;
  font-weight: 600;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .speciality__ttl{
    padding: 10px 0;
    font-size: 18px;
  }
}

.speciality__catch{
  margin-bottom: 20px;
  text-align: center;
  font-size: 24px;
  color: #3A4F5A;
}

@media screen and (max-width: 768px) {
  .speciality__catch{
    font-size: 18px;
  }
}

.ecLink{
  text-align:center;
  margin-top: 80px;
}

.ecLink a{
  width: 460px;
  display: inline-block;
  padding: 10px;
  border: 2px solid #34586B;
  text-align: center;
  text-decoration: none;
  font-size: 21px;
  color: #34586B;
  font-weight: 600;
}

.ecLink a::before{
  content: '';
  width: 40px;
  height: 40px;
  background: url("../img/page/cart.png") no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 16px;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .ecLink{
    margin-top: 40px;
  }
  .ecLink a{
    width: 70%;
    color: #fff;
    background: #34586B;
    font-size: 16px;
  }
  .ecLink a::before{
    width: 30px;
    height: 30px;
    background: url("../img/page/cart_sp.png") no-repeat;
    background-size: contain;
  }
}

.itemInfo{
  width: 90%;
  margin: 160px auto 0;
}
  
.itemInfo__ttl{
  width: 100%;
  margin-bottom: 40px;
  padding: 20px;
  background: #34586B;
  line-height: 1;
  text-align: center;
  color: #fff;
  font-size: 24px;
}

.itemInfo__list{
  width: 100%;
  margin: 0;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.itemInfo__img{
  width: 500px;
  height: 300px;
}

.itemInfo__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.item_text{
  width: 450px;
}

@media screen and (max-width: 1110px) {
  .itemInfo__img,
  .item_text{
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .itemInfo__list{
    flex-wrap: wrap;
  }
  .itemInfo{
    width: 90%;
    margin: 80px auto 0;
  }
  .itemInfo__ttl{
    margin-bottom: 20px;
    font-size: 18px;
    padding: 10px;
    background: #a7a7a7;
  }
  .itemInfo__img{
    height: 200px;
  }
}

div.slider {
  width:100%;
	display:block;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
  div.slider {
    width:100%;
  }
}

div.slider .bx-wrapper {
  max-width: 100%!important;
	margin:0 auto;
}

ul#bxslider01{
  z-index: 1;
}

ul#bxslider01 li {
	display:block;
	width:100%;
	height:auto;
}

.slider .bx-viewport{
  width: 100%;
  max-height: 600px!important;
}
.slider .bx-wrapper{
  width: 100%;
  max-height: 600px!important;
}

ul#bxslider01 li img{
	display:block;
	width:100%;
	height:auto;
}

ul.bxslider02{
  width: 100%!important;
  padding: 0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  align-items: flex-start;
}

ul.bxslider02 li{
  width:calc(100% / 5)!important;
}

ul.bxslider02 li:nth-child(1),
ul.bxslider02 li:nth-child(2),
ul.bxslider02 li:nth-child(3),
ul.bxslider02 li:nth-child(4){
  margin-right: 10px;
}

ul.bxslider02 li a {
	display:block;
	width:100%;
	height:120px;
}

@media screen and (max-width: 768px) {
  ul.bxslider02 li a {
    height:60px;
  }
}

ul.bxslider02 li a img{
	display:block;
	width:100%;
	height:100%;
  object-fit: cover;
}

div.controlWrap {
	width:100%;
	display:block;
	position:relative;
	margin:10px auto;
}
  
/*------------------------
　　　post -event-
-------------------------------*/
.event_eye{
  text-align: center;
}
.event_eye img{
  max-width: 900px;
}

@media screen and (max-width: 1110px) {
  .event_eye img{
    width: 80%;
    max-width: 900px;
  }
}

/*-------------------------------
　　　post -experience-
-------------------------------*/
.container .exList__info,
.container .exList__box,
.container .exList li{
  background: #eee;
}
.taiou li{
  float: left;
  margin-right: 24px;
}
.toilet{
  content: url("../img/page/toilet.png");
  display: block;
}
.child{
  content: url("../img/page/child.png");
  display: block;
}
.barrier{
  content: url("../img/page/barrier.png");
  display: block;
}

.event_map{
  width: 960px;
  margin: 0 auto;
  height: 360px;
}

@media screen and (max-width: 1110px) {
  .event_map{
    width: 90%;
  }
}
@media screen and (max-width: 768px) {
  .event_map{
    height: 260px;
  }
}
.event_map iframe{
  width: 100%;
  height: 100%;
}

.reserve_tel{
  width: 600px;
  margin: 0 auto;
  border: 3px solid #34586B;
  position: relative;
  text-align: center;
  padding: 30px 0 20px;
  color: #34586B!important;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .reserve_tel{
    width: 90%;
    padding: 20px 0 10px;
  }
}
.reserve_tel-ttl{
  width: 80%;
  color: #fff;
  background: #34586B;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 10px;
}

.reserve_tel a{
  margin-bottom: 10px; 
  color: #34586B!important;
  font-size: 40px;
  font-weight: bold;
  text-decoration: none!important;
  border-bottom: 1px solid #34586B;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .reserve_tel a{
    font-size: 32px;
  }
}

@media (min-width: 769px) {
  a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  }
}

.reserve_tel a::before{
  content: '';
  width: 46px;
  height: 46px;
  display: inline-block;
  background: url("../img/reserve_tel.png") no-repeat;
  margin-right: 20px;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .reserve_tel a::before{
    width: 30px;
    height: 30px;
    background-size: cover;
  }
}

/*-------------------------------
　　　PAGE -policy-
-------------------------------*/
.policy_contact{
  padding: 30px;
  background: #EEE;
  display: inline-block;
}

.policy_contact a{
  color: #2e2e2e;
  text-decoration: none;
}

.visit_name{
  font-weight: 600;
  margin-bottom: 10px;
}

/*-------------------------------
　　　PAGE -office-
-------------------------------*/
.spaceList{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.spaceList li{
  width: 360px;
}

@media screen and (max-width: 1110px) {
  .spaceList li{
    width: calc(100% / 3 - 10px);
  }
}

@media screen and (max-width: 768px) {
  .spaceList{
    width: 60%;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .spaceList li{
    width: 100%;
    margin-bottom: 20px;
  }
  .spaceList li:last-child{
    margin-bottom: 0;
  }
}

.spaceList_ttl{
  margin-bottom: 16px;
  font-weight: 600;
}

.spaceList_ttl::before{
  content: '';
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #34586B;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .spaceList_ttl{
    margin-bottom: 5px;
  }
  .spaceList_ttl::before{
    width: 16px;
    height: 16px;
  }
}

.bike_inner{
  padding: 80px 0;
  background: #EEE;
}

.bikeList{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.bikeList li{
  width: 48%;
}

.bike-link{
  text-align: center;
}

.bike-link a{
  width: 460px;
  display: inline-block;
  padding: 10px;
  background: #ECCF1B;
  text-align: center;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
}

.bike-link a:hover{
  background: #34586B;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .bike-link a{
    width: 70%;
    font-size: 16px;
  }
}

.mapWrap{
  width: 960px;
  margin: 0 auto;
}

@media screen and (max-width: 1110px) {
  .mapWrap{
    width: 90%;
  }
}

/*-------------------------------
　　　PAGE -model course-
-------------------------------*/
.course__lead{
  font-size: 60px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .course__lead{
    font-size:32px;
  }
}

.course_box{
  margin-left: 160px;
}

@media screen and (max-width: 768px) {
  .course_box{
    margin-left: 70px;
  }
}

.start,
.goal{
  width: 100%;
  line-height: 60px;
  color: #34586B;
  border: 3px solid #34586B;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  border-radius: 30px;
  background: #fff;
  position: relative;
  z-index: 2;
}

.start{
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .start,
  .goal{
    line-height: 40px;
    font-size: 21px;
  }
  .start{
    margin-bottom: 50px;
  }
}

.timeline{
  position: relative;
  width: 100%;
  height: 100%;
}

.timeline::before{
  content: '';
  width: 100%;
  height: 100%;
  left: 80px;
  border-left: 6px solid #34586B;
  position: absolute;
  display: block;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .timeline::before{
    left: 40px;
  }
}

 .wp_post .post-c img{
  margin: 0!important;
}

.nature-link{
  width: 100%;
  text-align: right;
}

.nature-link a{
  padding: 10px 80px;
  background:#ECCF1B!important;
  color: #2E2E2E!important;
}

@media screen and (max-width: 768px) {
  .nature-link{
    text-align: center;
  }
  .nature-link a{
    padding: 5px 40px;
  }
}


.map-pin::before{
  content: url("../img/page/mappin.png");
  display: inline-block;
  line-height: 24px;
  vertical-align: middle;
}

.required{
  margin: 20px 0 40px 160px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .required{
    margin: 20px 0 40px 70px;
  }
}

.required::before{
  content: '';
  width: calc(100% - 160px);
  height: 1px;
  border-bottom: 1px dotted #707070;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .required::before{
    width: calc(100% - 70px)
  }
}

.required span{
  padding: 10px 20px;
  margin: 0 160px;
  background: #fff;
  position: relative;
}

@media screen and (max-width: 768px) {
  .required span{
    padding: 0;
    margin:0 34%;
  }
}

.required span::before,
.required span::after{
  content: url(../img/page/required-b.png);
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}

.required span::before{
  top: -20px;
}
.required span::after{
  bottom: -30px;
}

/*-------------------------------
　　　PAGE -spot-
-------------------------------*/
.mB200{
  margin-bottom: 200px;
}

@media screen and (max-width: 768px) {
  .mB200{margin-bottom: 80px;}
}

.spot01,
.spot02,
.spot03{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}

@media screen and (max-width: 768px) {
  .spot01,
  .spot02,
  .spot03{
    flex-wrap: wrap;
  }
}

.spot_ttl{
  width: 50%;
  padding:80px 20px 80px 0;
}

.spot_ttl p{
  line-height: 2;
}

@media screen and (max-width: 1110px) {
  .spot_ttl{
    width: 100%;
    padding: 0 0 40px;
  }
}

.spot_ttl h1{
  margin-bottom: 60px;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 60px;
  font-weight: bold;
  line-height: 1.2;
}

.spot_ttl h1 span{
  margin-top: 10px;
  font-size: 18px;
  display: block;
}

@media screen and (max-width: 768px) {
  .spot_ttl h1{
    font-size: 32px;
  }
  .spot_ttl h1 span{
    font-size: 14px;
  }
}

.spot01_img{
  width: 50%;
}

@media screen and (max-width: 768px) {
  .spot01_img{
    width: 100%;
  }
}

.spot02_img,
.spot03_img{
  width: 410px;
}

@media screen and (max-width: 1100px) {
  .spot02_img,
  .spot03_img{
    width: 35%;
  }
}

@media screen and (max-width: 768px) {
  .spot02_img,
  .spot03_img{
    width: 100%;
  }
}

.spot2col li>p{
  text-align: right;
  margin:0 0 10px;
  padding: 0;
  font-size: 14px;
}

.spot01_img p,
.spot02_img p,
.spot03_img p{
  text-align: right;
  margin-bottom: 10px;
  font-size: 14px;
}

.spot02_info,
.spot03_info{
  width: 650px;
}

@media screen and (max-width: 1100px) {
  .spot02_info,
  .spot03_info{
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .spot02_info,
  .spot03_info{
    width:100%;
  }
}

.spot02_info p,
.spot03_info p{
  padding: 0 60px;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .spot02_info p,
  .spot03_info p{
    padding: 0 30px;
  }
}

.spot2col li,
.spot3col li{
  width: 320px;
}

@media screen and (max-width: 768px) {
  .spot2col li,
  .spot3col li{
    width: 100%;
  }
}

@media screen and (min-width: 769px) {
  .reverse{
    flex-flow: row-reverse;
  }
}

.spot2col{
  width: 100%;
  margin-bottom: 100px;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

@media screen and (max-width: 1100px) {
  .spot2col{
    margin-bottom: 60px;
  }
  .spot2col li{
    width: 49%;
  }
}

.maparea{
  width: 100%;
  height: 400px;
}

.maparea iframe{
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .maparea{
    height: 200px;
  }
}

/*-------------------------------
　　　PAGE -gourmet-
-------------------------------*/
.gourmet_under{
  padding-bottom: 100px;
  margin-bottom: 100px;
  border-bottom: 1px solid #707070;
}
@media screen and (max-width: 768px) {
  .gourmet{
    width: 100%;
    padding: 0 15px 50px;
    margin-bottom: 50px;
  }
}

.gourmet_2col{
  width: 100%;
  margin-bottom: 40px;
  display:flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}

.gourmet_info{
  width: 640px;
}

@media screen and (min-width: 1101px) {
  .gourmet_2col img{
    max-width: 440px;
  }
}

@media screen and (max-width: 1100px) {
  .gourmet_info{
    width: 55%;
  }
  .gourmet_2col img{
    width: 40%;
  }
}

@media screen and (max-width: 960px) {
  .gourmet_2col{
    flex-wrap: wrap;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .gourmet_info{width: 100%;}
  .gourmet_2col img{
    width: 100%;
    margin: 30px auto 0;
  }
  .gourmet_2col{
    margin-bottom: 5px;
  }
}

.gourmet_ttl{
  font-family:
  "Yu Mincho", "游明朝",
  "Hiragino Mincho ProN", "ヒラギノ明朝 ProN",
  "MS PMincho", "ＭＳ Ｐ明朝",
  serif;
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 10px;
}

.gourmet_ttl span{
  font-size: 21px;
  display: block;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .gourmet_ttl{
    margin-bottom: 20px;
    font-size: 24px;
  }
  .gourmet_ttl span{
    font-size: 18px;
  }
}

.gourmet_add{
  margin-bottom: 24px;
  text-align: right;
}

.gourmet_add a{
  color: #2e2e2e;
}

.gourmet_add a::before{
  content: url("../img/page/gourmet/map.png");
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
  line-height: 24px;
}

.gourmet dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.gourmet dl > dt,
.gourmet dl > dd {
  margin: 0px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1;
}
.gourmet dl > dt {
  width: 30%;
  text-align: right;
  padding: 5px 0;
}

.gourmet dl > dd {
  width: 70%;
  padding: 5px 15px;
  text-decoration: none!important;
}

.gourmet dl > dd a{
  text-decoration: none!important;
  pointer-events: none!important;
  cursor: default!important;
}

.gourmet_comment{
  max-width: 440px;
  margin-bottom: 20px;
}

.gourmet_bikou {
  margin-left: calc(30% + 10px);
  font-size: 12px;
}

@media screen and (max-width: 1100px) {
  .gourmet dl {
    font-size: 14px;
  }
  .gourmet dl > dt{
    width: 40%;
  }
  .gourmet dl > dd{
    width: 60%;
  }
  .gourmet_bikou{
    margin-left: calc(35% + 10px);
  }
  .gourmet_comment{
    max-width: 100%;
  }
}


.gImg2col{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
}

.gImg2col li:first-child{
  margin-right: 16px;
}

@media screen and (max-width: 960px) {
  .gImg2col li:first-child{
    margin-right: 10px;
  }
}

@media screen and (max-width: 768px) {
  .gImg2col li:first-child{
    margin-right: 5px;
  }
  .gImg2col li{
    height: 180px;
  }
  .gImg2col li img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.gImg3col{
  width: 100%;
  display:flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
}

.gImg3col li:nth-child(3n-1){
  margin: 0 16px;
}

@media screen and (max-width: 768px) {
  .gImg3col li{
    width: calc(100% / 3);
    height: 180px;
  }
  .gImg3col li:nth-child(3n-1){
    margin: 0 5px;
  }
  .gImg3col li img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

