@charset "utf-8";
@import url("https://fonts.googleapis.com/earlyaccess/sawarabimincho.css");
@import url('https://fonts.googleapis.com/css?family=Playfair+Display:400i');
/* CSS Document */
*{
	margin: 0;
	padding: 0;
} 
body {
	font-size: 16px;
	letter-spacing: 1px;
	font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
	word-wrap : break-word;
	overflow-wrap : break-word;
	line-height: 1.5;
}
img{
	vertical-align:bottom;
	width: 100%;
	height: auto;
}
h1,h2,h3,h4,h5{
	font-size:100%;
	font-weight: normal; 
}
ul,ol{
	list-style-type: none;
}
a{
	text-decoration: none;
}
address{
	font-style: normal;
}
h2:empty,h3:empty,h4:empty,h5:empty,h6:empty,p:empty{
	display: none!important;
}
/* ----- other ----- */
.font_play{
	font-family: "Playfair Display","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
	letter-spacing: 2px;
}
.red{
	color: red;
}
.square_img,.rectangle_img{
	position: relative;
	overflow: hidden;
}
.square_img img,.rectangle_img img{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.rectangle_img img{
	width: 100%;
	height: auto;
}
.normal_img{
	text-align: center;
}
.clearfix::after{
	clear:both;
	content:".";
	visibility:hidden;
	display:block;
	height:0;
}
.inline_b{
	display: inline-block;
}
.table{
	display: table;
	width: 100%;
}
.table_cell{
	display: table-cell;
	vertical-align: middle;
}
.flex_box{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: center;
	position: relative;
}
.width_wrap{
	width: 100%;
	max-width: 1280px;
	min-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
.pc_hide{
	display: none;
}
.font_24{
	font-size: 24px;
	letter-spacing: 2px;
}
.font_20{
	font-size: 20px;
	letter-spacing: 2px;
}
.font_18{
	font-size: 18px;
	letter-spacing: 2px;
}
.font_16{
	font-size: 16px;
}
.font_14{
	font-size: 14px;
}
.font_bold{
	font-weight: bold;
}
.half_line1,.half_line2,.half_line3,.half_line4{
	position: relative;
}
.half_line1::after,.half_line2::after,.half_line3::after,.half_line4::after{
	content: "";
	position: absolute;
	width: 50%;
	height: 2px;
	border-radius: 2px;
	top: 100%;
	margin-top: 10px;
	left: 25%;
}
.txt_hide{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}
.pager{
	text-align: center;
	width: 80%;
	margin: 0 auto 80px;
}
.pager li{
	display: inline-block;
	margin: 0 10px;
}
.pager li.prev{
	position: relative;
}
.pager li.prev i{
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
}
.pager li.prev:first-of-type i{
	right: 100%;
}
.pager li.prev:last-of-type i{
	left: 100%;
}
.pager li.on_page{
	border-bottom: 2px solid;
}
.pager li a{
	display: block;
	box-sizing: border-box;
	padding: 5px 10px;
	transition: all 0.3s;
	font-size: 14px;
}
.pager li a:hover{
	opacity: 0.5;
}
.over_txt{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.over_txt br{
	display: none;
}
.cate_list{
	text-align: left;
	width: 90%;
	padding: 15px 15px 0;
	box-sizing: border-box;
	margin: 0 auto 50px;
}
.cate_list li{
	display: inline-block;
	margin: 0 15px 15px 0;
}
.cate_list li a{
	display: block;
	text-align: center;
	padding: 5px 10px;
}
.cate_list li a span{
	text-align: left;
}
.cms_wrap{
	width: 80%;
	max-width: 1000px;
	margin: 0 auto 100px;
}
/*ページ共通部分*/
#wrap{
	width: 100%;
	min-width: 1000px;
	margin: 0 auto;
	overflow:hidden;
}
/*header*/
header{
} 
header #header_top{
	padding: 10px 0;	
}
header #header_top #sub_menu,header #header_top #sns_link{
	width: 50%;
	box-sizing: border-box;
	padding: 0 5px;
}
header #header_top ul li{
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
}
header #header_top #sub_menu{
	text-align: left;
}
header #header_top #sub_menu{
}
header #header_top #sns_link{
	text-align: right;
}
header #header_top #sns_link ul li{
	width: 30px;
}
header #header{
}
header #header .logo{
	border-bottom: 1px solid;
}
header #header h1{
	text-align: center;
	padding: 30px 0;
}
.logo1 img{
	width: 30%;
	max-width: 250px;
}
.logo2 img{
	width: 50%;
	max-width: 400px;
}
header #header #main_menu{
	padding: 30px 0;
}
header #header #main_menu ul li{
	margin: 0 2%;
}
header #header #main_menu ul li span{
	display: block;
	text-align: center;
	letter-spacing: 2px;
}
header #header #header_right{
	text-align: right;
	padding: 0 3%;
}
.slicknav_menu{
	display: none;
}
/*page_title*/
#page_title{
	position: relative;
	margin-bottom: 100px;
}
#page_title::after{
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	top: 50%;
	z-index: -1;
}
#page_title > div{
	width: 80%;
	margin: 0 auto 30px;
	max-width: 1000px;
	padding: 10px;
	box-sizing: border-box;
	box-shadow: 1px 3px 6px rgba(0,0,0,0.3);
}
#page_title > div div{
	border: 1px solid;
	text-align: center;
	padding: 30px;
}
/*info*/
#info{
	padding: 60px 0;
	position: relative;
}
#info::after,#info::before{
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
}
#info::after{
	bottom: 29px;
}
#info::before{
	top: 29px;
}
#info .box_wrap{
}
#info .box_wrap .box{
	width: 50%;
	box-sizing: border-box;
	padding: 0 2%;
}
#info .box_wrap .box .info_title,#info .box_wrap .box > p{
	margin-bottom: 20px;
	text-align: left;
}
#info .box_wrap .box > p{
	padding-left: 10px
}
#info .box_wrap .box tel{
	border-bottom: 1px solid;
	transition: all 0.3s;
}
#info .box_wrap .box .more a{
	padding: 5px 10px;
	border-radius: 3px;
	transition: all 0.3s;
	display: inline-block;
}
#info .box_wrap .box .more a:hover,#info .box_wrap .box tel:hover{
	opacity: 0.5;
}
/*footer*/
footer{
	text-align: center;
}
footer #footer{
	border-bottom: 2px solid;
	padding: 60px 0;
}
footer #footer .logo{
	margin-bottom: 40px;
}
footer #footer #footer_cms{
	box-sizing: border-box;
	display: inline-block;
	text-align: left;
}
footer #copyright{
	padding: 10px;
}
/*page top*/
#page-top {
    position: fixed;
    bottom: 50px;
    right: 50px;
	z-index: 99;
}
#page-top a{
	display: block;
	border-radius: 50%;
	overflow: hidden;
	transition: all 0.3s;
	box-sizing: border-box;
	padding: 15px 10px 10px;
	border: 2px solid;
}
#page-top a svg{
	width: 30px;
	height: 18px;
}
#page-top a:hover{
	opacity: 0.7;
}
/*index.html*/
#main_img{
	margin: 0 auto;
	position: relative;
}
#main_img .box_img{
	transition: all 0.3s;
}
#main_img #catch{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 99;
	max-width: 700px;
	text-align: center;
	border: 5px solid;
	padding: 10px;
	box-sizing: border-box;
}
#main_img #catch h2{
	margin: 5px 0;
}
#main_img #catch p{
	display: inline-block;
	text-align: left;
	margin: 5px 0;
}
.swiper-container{
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}
#main_img .swiper-slide img{
	opacity: 0.5;
	transition: all 0.5s;
}
#main_img .swiper-slide-active img{
	opacity: 1;
}
.swiper-button-prev,.swiper-button-next{
	width: 50px!important;
	height: 50px!important;
	margin: 0!important;
	transform: translate(0,-50%);
}
.swiper-button-prev{
	left: 0!important;
}
.swiper-button-next{
	right: 0!important;
}
.swiper-button-prev i,.swiper-button-next i{
	position: absolute;
	left: 50%;
	top:50%;
	transform: translate(-50%,-50%);
	font-size: 30px;
}
#intro{
	box-sizing: border-box;
	padding: 80px 10%;
}
#intro h2{
	margin-bottom: 20px;
}
#intro p{
	line-height: 2;
}
#contents{
	position: relative;
	margin-bottom: 100px;
}
#contents .box_wrap{}
#contents > .box{
	position: absolute;
	height: 100%;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
}
#contents > .box figure{
	width: 40%;
	position: absolute;
	left: 5%;
	top: 50%;
	transform: translate(0,-50%);
}
#contents > .box figure img{
	height: 100%;
	width: auto;
}
#contents .box_wrap .box{
	padding: 100px 10px;
	box-sizing: border-box;
}
#contents .box h3,#contents .box p{
	padding-left: 50%;
	box-sizing: border-box;
}
#menu_box{
	margin-bottom: 100px;
}
#menu_box .box{
	width: 25%;
	margin: 2%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	text-align: center;
}
#menu_box .box a > div{
	position: absolute;
	width: 80%;
	height: 80%;
	top: 10%;
	left: 10%;
	transition: all 0.5s;
}
#menu_box .box a:hover > div{
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
#menu_box .box a > div > div{
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#menu_box .box a > div > div::after{
	content: "";
	position: absolute;
	width: 70px;
	height: 3px;
	top: 100%;
	left: 50%;
	margin-top: 5px;
	transform: translate(-50%,0);
}
/*top_cms*/
.top_cms{
	width: 100%;
	box-sizing: border-box;
	margin: 0 auto 100px;
	max-width: 1000px;
}
.top_cms:last-of-type{
	margin-bottom: 100px;
}
.top_cms .box_wrap{
}
.top_cms .top_cms_title{
	text-align: center;
	margin-bottom: 30px;
}
.top_cms .top_cms_title p{
	display: inline-block;
	position: relative;
	line-height: 1;
	letter-spacing: 2px;
}
.top_cms .top_cms_title .more{
	text-align: center;
}
.top_cms .top_cms_title a{
	display: block;
}
.top_cms .more{
	display: block;
	width: 100%;
	text-align: center;
	padding: 30px 10px 0;
	box-sizing: border-box;
}
.top_cms .more a{
	transition: all 0.3s;
}
.top_cms .more a:hover{
	opacity: 0.5;
}
.page2_cms {
	border-bottom: 1px solid;
	border-top: 1px solid;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: flex-start;
    align-items: center;
	position: relative;
	padding: 50px 0;
}
.page2_cms .top_cms_title{
	width: 20%;
	margin-bottom: 0;
}
.page2_cms .box_wrap{
	width: 80%;
	margin-bottom: 0;
}
.page2_cms .box{
	margin: 10px 0;
}
.page2_cms .box a{
    justify-content: flex-start;
    align-items: flex-start;
	transition: all 0.3s;
}
.page2_cms .box a:hover{
	opacity: 0.5;
}
.page2_cms .box .date{
	width: 15%;
}
.page2_cms .box h4{
	width: 85%;
}
.page3_cms .box_wrap{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: flex-start;
	position: relative;
}
.page3_cms .box_wrap .box{
	width: 25%;
	box-sizing: border-box;
	padding: 1%;
	text-align: center;
}
.page3_cms .box_wrap .box div{
	padding: 10px;
	border: 1px solid;
	margin-bottom: 10px;
}
/*page4_cmsはpage4を参照*/
.page6_cms{
	
}
.page6_cms .box_wrap{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: flex-start;
	position: relative;
}
.page6_cms .box_wrap .box{
	width: 50%;
	box-sizing: border-box;
	padding: 2%;
	text-align: left;
}
.page6_cms .box_wrap .box .box_img2{
	margin-bottom: 10px;
}
.page6_cms .box_wrap .box .box_title2{
	position: absolute;
	bottom: 10px;
	left: 10px;
	padding: 10px;
}

/*page2.html*/
#page2{}
#page2 .box_wrap{
}
#page2 .box{
	width: 80%;
	margin: 0 auto 50px;
	padding-bottom: 50px;
	border-bottom: 1px solid;
}
#page2 .box .date{
	font-size: 12px;
	font-style: italic;
	display: inline-block;
	border-bottom: 2px solid;
	margin-bottom: 20px;
}
#page2 .box .box_title1{
	margin-bottom: 20px;
}
#page2 .box .box_txt{
	font-size: 14px;
}
#page2 .box .box_img{
	width: 70%;
	margin-bottom: 20px;
}
/*page3.html*/
#page3{}
#page3 .cate{
	width: 100%;
	margin: 0 auto 100px;
}
#page3 .cate .cate_wrap{
	width: 100%;
    justify-content: flex-end;
    align-items: flex-start;
}
#page3 .cate .cate_wrap .cate_item{
	width: 50%;
	box-sizing: border-box;
	padding: 2%;
}
#page3 .cate .cate_title{
	margin-bottom: 40px;
}
#page3 .cate .sub_cate_title{
	margin-bottom: 10px;
}
#page3 .cate .sub_cate{
	margin-bottom: 50px;
}
#page3 .cate .box{
	margin-bottom: 30px;
}
#page3 .cate .box:last-of-type{
	margin-bottom: 0px;
}
#page3 .cate .box .box_item{
	border-top: 1px solid;
	padding-top: 10px;
	margin-top: 10px;
}
#page3 .cate .box .box_item figure{
	width: 50%;
	padding: 2%;
	box-sizing: border-box;
}
/*page4.html*/
#page4{}
#page4 .box,.page4_cms .box{
	padding: 20px;
	border-top: 1px solid;
	border-bottom: 1px solid;
	margin-bottom: 30px;
}
#page4 .box .box_title1,.page4_cms .box .box_title1{
	padding-right: 50px;
	position: relative;
	cursor: pointer;
}
#page4 .box .box_title1::before,#page4 .box .box_title1::after,.page4_cms .box .box_title1::before,.page4_cms .box .box_title1::after{
	content: "";
	position: absolute;
	display: block;
	border-radius: 3px;
	width: 20px;
	height: 4px;
	right: 0;
	top: 50%;
}
#page4 .box .box_title1::after,.page4_cms .box .box_title1::after{
	transform: rotate(90deg);
	transition: all 0.3s;
}
#page4 .box .box_title1.on_click::after,.page4_cms .box .box_title1.on_click::after{
	transform: rotate(0deg);
	transition: all 0.3s;
}

#page4 .box .box_item,.page4_cms .box .box_item{
	display: none;
	padding-top: 20px;
}
#page4 .box .box_item figure,.page4_cms .box figure{
	width: 70%;
	margin: 0 auto 20px;
}

/*page5.html*/
#page5 .cate{
	width: 100%;
	margin: 0 auto 100px;
}
#page5 .cate .cate_title{
	text-align: center;
	margin-bottom: 30px;
}
#page5 .cate .cate_title span{
	border-bottom: 2px solid;
	text-align: left;
}
#page5 .cate .box_wrap{
	width: 90%;
	margin: 0 auto;
    justify-content: flex-start;
    align-items: flex-start;
}
#page5 .cate .box_wrap .box{
	width: 33.333%;
	padding: 1%;
	margin-bottom: 20px;
	box-sizing: border-box;
	text-align: center;
}
#page5 .cate .box_wrap .box figure{
	margin-bottom: 10px;
}
#page5 .cate .box_wrap .box figure a{
	display: block;
}
#page5 .cate .box_wrap .box figure a i{
	position: absolute;
	top: 20px;
	right: 20px;
	color: #ffffff;
	opacity: 0;
	transition: all 0.3s;
}
#page5 .cate .box_wrap .box figure a img{
	transition: all 0.3s;
}
#page5 .cate .box_wrap .box figure a:hover img{
	opacity: 0.4;
}
#page5 .cate .box_wrap .box figure a:hover i{
	opacity: 1;
}
/*page6.html*/
#page6{}
#page6 .cate{
	width: 100%;
	margin: 0 auto 100px;
}
#page6 .cate .cate_title{
	text-align: center;
	margin-bottom: 30px;
}
#page6 .cate .cate_title span{
	text-align: left;
	border-bottom: 2px solid;
	padding: 5px 15px;
}
#page6 .cate .cate_txt1{
	text-align: left;
	padding: 3% 5%;
	border: 1px solid;
	margin-bottom: 50px;
}
#page6 .cate .box_wrap{
    justify-content:left;
    align-items:flex-start;
}
#page6 .cate .box{
	width: 50%;
	box-sizing: border-box;
	padding: 2%;
	text-align: left;
	margin-bottom: 30px;
}
#page6 .cate .box .box_img2{
	margin-bottom: 10px;
}
#page6 .cate .box .box_title1{
	border-radius: 2px;
	padding: 5px;
	margin-bottom: 5px;
}
#page6 .cate .box .box_title2{
	position: absolute;
	bottom: 10px;
	left: 10px;
	padding: 10px;
}
#page6 .cate .cate_item{
	padding: 20px;
	border: 1px solid;
}
#page6 .cate .cate_item h4{
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid;
}
/*page7.html*/
#page7{
	margin-bottom: 100px;
}
#page7 .info_img{
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 10%;
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 2px solid;
}
#page7 .box_wrap{
	width: 90%;
	margin: 0 auto;
}
#page7 .box_wrap .box{
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 2px solid;
}
#page7 .box_wrap .box h3{
	width: 30%;
	box-sizing: border-box;
	padding: 5px;
}
#page7 .box_wrap .box p{
	width: 70%;
	box-sizing: border-box;
	padding: 5px;
}
.map{
	width: 80%;
	margin: 0 auto;
}
.map iframe{
	width: 100%;
	height: 500px;
}
/*page8.html*/
#page8{
}
#page8 #top_txt{
	text-align: center;
	width: 80%;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 20px;
	border: 1px solid;
	margin-bottom: 50px;
}
#page8 #top_txt p{
	margin-bottom: 10px;
}
#page8 #top_txt p:last-of-type{
	margin-bottom: 0;
}
#page8 #top_txt .inline_b{
	text-align: left;
}
#page8 #top_txt a {
	display: inline-block;
	padding: 0 5px;
	border-bottom: 1px solid;
}
#page8 #form_box{
	width: 80%;
	margin: 0 auto;
	max-width: 1000px;
	box-sizing: border-box;
	padding: 0 3%;
}
#page8 #form_box .top_txt{
	margin-bottom: 40px;
}
#page8 #form_box .top_txt i{
	font-size: 14px;
	vertical-align: middle;
}
#page8 #form_box .box{
	margin-bottom: 20px;
}
#page8 #form_box .box i{
	font-size: 8px;
	vertical-align: text-top;
}
#page8 #form_box .box div input,#page8 #form_box .box div textarea{
	width: 100%;
	padding: 5px;
	box-sizing: border-box;
}
#page8 #form_box #form_bt{
	margin: 50px 0 100px;
	text-align: left;
}
#page8 #form_box #form_bt div{
	display: inline-block;
	width: 25%;
	height: 50px;
	position: relative;
	-ms-transition: all 0.5s;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
	border-radius: 0;
}
#page8 #form_box #form_bt div input{
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 99;
	top: 0;
	left: 0;
	padding: 15px;
	cursor: pointer;
	border: none;
	background-color: transparent;
	-webkit-appearance: none;
}
#page8 #form_box #form_bt div:hover{
	transform: translate(0,-5px);
	box-shadow: 0 2px 4px rgba(0,0,0,0.5);
}
#page8 #form_box #form_bt div::after{
	display: block;
	position: absolute;
	width: auto;
	height: 18px;
	font-size: 18px;
	letter-spacing: 3px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	line-height: 1;
	z-index: 98;
}
#page8 #form_box #form_bt #submit::after{
	content: "send";
}
/*page9.html*/
#page9{
	margin-bottom: 100px;
}
#page9 .top_txt{
	width: 100%;
	margin: 0 auto 50px;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	line-height: 2;
}
#page9 .top_txt p{
	display: inline-block;
	text-align: left;
}
#page9 .box_wrap{
	width: 90%;
	margin: 0 auto;
}
#page9 .box_wrap .box{
	margin-bottom: 30px;
}
#page9 .box_wrap .box h3{
	border-bottom: 2px solid;
	margin-bottom: 5px;
	padding: 0 5px;
	display: inline-block;
}
#page9 .box_wrap .box p{
	margin: 10px;
}
#page9 .box_wrap .box p a{
	padding: 5px 10px;
	margin: 0 10px;
	border-radius: 3px;
	transition: all 0.3s;
}
#page9 .box_wrap .box p a:hover{
	opacity: 0.5;
}
/*page10.html*/
#page10{
	margin-bottom: 100px;
}
#page10 .cms_wrap{
	position: relative;
	padding-top: 50px;
}
#page10 .cms_wrap figure{
	position: absolute;
	width: 50%;
	top: 0;
	left: 5%;
	z-index: -1;
}
#page10 .box_wrap{
	width: 50%;
	margin-left: 45%;
	padding: 40px 20px;
	box-sizing: border-box;
}
#page10 .box_wrap ul{
	border-top: 2px solid;
	border-bottom: 2px solid;
	padding: 40px 0;
}
#page10 .box_wrap .box{
	margin-bottom: 20px;
	transition: all 0.3s;
	text-align: center;
}
#page10 .box_wrap .box:last-of-type{
	margin-bottom: 0;
}
#page10 .box_wrap .box a{
	transition: all 0.3s;
}
#page10 .box_wrap .box a:hover{
	opacity: 0.5;
}
/*表示を切り替えるウィンドウサイズの指定*/
@media screen and (max-width: 780px){
.width_wrap{
	width: 100%;
	max-width: 100%;
	min-width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
body {
	font-size: 14px;
	letter-spacing: 3px;
}
.font_24{
	font-size: 20px;
}
.font_20{
	font-size: 18px;
}
.font_18{
	font-size: 16px;
	letter-spacing: 1px;
}
.font_16{
	font-size: 14px;
}
.font_14{
	font-size: 12px;
}
.pager{
	width: 100%;
	margin: 0 auto 80px;
}
.pager li{
	width: 10%;
}

.cms_wrap{
	width: 100%;
	max-width: 100%;
	margin: 0 auto 80px;
}
/*ページ共通部分*/
#wrap{
	min-width: 100%;
}
/*header*/
header{
} 
header #header_top{
	padding: 10px 0;	
}
header #header_top #sns_link{
	width: 100%;
}
header #header_top #sub_menu{
	display: none;
}
header #header_top #sns_link{
	text-align: center;
}
header #header h1 img,footer #footer .logo img{
	width: 50%;
	max-width: 100%;
}
header #header #main_menu{
	display: none;
}
.slicknav_menu{
	display: block;
}
/*index.html*/
#main_img::before,#main_img::after{
	width: 100px;
}
.top_cms{
	width: 90%;
	margin: 0 auto 80px;
}
.page2_cms .box{
	display: block;
}
.page2_cms .box .date{
	width: 90%;
}
.page2_cms .box h4{
	width: 90%;
}	
}
/*表示を切り替えるウィンドウサイズの指定*/
@media screen and (max-width: 700px){
.sp_hide{
	display: none;
}
.pc_hide{
	display: block;
}
.pager {
	border: none;
	padding-top: 5%;
}
.pager li:not(.prev):not(.next){
	display: none;
}
.pager li{
	width: 30%;
	margin: 0 5%;
}
.pager li a{
	display: block;
	padding: 5%;
	box-sizing: border-box;
	border: none;
	font-size: 12px;
}
.pager li:first-of-type a{
	text-align: left;
}
.pager li:last-of-type a{
	text-align: right;
}
.cate_list{
	text-align: left;
	width: 90%;
	padding: 20px 20px 1px;
}
.cate_list li{
	display: block;
	margin: 0 0 20px;
}
.cate_list li a{
	display: block;
	text-align: center;
	padding: 10px 10px;
}
.cate_list li a span{
	text-align: left;
}

/*ページ共通部分*/
#wrap{
	display: block;
}
/*header*/
header #header h1 img{
	width: 70%;
}
/*info*/
#info .box_wrap{
	display: block;
}
#info .box_wrap .box{
	width: 100%;
	box-sizing: border-box;
	padding: 0 5%;
}
#info .box_wrap .box figure{
	width: 80%;
	margin: 0 auto 30px;
}
#info .box_wrap .box .info_title{
	text-align: center;
}

#info .box_wrap .box .more{
	text-align: center;
}
#info .box_wrap .box .more a:hover,#info .box_wrap .box tel:hover{
	opacity: 0.5;
}
/*footer*/
footer{
	text-align: center;
}
footer #footer{
	border-bottom: 2px solid;
	padding: 50px 0;
}
footer #footer .logo{
	margin-bottom: 40px;
}
footer #footer .logo img{
	width: 70%;
	max-width: 100%;
}
footer #footer #footer_cms{
	width: 90%;
	margin: 0 auto;
}
footer #copyright{
	padding: 10px;
}
/*page top*/
#page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
	z-index: 99;
}
#page-top a{
	display: block;
	border-radius: 50%;
	overflow: hidden;
	transition: all 0.3s;
	box-sizing: border-box;
	padding: 10px 13px;
	border: 2px solid;
}
#page-top a svg{
	width: 15px;
	height: 9px;
}
/*page_title*/
#page_title{
	position: relative;
	margin-bottom: 80px;
}
/*index.html*/
#main_img::before,#main_img::after{
	width: 50px;
}
.swiper-button-prev,.swiper-button-next{
	width: 30px!important;
	height: 30px!important;
	margin: 0!important;
	transform: translate(0,-50%);
}
.swiper-button-prev i,.swiper-button-next i{
	position: absolute;
	left: 50%;
	top:50%;
	transform: translate(-50%,-50%);
	font-size: 20px;
}
.swiper-slide-duplicate-active{
		opacity: 1;
}
#main_img .swiper-container{
	margin-bottom: 30px;
}
#main_img #catch{
	position: static;
	top: 0;
	left: 0;
	transform: translate(0,0);
	width: 90%;
	margin: 0 auto;
}
#intro{
	box-sizing: border-box;
	padding: 50px 5%;
}
#intro h2{
	margin-bottom: 10px;
}
#intro p{
	line-height: 2;
}
#contents{
	position: relative;
	margin-bottom: 50px;
}
#contents .box_wrap{}
#contents > .box{
	position: static;
	height: auto;
	top: 0;
	left: 0;
	transform: translate(0,0);
}
#contents > .box figure{
	width: 80%;
	margin: 0 auto;
	position: static;
	left: 0;
	top: 0;
	transform: translate(0,0);
}
#contents .box_wrap .box{
	padding: 20px 5%;
	box-sizing: border-box;
}
#contents .box h3,#contents .box p{
	padding-left: 0;
}
#menu_box{
	margin-bottom: 30px;
}
#menu_box .box{
	width: 70%;
	margin: 0 auto 30px;
}
/*top_cms*/
.top_cms{
	padding: 0;
	width: 94%;
	margin:0 auto 80px;
	max-width: 100%;
}
.top_cms:last-of-type{
	margin-bottom: 50px;
}
.top_cms .top_cms_title{
	margin-bottom: 30px;
}
.top_cms .more{
	display: block;
	width: 100%;
	text-align: center;
	padding: 20px 10px 0;
	box-sizing: border-box;
}
.page2_cms {
	border-bottom: 1px solid;
	border-top: 1px solid;
	display: block;
	position: relative;
	padding: 30px 0;
}
.page2_cms .top_cms_title{
	width: 20%;
	margin: 0 auto 20px;
}
.page2_cms .box_wrap{
	width: 90%;
	margin: 0 auto;
}
.page2_cms .box h4{
	width: 100%;
}	
.page3_cms .box_wrap{
    justify-content: flex-start;
    align-items: flex-start;
}
.page3_cms .box_wrap .box{
	width: 50%;
	padding: 3%;
}
.page3_cms .box_wrap .box div{
	padding: 10px;
	border: 1px solid;
	margin-bottom: 10px;
}
/*page4_cmsはpage4を参照*/
.page6_cms .box_wrap .box{
	width: 80%;
	box-sizing: border-box;
	padding: 2%;
	text-align: left;
	margin-bottom: 30px;
}
.page6_cms .box_wrap .box:last-of-type{
	margin-bottom: 0;
}
/*page2.html*/
#page2 .box{
	width: 90%;
	margin: 0 auto 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid;
}
/*page3.html*/
#page3{}
#page3 .cate{
	width: 100%;
	margin: 0 auto 60px;
}
#page3 .cate .cate_wrap{
	width: 90%;
    display: block;
	margin: 0 auto;
	padding-bottom: 50px;
	border-bottom: 1px solid;
}
#page3 .cate:last-of-type .cate_wrap{
	border-bottom: none;
}
#page3 .cate .cate_wrap .cate_item{
	width: 100%;
	box-sizing: border-box;
	padding: 2%;
}
#page3 .cate .cate_title{
	margin-bottom: 30px;
}
#page3 .cate .sub_cate{
	margin-bottom: 30px;
}
#page3 .cate .sub_cate:last-of-type{
	margin-bottom: 0;
}
/*page5.html*/
#page5 .cate{
	width: 100%;
	margin: 0 auto 80px;
}
#page5 .cate .box_wrap .box{
	width: 50%;
	padding: 2%;
	margin-bottom: 20px;
	box-sizing: border-box;
	text-align: center;
}
/*page6.html*/
#page6 .cate{
	width: 100%;
	margin: 0 auto 80px;
}
#page6 .cate .box{
	width: 80%;
	box-sizing: border-box;
	padding: 0;
	margin: 0 auto 50px;
}
#page6 .cate .box .box_img2{
	margin-bottom: 10px;
}
#page6 .cate .box .box_title1{
	border-radius: 2px;
	padding: 5px;
	margin-bottom: 5px;
}
#page6 .cate .box .box_title2{
	position: absolute;
	bottom: 10px;
	left: 10px;
	padding: 10px;
}
#page6 .cate .cate_item{
	padding: 10px;
	border: 1px solid;
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
}
/*page7.html*/
#page7{
	margin-bottom: 80px;
}
#page7 .info_img{
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 5%;
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 2px solid;
}
.map{
	width: 90%;
	margin: 0 auto;
}
.map iframe{
	width: 100%;
	height: 400px;
}
/*page9.html*/
#page9{
	margin-bottom: 100px;
}
#page9 .top_txt{
	width: 90%;
	margin: 0 auto 40px;
}
/*page10.html*/
#page10{
	margin-bottom: 80px;
}
#page10 .cms_wrap{
	position: relative;
	padding-top: 0px;
}
#page10 .cms_wrap figure{
	position: relative;
	width: 70%;
	top: 0;
	left: 0;
	z-index: -1;
	margin: 0 auto;
}
#page10 .box_wrap{
	width: 90%;
	margin: 20px auto 0;
	padding: 40px 20px;
	box-sizing: border-box;
}
}