@charset "utf-8";
/* CSS Document */

/* ---------------------------------------------
　keyvisual
------------------------------------------------ */

.keyvisual {
	margin-bottom: 20px;
}

/* ---------------------------------------------
　content
------------------------------------------------ */
.top .content {
    width: 100%;
    float: none;
    text-align: inherit;
}
.top .content h2{
	clear:both;
	margin:30px 0 0;
	font-weight:bold;
	color: #1c827e;
 	padding:8px 10px 8px 20px;
	font-size: 214%;
    background: none;
    border: 0;
}
.top .content h2::after {
	display: none;
}
.bg_sky {
	background: -ms-linear-gradient(-90deg, #baeeff 70%, #fff); 
	background: -moz-linear-gradient(-90deg, #baeeff 70%, #fff);
  	background: -webkit-linear-gradient(-90deg, #baeeff 70%, #fff);
	padding-top: 20px;
}
.bg_cloud {
	background-image: url(/themes/main/top/images/bg_cloud.png);
	background-repeat: no-repeat;
	background-size: 1360px;
	background-position: top center;
}
.town img {
	width: 100%;
}


/* ------ attention ------------------------------- */

.attention {
	border: 3px solid #eb0b00;
	border-radius: 10px;
	background: #fff;
	padding: 0 30px;
}
.attention dl {
	margin: 0;
	padding: 15px 10px;
	border-bottom: solid 1px #ccc;
}
.attention dl:last-child {
	border: none;
}
.attention dl dt,
.attention dl dd {
	border: none;
	padding: 0;
}
.attention dl dt {
  	width: auto;
	float: left;
	margin-right: 9px;
	white-space: nowrap;
}
.attention dl dt .date {
  	float: left;
	font-size: 128%;
	padding-right: 20px;
	color: #333;
	margin-top: 2px;
}
.attention dl dt .cat {
	font-family: "Migu 1P bold";
	color: #fff;
	height: 30px;
	line-height: 30px;
	font-size: 107%;
	background: #eb0b00;
	border-radius: 20px;
	float: left;
	width: 175px;
	text-align: center;
	margin-right: 34px;
}
.attention dl dt .cat img {
    vertical-align: middle;
    margin-bottom: 5px;
	margin-right: 5px;
}
.attention dt {
  	float: left;
	width: 10em;
	padding: 8px 8px 8px 2px;
  	font-size: 85%; 
}
.size_large .attention dt {
    float: none;
}
.size_large .attention dl dt .cat {
    width: auto;
    padding: 0 10px;
}
.attention dd {
  	font-size: 92%;
  	margin-bottom: 0;
  	padding: 8px 15px 8px 11em;
	border-bottom: 1px solid #dad5ce; 
	text-align: left;
}
.attention dl dd {
	padding: 0 0 0 270px;
	text-align: left;
}
.size_large .attention dl dd {
    padding: 0;
    clear: both;
}
.attention dl dd a {
	font-size: 128%;
	color: #eb0b00;
	margin-top: 1px;
}
.attention dl dd a:hover {
	text-decoration: none;
}


/* ------ menu_area menu_tab ------------------------------- */

.menu_area .menu_tab ul {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	margin-bottom: 25px;
}
.menu_area .menu_tab li {
	margin: 0 30px;
}
.menu_area .menu_tab li img {
	visibility: hidden;
}
.menu_area .menu_tab li a {
	display: block;
} 

.menu_area .menu_tab li:hover img,
.menu_area .menu_tab li a.on img {
	visibility: inherit;
	opacity: 1;
}
.menu_area .menu_tab li a#field {
	background-image: url(/themes/main/top/images/btn_field.png);
	background-repeat: no-repeat;
}
.menu_area .menu_tab li a#purpose {
	background-image: url(/themes/main/top/images/btn_purpose.png);
	background-repeat: no-repeat;
}
.menu_area .menu_tab li:hover a#field,
.menu_area .menu_tab li a#field.on,
.menu_area .menu_tab li:hover a#purpose,
.menu_area .menu_tab li a#purpose.on{
	background: none;
}

/* ------ menu_area menu_list ------------------------------- */

.menu_area .menu_list {
	display: none;
	width: 100%;
	position: relative;
}
.menu_area .menu_list.on {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
}
.menu_area .menu_list .box {
	width: 200px;
	min-height: 230px;
	border-radius: 5px;
	box-shadow: 0 2px 0 rgba(0, 0, 0, .3);
	position: relative;
	padding: 15px 0;
	background: #fff;
}
.menu_area .menu_list .box a {
	text-decoration: none;
	display: block;
}
.menu_area .menu_list .box a:hover {
	opacity: .7;
}
.menu_area .menu_list .box a img {
	margin-top: 10px;
}
.menu_area .menu_list .box a img:hover {
	opacity: 1;
}
.menu_area .menu_list#field .box {
	border: 3px solid #36b1aa;
}
.menu_area .menu_list#purpose .box {
	border: 3px solid #ffad37;
}
.menu_area .menu_list .box h3 {
	font-family: "Migu 1P bold";
	font-size: 143%;
	background: none;
	font-size: 114%;
	color: #333;
	margin-top: 0;
	padding: 0;
	line-height: 1.5;
}
.menu_area .menu_list .box h3::after,
.menu_area .menu_list .box h3::before {
	display: none;
}
.menu_area .menu_list .box h3 span {
	font-size: 143%;
}
.menu_area .menu_list#field .box h3 span {
	background: linear-gradient(transparent 70%, rgba(98, 207, 193, .5) 70%);
}
.menu_area .menu_list#purpose .box h3 span {
	background: linear-gradient(transparent 70%, rgba(255, 173, 55, .5) 70%);
	line-height: 1.2;
}
.menu_area .menu_list#purpose .box h3.pd15 {
	padding: 15px;
}
.menu_area .menu_list .box ul {
	margin: 0;
}
.menu_area .menu_list .box ul li {
	text-align: left;
	color: #333;
	padding-left: 20px;
	margin: 0;
}
.menu_area .menu_list .box ul li::before {
	width: 6px;
	height: 6px;
	border-radius: 100px;
    left: 8px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.menu_area .menu_list#field .box ul li::before {
	background: #117472;
}
.menu_area .menu_list#purpose .box ul li::before {
	background: #ea7f00;
}
.menu_area .menu_list#field .box p {
	position: absolute;
	bottom: 10px;
	right: 10px;
	color: #333;
}

/* ------ news_area news_tab ------------------------------- */

.news_area .news_tab {
	margin-bottom: 40px;
}
.news_area .news_tab ul {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
}
.news_area .news_tab li {
	font-size: 15px;
	width: 140px;
	height: 36px;
	margin: 0 5px;
	box-sizing: border-box;
}
.news_area .news_tab li input {
	display: none;
}
.news_area .news_tab li input + label {
  	display: block;
  	width: 100%;
  	height: 100%;
	padding-left: 	15px;
	line-height: 35px;
	background: #f7f0e1;
	background-position: 6% 50%;
	background-repeat: no-repeat;
	box-shadow: 0px 2px 0px #ccbfa3;
	text-decoration: none;
  	text-align: center;
	position: relative;
	border-radius: 20px;
	box-sizing: border-box;
	color: #333;
}
.news_area .news_tab li:first-child {
	margin-right: 20px;
}
.news_area .news_tab li input.on + label,
.news_area .news_tab li input + label:hover {
	background: -ms-linear-gradient(0deg, #1b8a88, #3599bd);!important; 
	background: -moz-linear-gradient(0deg, #1b8a88, #3599bd);!important; 
  	background: -webkit-linear-gradient(0deg, #1b8a88, #3599bd);!important; 
	color: #fff;
	box-shadow: none;
	cursor: pointer;
}
.news_area .news_tab li input.on + label::after,
.news_area .news_tab li input + label:hover::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border: 5px solid transparent;
	border-top: 5px solid #248f9b;
}
.news_area .news_tab li input + label::before {
	background-repeat: no-repeat;
	background-size: 100%;
	width: 11px;
	height: 11px;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.news_area .news_tab li input#all + label::before {
	width: 16px;
	height: 12px;
}
.news_area .news_tab li input#all + label::before {
	background-image: url(/themes/main/top/images/icon_all.png);
	left: 30px;
}
.news_area .news_tab li input#info + label::before { 
	background-image: url(/themes/main/top/images/icon_info.png);
	left: 30px;
}
.news_area .news_tab li input#event + label::before{ 
	background-image: url(/themes/main/top/images/icon_event.png);
	left: 10px;
}
.news_area .news_tab li input#consultation + label::before { 
	background-image: url(/themes/main/top/images/icon_consultation.png);
	left: 30px;
}
.news_area .news_tab li input#donation + label::before { 
	background-image: url(/themes/main/top/images/icon_donation.png);
	left: 30px;
}
.news_area .news_tab li input#recruit + label::before { 
	background-image: url(/themes/main/top/images/icon_recruit.png);
	left: 30px;
}
.news_area .news_tab li input.on + label::before, 
.news_area .news_tab li input + label:hover::before { 
	background-image: url(/themes/main/top/images/icon_category_on.png)!important;
}
.news_area .news_tab li input#all.on + label::before, 
.news_area .news_tab li input#all + label:hover::before { 
	background-image: url(/themes/main/top/images/icon_all_on.png)!important;
}


.news_area .news_tab li.last {
	margin: 0;
}

/* ------ news_area important ------------------------------- */

.news_area .important {
	background: #fffaee;
	padding: 35px 0;
	margin-bottom: 40px;
}
.news_area .important .inner {
	position: relative;
}
.news_area .important .box {
	margin-left: 130px;
	padding-top: 10px;
	background: #fff;
	border-radius: 10px;
	border: 2px solid #d3a343;
	position: relative;
	z-index: 1;
	box-shadow: 0px 1px 2px rgba(0, 0, 0, .3);
}
.news_area .important .box::after {
	content: "";
	display: block;
	background: url(/themes/main/top/images/img_fukidashi.png);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 50px;
	height: 24px;
	position: absolute;
    top: 14px;
    left: -48px;
	z-index: 2;
	visibility: inherit;
}
.news_area .important .marumi {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -140px;
	margin: auto;
}
.news_area .important .title {
	font-family: "Migu 1P bold";
	font-size: 120%;
	background: #d3a343;
	color:#fff;
	text-align: center;
	border-radius: 20px;
	width: 165px;
	height: 30px;
	line-height: 30px;
	position: absolute;
	top: -15px;
	left: 30px;
	margin: 0;
}
.size_large .news_area .important .title {
	width: auto;
	padding: 10px 20px;
	height: auto;
	border-radius: 100px;
}
.news_area .important dl {
	margin: 0 10px;
    padding: 18px 10px;
}
.news_area .important dl:last-child {
	border: none;
}
.news_area .important dl dd {
	padding: 0 0 0 290px;
}
.size_large .news_area .important dl dt {
	margin: 20px 0 10px;
}
.size_large .news_area .important dl dd {
	padding: 0;
}

/* ------ news_area.news_list ------------------------------- */

.news_area .news_list {
	display: none;
	border-top: solid 1px #ccc; 
}
.news_area .news_list > p {
  margin: 8px 20px;
}


/* ------ news_area.news_link ------------------------------- */


.news_area .news_link {
	display: none;
	width: 100%;
	position: relative;
	text-align: center;
}
.news_area .news_list.on,
.news_area .news_link.on,
.news_area .news_list.on + .news_link {
	display: block;	
}
.news_area .news_link a,
.activity_area .news_link a {
	display: inline-block;
	margin: 35px auto 60px;
	border-radius: 50px;
	border: 1px solid #1c827e;
	position: relative;
	color: #333;
	font-size: 128%;
	width: 290px;
	height: 53px;
	line-height: 53px;
	text-decoration: none;
	text-align: center;
	position: relative;
}
.size_large .news_area .news_link a,
.size_large .activity_area .news_link a  {
	width: auto;
	padding: 10px 60px;
}
.news_area .news_link a::before,
.activity_area .news_link a::before {
	background-image: url(/themes/main/images/icon_btn_arrow.png);
	background-repeat: no-repeat;
	background-size: 100%;
	width: 14px;
	height: 13px;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 35px;
	margin: auto;
}
.news_area .news_link a:hover,
.activity_area .news_link a:hover {
	background: #1c827e;
	color: #fff;
	text-decoration: none;
}
.news_area .news_link a:hover::before,
.activity_area .news_link a:hover::before  {
	background-image: url(/themes/main/images/icon_btn_arrow_on.png);
}
.size_large .activity_area .activity_item .cat {
	float: none;
}
.size_large .activity_area .activity_item .date {
	text-align: left;
}

/* ------ news_area dl ------------------------------- */

.news_area dl {
	margin: 0;
	padding: 15px 10px;
	border-bottom: solid 1px #ccc;
}
.news_area dl dt,
.news_area dl dd {
	border: none;
	padding: 0;
}
.news_area dl dt {
  	width: auto;
	float: left;
  	margin-right: 9px;
	white-space: nowrap;
}
.size_large .news_area dl dt {
	margin: 0 0 10px;
}
.news_area dl dt .date {
  	float: left;
	font-size: 128%;
	padding-right: 20px;
}
.news_area dl dt .cat {
	font-family: "Migu 1P regular";
	font-size: 107%;
	display: inline-block;
	width: 125px;
	height: 20px;
	line-height: 20px;
	margin-top: -2px;
	margin-left: 10px;
	padding: 0 7px;
	background: #f1ece1;
 	border-radius: 9px;
	color: #333;
	text-align: center;
	vertical-align: middle;
	position: relative;
	box-sizing: border-box;
}
.size_large .news_area dl dt .cat {
    height: auto;
    line-height: inherit;
	border-radius: 100px;
	padding: 0 10px;
}
.news_area dt {
  	clear: left;
  	float: left;
	width: 10em;
	padding: 8px 8px 8px 2px;
  	font-size: 85%; 
}
.news_area dd {
  	font-size: 92%;
  	margin-bottom: 0;
  	padding: 8px 15px 8px 11em;
	border-bottom: 1px solid #dad5ce; 
	text-align: left;
}
.news_area dl dt .cat img {
    vertical-align: middle;
    margin-bottom: 1px;
	margin-right: 5px;
}
.news_area dl dd {
	padding: 0 0 0 290px;
	text-align: left;
}
.news_area dl dd a {
	font-size: 128%;
}
.news_area dl dd a:hover {
	text-decoration: none;
}
.news_area dl .new {
	display: inline-block;
	color: #fff;
	font-family: "Migu 1P regular";
	margin-left: 20px;
	padding: 0 10px;
	border-radius: 15px;
	background: #eb0b00;
	font-size: 92%;
	line-height: 20px;
}
.news_area dl .new.sp {
	display: none;
}
.size_large .news_area dt {
	float: none;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
}
.size_large .news_area dd {
	padding-left: 0;
}
.size_large .news_area dl dt .cat {
	width: auto;
}

/* ------ activity_area ------------------------------- */

.activity_area .inner {
	margin-top: 30px;
}
.activity_area .news_link a {
	margin: -5px auto 90px;
}
.activity_area a {
	color: #333;
	text-decoration: none;
}
.activity_area .activity_wrap {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.activity_area .activity_wrap::after,
.activity_area .activity_wrap::before {
	display: block;
	content: "";
	width: 23%;
}
.activity_area .activity_wrap::before {
	order: 1;
}
.activity_area .activity_item {
	width: 24%;
}
.activity_area .activity_item a:hover > * {
	opacity: 0.7;
}
.activity_area .activity_item a:hover img {
	opacity: 1!Important;
}
.activity_area .activity_item .img {
	width: 100%;
	height: 160px;
	position: relative;
	overflow: hidden;
}
.activity_area .activity_item .img img {
	object-fit: cover;
    width: 100%;
    height: 100%;
}
@media screen\0 {
.activity_area .activity_item .img img {
	width: auto;
	height: auto;
	min-width: 100%;
	max-width: 120%;
	min-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
}
.activity_area .activity_item .title {
    margin-top: 10px;
    font-size: 115%;
}
.activity_area .activity_item .cat {
    float: left;
    margin-top: 5px;
    color: #1c827e;
	font-weight: bold;
}
.activity_area .activity_item .date {
    margin-top: 7px;
    font-size: 86%;
	color: #aaa;
	text-align: right;
}
.activity_area .news_link {
	width: 100%;
	position: relative;
	text-align: center;
	clear: both;
}

/* ------ banner_area ------------------------------- */

.banner_area {
	padding: 55px 0;
	background-color: #e3f7f6;
    background-image: url(/themes/main/images/bg_green.png);
	background-repeat: repeat;
}
.banner_area ul {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	margin-top: 0;
}
.banner_area_slider {
	padding: 50px 0;
	background: #fdf7eb;
}
.banner_area_slider .inner {
	position: relative;
}
.swiper-container {
    padding: 0 15px;
    -ms-position: auto;
	position: unset;
}
.swiper-wrapper {
	margin-top: 0!important;
}
.swiper-pagination {
	display: none;
}
.swiper-button-prev {
	width: 29px;
	height: 30px;
	background: url(/themes/main/top/images/icon_prev.png)no-repeat;
	background-size: 100%;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}
.swiper-button-next  {
	width: 29px;
	height: 30px;
	background: url(/themes/main/top/images/icon_next.png)no-repeat;
	background-size: 100%;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
	opacity: 0.7;
}

/* ------ access_area ------------------------------- */

.access_area .map {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	margin-top: 20px;
}
.access_area .map #map {
	width : -webkit-calc(100% - 560px) ;
	width : calc(100% - 560px) ;
	min-height: 420px;
	vertical-align: bottom;
}
.access_area .map .info {
	width: 560px;
	display: none;
}
.access_area .map .info.facility_yamamoto {
	display: block;
}
.access_area .map .info .tel {
	margin-right: 10px;
	display: inline-block;
}
.access_area .map .info p {
	margin: 0;
	font-size: 114%;
	padding: 8px 20px;
	line-height: 1.5;
}
.access_area .map .info p.green {
	color: #fff;
	background: #1c827e;
	font-size: 143%;
	padding: 5px 20px;
	font-weight: bold;
}
.access_area .bg_green {
	background-color: #e3f7f6;
    background-image: url(/themes/main/images/bg_green.png);
	background-repeat: repeat;
	padding: 40px 0;
}
.access_area .bg_green .inner {
	display: -ms-flexbox; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.access_area .bg_green .inner::after {
	display: none;
}
.access_area .bg_green .box {
	width: 260px;
	border-radius: 5px;
	border: 1px solid #36b1aa;
	box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.6);
	background: #fff;
	padding: 10px 20px;
	margin-bottom: 10px;
	box-sizing: border-box;
}
.access_area .bg_green .box .place {
	background:url(/themes/main/images/icon_arrow_green01.png) no-repeat 0 0.4em;
	padding-left: 20px;
  	margin-bottom: 5px;
	position: relative;
	font-size: 128%;
	font-weight: bold;
	color: #1c827e;
	margin-top: 0;
	line-height: 1.5;
}
.access_area .bg_green .box .place .small {
	font-size: 77%;
	display: block;
}
.access_area .bg_green .box .txt {
	margin-top: 5px;
	line-height: 1.5;
}

/* ---------------------------------------------
　footer
------------------------------------------------ */

.footer {
	background: #fff;
	
}