@charset "UTF-8";

/*@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);*/
	
/*-----------------------------------

	base

-----------------------------------*/
html {
    overflow-y: auto;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 62.5%;
	overflow-x: hidden;
}
body {
	font-family: 'Noto Sans CJK JP', sans-serif;
	font-size: 16px;
    font-size: 1.6em;
	color: #645551;
    line-height: 1.8em;
	letter-spacing:0.3rem;
	font-weight:600;
	background: #f5f5f5;
	margin:0 !important;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}
.fw700{
	font-weight:700;
}
.contents_inner{
	width: 1200px;
	margin: 0 auto;
}
img {
    max-width: 100%;
    height: auto;
}
a, a:link, a:visited {
    color: #645551;
	text-decoration:none;
    cursor: pointer;
}
a:hover {
	color:#7fad6b;
	text-decoration:none;
}
a:hover img {
	transition: all .3s;
      opacity: 0.7;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
a.link{
	display:inline-block;
	position:relative;
	padding-right: 12px;
}
a.link:after {
    content: url("/img/common/icon_arrow_b.svg");
    width: 10px;
    height: 12px;
    position: absolute;
    top: 0px;
    right: -4px;
    z-index: 2;
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
}
a.link:hover:after{
	right: -15px;	
}
a.link_btn{
	font-size: 18px;
    font-size: 1.8rem;
    display:inline-block;
    position: relative;
	padding: 15px 0;
    transition: 0.5s;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
}
.btn_g{
	color: #fff!important;
	background: #00a199;
}
.btn_g span:after {
	content: url("/img/common/icon_arrow_w.svg");
}
.btn_g:hover{
	background: #87b828;
}
.btn_yg{
	color: #fff!important;
	background: #87b828;
}
.btn_yg span:after {
	content: url("/img/common/icon_arrow_w.svg");
}
.btn_yg:hover{
	background: #00a199;
}
.btn_y{
	background: #f1ee45;
}
.btn_y span:after {
	content: url("/img/common/icon_arrow_b.svg");
}
.btn_y:hover{
	color: #fff!important;
	background: #00a199;
}
.btn_y:hover span:after {
	content: url("/img/common/icon_arrow_w.svg");
}
.btn_w{
	background: #fff;
}
.btn_w span:after {
	content: url("/img/common/icon_arrow_b.svg");
}
.btn_w:hover{
    color: #645551!important;
	background: #f1ee45;
}
.btn_y_01{
	background: #f1ee45;
	margin: 20px 0;
}
.btn_y_01 span:after {
	content: url("/img/common/icon_arrow_b.svg");
}
.btn_y_01:hover{
	color: #fff!important;
	background: #00a199;
}
.btn_y_01:hover span:after {
	content: url("/img/common/icon_arrow_w.svg");
}

a.link_btn span:after {
	width: 10px;
	height: 10px;
	position: absolute;
	top: 25%;
	right: 10%;
	z-index: 2;
	transition: 0.3s;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
}
a.link_btn:hover span:after{
	right: 4%;
}

.bg_stripe{
	background: url("/img/common/bg_stripe.png");
}
.bd_dot_g{
	padding-bottom: 20px;
    background: url(../img/common/line_dot_g.svg);
    background-size: auto 3px;
    background-repeat: repeat-x;
    background-position: bottom;
}
.bd_dot_yg{
	padding-bottom: 20px;
    background: url(../img/common/line_dot_yg.svg);
    background-size: auto 3px;
    background-repeat: repeat-x;
    background-position: bottom;
}
.over{
	/*overflow:hidden !important;*/
	height:100% !important;
}
.sp{
	display:none;
}
.tab{
	display:none;
}
.pc{
	display:block;
}
.left{
	float: left;
}
.right{
	float: right;
}
@media screen and (max-width: 1199px) {
	.contents_inner{
		width: 95%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 980px) {
	.sp{
		display:none;
	}
	.pc{
		display:none;
	}
	.tab{
		display:block;
	}
}
@media screen and (max-width: 740px) {
	body {
		font-size: 14px;
		font-size: 1.4em;
		line-height: 1.6em;
		font-weight: 900;
		letter-spacing: 0.2rem;
	}
	a.link:after {
		top: 0px;
	}
	a.link_btn{
		width: 80%;
		font-size: 16px;
		font-size: 1.6rem;
		padding: 15px 0;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
}
.marker{
	background:linear-gradient(transparent 75%, #7fff7f 75%);
	font-weight:bold; 
}
/*-----------------------------------

	clearfix

-----------------------------------*/
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
/*-----------------------------------

	fz

-----------------------------------*/
.fz12{
font-size: 12px !important;
}
/*-----------------------------------

	diagonal

-----------------------------------*/
.diagonal{
	position: relative;
}
.diagonal:before{
	content: "";
    width: 20px;
    height: 100%;
    background: url(../img/common/bg_diagonal.png) repeat;
    position: absolute;
    right: -20px;
	top:20px
}
.diagonal:after{
	content: "";
    width: 100%;
    height: 20px;
    background: url(../img/common/bg_diagonal.png) repeat;
    position: absolute;
    bottom: -20px;
	left: 16px;
}
.re_diagonal{
	position: relative;
}
.re_diagonal:before{
	content: "";
    width: 20px;
    height: 100%;
    background: url(../img/common/bg_diagonal.png) repeat;
    position: absolute;
    left: -20px;
	top:-20px
}
.re_diagonal:after{
	content: "";
    width: 100%;
    height: 20px;
    background: url(../img/common/bg_diagonal.png) repeat;
    position: absolute;
    top: -20px;
	left: -20px;
}
@media screen and (max-width: 740px){
	.diagonal:before{
		width: 10px;
		right: -10px;
		top:10px
	}
	.diagonal:after{
		height: 10px;
		bottom: -10px;
		left: 15px;
	}
	.re_diagonal:before{
		content: "";
		width: 10px;
		left: -10px;
		top:-10px
	}
	.re_diagonal:after{
		height: 10px;
		top: -10px;
		left: -10px;
	}
}
/*-----------------------------------

	header

-----------------------------------*/
header {
	width: 100%;
	text-align: center;
}
#header_top .contents_inner{
	position: relative;
}
header h1{
	width: 330px;
	margin: 0 auto ;
	padding-top: 60px;
}
#header_contact{
	position: absolute;
	right: 0;
	top: 0;
}
#header_contact li{
	float: left;
}
#header_contact_tel{
	width: 275px;
	height: 100px;
	text-align: left;
	background: #fff;
	margin-right: 10px;
	padding: 10px;
	box-sizing: border-box;
}
#header_contact_tel .text {
	font-size: 14px;
    padding-left: 25px;
}
#header_contact_tel .tel {
    position: relative;
    padding-left: 25px;
}
#header_contact_tel .tel img{
	width: 230px;
}
#header_contact_tel .tel:before {
    content: url(../img/common/icon_tel_b.svg);
    width: 20px;
    height: 30px;
    position: absolute;
    left: 0;
}
#header_contact_mail a{
	width: 155px;
	height: 115px;
	font-size: 21px;
	display: block;
	background: #f1ee45;
	padding: 15px;
	box-sizing: border-box;
}
#header_contact_mail a .text{
	font-size: 14px;
	text-align: left;
	line-height: 1.8rem;
	position: relative;
	margin-bottom: 5px;
	padding-left: 35px;
}
#header_contact_mail a .text:before {
    content: url(../img/common/icon_sp_b.svg);
    width: 25px;
    height: 45px;
    position: absolute;
    left: 5px;
}
#header_best{
	background: #fff;
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 10px 10px 8px 45px;
}
#header_best:before{
	content: url(../img/common/icon_leaf_g.svg);
    width: 30px;
    height: 30px;
    position: absolute;
	left: 5px;
	top:2px;
}
#header_nav{
	position: absolute;
	right: 0;
	bottom: 0;
}
#header_nav li{
	float: left;
	margin-left: 30px;
}
#header_nav li a{
	position: relative;
	padding-left: 20px;
}
#header_nav li a:after{
	content:url("/img/common/icon_arrow_g.svg");
	width: 12px;
	height: 15px;
	position: absolute;
	left: 0;
}
.fixed{
	position: fixed !important;
}
@media screen and (max-width: 1199px){
	header h1 {
		width: 250px;
		margin: 0 auto;
		padding-top: 90px;
	}
	#header_best {
		left: 0;
		bottom: inherit;
		top: 10px;
		padding: 10px 10px 8px 45px;
	}
	#header_nav li {
		margin-left: 10px;
	}
	#header_nav li a{
		font-size: 14px;
	}
}
@media screen and (max-width: 980px){
	header {
		width: 100%;
		padding-top: 5px;
	}
	header h1{
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 740px){
	header h1 {
		width: 80%;
		max-width: 245px;
		margin-bottom: 20px;
		padding-top: 50px;
	}
	#header_best {
		font-size: 14px;
		left: 0;
		bottom: inherit;
		top: 10px;
		padding: 5px 10px 5px 30px;
	}
	#header_best:before {
		width: 20px;
		height: 20px;
		position: absolute;
		left: 5px;
		top: 5px;
	}
}
/*-----------------------------------

	nav

-----------------------------------*/
nav#nav_pc{
	width: 100%;
    background: #f5f5f5;
	position: relative;
}
nav#nav_pc li{
	width: 12.5%;
	text-align:center;
	float: left;
	cursor:pointer;
}
nav#nav_pc li:nth-child(1){
	width: 10%;
}
nav#nav_pc li:nth-child(2){
	width: 14%;
}
nav#nav_pc li:nth-child(3){
	width: 20%;
}
nav#nav_pc li:nth-child(4){
	width: 10%;
}
nav#nav_pc li:nth-child(5){
	width: 10%;
}
nav#nav_pc li:nth-child(7){
	width: 10%;
}
nav#nav_pc li a{
	font-size: 18px;
    display: block;
	line-height:1.6rem;
	padding: 22px 0;
	transition: all .3s;
	box-sizing:border-box;
}
nav#nav_pc li a span{
	font-size: 10px;
	color: #cabbb7;
}
nav#nav_pc li .img{
	width: 50px;
	margin: 0 auto 5px;
}
.img_soraco {
	width: 165px;
}
nav#nav_pc li a p{
	border-left: solid 1px #7a6851;
}
nav#nav_pc li:last-child p{
	border-right: solid 1px #7a6851;
}
nav#nav_pc  .sub_menu {
	width: 100%;
    visibility: hidden;
	background:#87b828;
    display: block;
    position: absolute;
    top: 134px;
    left: 0;
	 opacity: 0;
    z-index: 1;
	padding: 10px 2.5%;
	box-sizing:border-box;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
nav#nav_pc  .sub_menu li{
	width: 33%;
	height: auto !important;
	padding: 0;
}
nav#nav_pc  .sub_menu a {
	width: 100%;
	font-size: 15px;
	height: auto !important;
	color: #fff;
	line-height:1.6rem;
	text-align:left;
    padding: 10px 10px 10px 15px;
    display:block;
    border: none;
	position: relative;
 }
 nav#nav_pc  .sub_menu a:hover{
	 color:rgba(71,42,5,0.7) !important;
	 background: none;
 }
nav#nav_pc  .sub_menu a img{
	width: 100px;
	float: left;
	display: inline-block;
}
nav#nav_pc  .sub_menu a p{
	float: left;
	margin: 20px 0 0 20px;
	border: none;
}
nav#nav_pc li:hover .sub_menu {
    visibility: visible;
    opacity: 1;
    z-index: 9999;
}
.fixed {
    position: fixed;
    top: 0;
    padding: 0;
    width: 100%;
    z-index: 1000;
}
@media screen and (max-width: 1199px){
	nav#nav_pc li a {
		font-size: 16px;
	}
}
@media screen and (max-width: 980px){
	nav#nav_pc {
		display: none;
	}
}
/*-----------------------------------

	sp_menu

-----------------------------------*/
#sp_menu {
	height: 68px;
	background: #f5f5f5;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 998;
	width: 100%;
}
#sp_menu ul {
	width: 100%;
}
#sp_menu li {
	width: 25%;
	float: left;
}
#sp_menu li a, #sp_menu li span {
	display: block;
	text-decoration: none;
	text-align: center;
	font-size: 14px;
	padding: 10px 0;
	box-sizing:border-box;
}
#sp_menu li a, #sp_menu li span {
	height: 68px;
	display: block;
	text-decoration: none;
	text-align: center;
}
#sp_menu li a:before, 
	#sp_menu li span:before {
	margin: 0 auto 2px;
	display: block;
	line-height: 1;
}
#sp_menu li:first-child a{
}
#sp_menu li:first-child a:before{
	width: 18px;
	content: url(../img/common/icon_tel_b.svg);
}
#sp_menu li:first-child a:hover{
	color: #fff;
	background: #87b828;
}
#sp_menu li:first-child a:hover:before{
	width: 18px;
	content: url(../img/common/icon_tel_w.svg);
}
#sp_menu li:nth-child(2) a {

}
#sp_menu li:nth-child(2) a:before {
	width: 25px;
	content: url(../img/common/icon_access_b.svg);
}
#sp_menu li:nth-child(2) a:hover{
	color: #fff;
	background: #87b828;
}
#sp_menu li:nth-child(2) a:hover:before {
	width: 25px;
	content: url(../img/common/icon_access_w.svg);
}
#sp_menu li:nth-child(3) a {
	background: #f1ee45;
}
#sp_menu li:nth-child(3) a:before{
	width: 20px;
	content: url(../img/common/icon_search_b.svg);
}
#sp_menu li:nth-child(3) a:hover{
	color: #fff;
	background: #87b828;
}
#sp_menu li:nth-child(3) a:hover:before{
	width: 20px;
	content: url(../img/common/icon_search_w.svg);
}
#sp_menu li:nth-child(4) {
	color: #fff;
	background: #87b828;
}
#sp_menu li:nth-child(4) span {
	cursor:pointer;
}
#sp_menu li:nth-child(4) span:before{
	width: 25px;
	content: url(../img/common/icon_menu_w.svg);
}
#sp_menu li:nth-child(4) span:hover{
	background: #87b828;
}
/*-----------------------------------

	nav_sp

-----------------------------------*/
@media screen and (max-width: 980px) {
	#nav_sp .menu_btn {
		width: 40px;
		height: 40px;
		cursor: pointer;
		position: absolute;
		top: 20px;
		right: 20px;
		z-index: 999;
		display: block;
		background: #87b828;
		border-radius: 5px;
	}
	#nav_sp .menu_btn span{
		width: 40px;
		height: 4px;
		display: block;
		position: absolute;
		top: 18px;
		right: 0;
		background: none;
		cursor:pointer;
		box-sizing: border-box;
		-moz-transition: all 0.3s;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		border-radius:5px;
		z-index:999;
	}
	#nav_sp .menu_btn span:before {
		content:'';
		position:absolute;
		width: 40px;
		height: 4px;
		background: #fff;
		-moz-transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
		transform:rotate(-135deg);
		top:0;
		right:0;
	}
	#nav_sp .menu_btn span:after {
		content: '';
		position: absolute;
		width: 40px;
		height: 4px;
		background: #fff;
		-moz-transform:rotate(135deg);
		-webkit-transform:rotate(135deg);
		transform:rotate(135deg);
		bottom:0;
		right:0;
	}
	#nav_sp{
		width: 100%;
		height: 100%;
		background:rgba(255, 255, 255, 0.95);
		position: fixed;
		overflow-y: scroll;
		top: 0;
		right: -100%;
		-webkit-transition: all 0.35s ease;
		transition: all 0.35s ease;
		padding: 30px 2.5%;
		display:inline-block;
		z-index: 999;
		box-sizing: border-box;
	}
	#nav_sp.toggle{
		right: 0 !important;
	}
	#nav_sp .nav_title_sp{
		font-size: 24px;
		letter-spacing:0.4rem;
		text-align:center;
		margin: 10px 0;
	}
	#nav_sp ul{
		text-align:center;
		margin: 40px 0;
	}
	#nav_sp ul li{
		text-align: left;
		border-top:solid 1px #e7e7e7;
	}
	#nav_sp ul li a{
		display:block;
		position:relative;
		padding: 10px 0 10px 2.5%;
		border-bottom:solid 1px #e7e7e7;
		transition: 0.3s;
		-webkit-transition: 0.3s;
		-moz-transition: 0.3s;
		-o-transition: 0.3s;
		-ms-transition: 0.3s;
	}
	#nav_sp ul li a:hover,
	#nav_sp ul li div:hover{
		color:#fff;
		background:#87b828;
	}
	#nav_sp ul li div{
		padding: 15px 0 15px 2.5%;
	}
	#nav_sp ul li ul {
		display: none;	
		margin: 0;
	}
	#nav_sp ul li ul li a {
		padding: 10px 0 10px 10%;
	}
	#nav_sp .accordion_title{
		float: left;
	}
	#nav_sp .accordion_icon,
	#nav_sp .accordion_icon span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	#nav_sp .accordion_icon {
		position: relative;
		width: 15px;
		height: 15px;
		float: right;
		margin: 5px 10px 0 0 ;
	}
	#nav_sp .accordion_icon span {
		position: absolute;
		width: 100%;
		height: 4px;
		background-color: #645551;
		border-radius: 4px;
	}
	#nav_sp ul li div:hover .accordion_icon span{
		background-color: #fff !important;
	}
	#nav_sp .accordion_icon span:nth-of-type(1) {
		top: 5px;
		transform: rotate(0deg);
	}
	#nav_sp .accordion_icon span:nth-of-type(2) {
		top: 5px;
		transform: rotate(90deg);
	}
	/*＋、－切り替え*/
	#nav_sp .accordion_icon.active span:nth-of-type(1) {
		display:none;
	}
	#nav_sp .accordion_icon.active span:nth-of-type(2) {
		top: 5px;
		transform: rotate(180deg);
	}
}
/*-----------------------------------

	btm_contact

-----------------------------------*/
#btm_contact{
	text-align: center;
    padding: 60px 0 140px;
}
#btm_contact #btm_contact_logo{
	width: 350px;
	display: block;
	margin: 0 auto 20px;
}
#btm_contact #btm_contact_best{
	background: #fff;
	display: inline-block;
	margin-bottom: 30px;
	padding: 10px 20px;
}
#btm_contact ul{
	width: 1000px;
	margin: 0 auto 20px;
}
#btm_contact ul li{
	float: left;
}
#btm_contact ul li:first-child{
	width: 280px;
	margin-top: 10px;
}
#btm_contact ul li:first-child a{
	width: 280px;
}
#btm_contact ul li:nth-child(2){
	margin:10px 0 0 20px;
}
#btm_contact ul li:nth-child(2) a{
	width: 300px;
}
#btm_contact ul li:nth-child(3){
	text-align: left;
	margin-left: 30px;
}
#btm_contact ul li:nth-child(3) .tel{
	position: relative;
	padding-left: 30px;
}
#btm_contact ul li:nth-child(3) .tel img{
	width: 320px;
}
#btm_contact ul li:nth-child(3) .text{
	padding-left: 30px;
}
#btm_contact ul li:nth-child(3) .tel:before{
	content: url("/img/common/icon_tel_b.svg");
	width: 25px;
	height: 40px;
	position: absolute;
	left: 0;
}
#btm_contact_box{
	font-size: 14px;
	line-height: 1.8rem;
	text-align: left;
	display: inline-block;
	padding: 10px 20px;
	border: solid 1px #645551;
}
@media screen and (max-width: 1199px) {
	#btm_contact ul{
		width: 80%;
		margin: 0 auto 20px;
	}
}
@media screen and (max-width: 980px) {
	#btm_contact{
		padding: 0;
	}
	#btm_contact ul li:first-child {
		width: 49%;
		margin-top: 0;
	}
	#btm_contact ul li:nth-child(2) {
		width: 49%;
		margin: 0 0 0 2%;
	}
	#btm_contact ul li:first-child a,
	#btm_contact ul li:nth-child(2) a{
		width: 100%;
	}
	#btm_contact ul li:nth-child(3) {
		width: 100%;
		text-align: left;
		margin: 20px auto 0;
	}
	#btm_contact ul li:nth-child(3) div{
		width: 60%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 740px) {
	#btm_contact #btm_contact_logo {
		width: 60%;
		display: block;
		margin: 0 auto 20px;
	}
	#btm_contact ul {
		width: 80%;
		margin: 0 auto 30px;
	}
	#btm_contact ul li{
		float: none;
		margin: 0 auto;
	}
	#btm_contact ul li:first-child {
		width: 100%;
		margin: 0 auto;
	}
	
	#btm_contact ul li:nth-child(2) {
		width: 100%;
		margin: 20px auto 0;
	}
	#btm_contact ul li:nth-child(3) {
		width: 100%;
		text-align: center;
		margin: 20px auto 0;
	}
	#btm_contact ul li:nth-child(3) div{
		width: 100%;
		margin: 0 auto;
	}
	#btm_contact ul li:first-child a,
	#btm_contact ul li:nth-child(2) a,
	#btm_contact ul li:nth-child(3) a{
		width: 100%;
	}
	#btm_contact_box{
		font-size: 13px;
		line-height: 1.8rem;
		padding: 10px 2.5%;
		border: solid 1px #645551;
	}
}
/*-----------------------------------

	footer

-----------------------------------*/
footer{
	color: #fff!important;
	background: #00a199;
	padding: 30px 0 20px;
}
footer .contents_inner{
	position: relative;
}
footer .contents_inner:after{
	content: url("/img/common/bg_footer.png");
	width: 1300px;
	height: 95px;
	position: absolute;
	top:-120px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
footer a{
	color: #fff !important;
}
footer a:hover{
	color: #f1ee45 !important;
}
footer #ft_logo{
	width: 200px;
	display:block;
	margin: 0 auto 30px;
}
footer #ft_top ul{
	font-size: 18px;
	float: left;
	box-sizing: border-box;
}
footer #ft_top ul li ul{
	font-size: 14px;
	float: none !important;
	padding-left: 0!important;
	border-left: none!important;
}
footer #ft_top ul li ul li{
	position: relative;
	padding-left: 20px;
}
footer #ft_top ul li ul li:before {
    content: "";
    width: 10px;
    height: 1px;
	background: #fff;
    position: absolute;
    left: 0;
    top: 50%;
}footer #ft_top ul li a{
	position: relative;
}
footer #ft_top ul li a.blank:after {
	content: url("/img/common/icon_blank.svg");
	width: 15px;
	height: 15px;
	position: absolute;
	display: block;
	right: -15px;
	top: 0;
}
footer #ft_top #fnav_01{
	width: 20%;
}
footer #ft_top #fnav_02{
	width: 15%;
}
footer #ft_top #fnav_03{
	width: 20%;
}
footer #ft_top #fnav_04{
	width: 15%;
}
footer #ft_top #fnav_05{
	width: 30%;
}
footer #ft_top #fnav_05 li{
	width: 50%;
	float: left;
}
footer #ft_btm{
	text-align:center;
	padding: 20px 0;
}
footer #ft_btm small{
	font-size: 12px;
}
footer #ft_btm ul li{
	float: left;
	font-size: 14px;
	margin-left: 20px;
}
@media screen and (max-width: 1199px) {
	footer{
		background:url("/img/common/icon_blank.svg"), #00a199;
		padding: 30px 0 20px;
	}
	footer .contents_inner:after{
		content:none;
		width: auto;
		height: auto;
		position: static;
		top:-120px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
}
@media screen and (max-width: 980px) {
	footer{
		text-align: center;
		color: #645551!important;
		background: none;
		margin-bottom: 70px;
		padding: 0;
	}
	footer #ft_logo,
	footer #ft_top{
		display: none;
	}
	footer #ft_btm small {
		font-size: 12px;
		float: none !important;
	}
}
@charset "UTF-8";

/*-----------------------------------

	main

-----------------------------------*/
#main {
  width: 100%;
  margin: 0 auto;
  background: linear-gradient(
    to bottom,
    #f5f5f5 0%,
    #f5f5f5 80%,
    #00a199 80%,
    #00a199 100%
  );
}
#main .contents_inner {
  position: relative;
}
#main .slider {
  width: 1200px;
  margin: auto;
}
#main .point {
  width: 190px;
  height: 110px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.slide_arrow {
  width: 30px;
  background: #00a199;
  position: absolute;
  top: 50%;
  padding: 10px;
  z-index: 998;
  cursor: pointer;
}
.slide_arrow:hover {
  background: #87b828;
}
.prev_arrow {
  left: -20px;
  transform: rotateY(180deg);
}
.next_arrow {
  right: -20px;
}
#main_best{
	width: 160px;
	left: -80px;
	bottom: -30px;
	z-index: 999;
}
.pab{
	position: absolute;
}
@media screen and (max-width: 1199px) {
  #main .slider {
    width: 100%;
  }
}
@media screen and (max-width: 740px) {
  #main .point {
    width: 140px;
    height: 75px;
    position: absolute;
    bottom: 0;
    left: -2px;
  }
  .slide_arrow {
    width: 15px;
    top: 45%;
    padding: 10px;
  }
  .prev_arrow {
    left: 0;
  }
  .next_arrow {
    right: 0;
  }
	#main_best {
		width: 100px;
		left: -10px;
		z-index: 999;
		bottom: -40px;
	}
}
/*-----------------------------------

	search

-----------------------------------*/
#search {
  background: #00a199;
  margin-bottom: 0px;
  padding: 20px 0;
}
#search .contents_inner {
  width: 1200px;
}
#search dl {
  color: #fff;
  margin-right: 20px;
}
#search dt {
  color: #fff;
}
#search dd {
  color: #fff;
}
#search dd #calendar {
  color: #645551;
  background: #fff;
  display: inline-block;
  padding: 1px 20px;
}
input,
text {
  color: #645551;
  border: none;
  font-weight: 600;
  font-size: 16px;
  /*width: 100%;*/
}

.btn_select {
  position: relative;
  background: #fff;
  display: inline-block;
}
.btn_select select {
  width: 100%;
  font-size: 16px;
  color: #645551;
  font-family: "Noto Sans CJK JP", sans-serif;
  font-weight: 600;
  display: inline-block;
  cursor: pointer;
  text-overflow: ellipsis;
  padding: 2px 30px 3px 10px;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.btn_select select::-ms-expand {
  display: none;
}
.btn_select:before {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 8px solid #00a199;
  pointer-events: none;
}
.unit {
  display: inline-block;
  margin-left: 5px;
}
#btn_search {
  width: 250px;
  text-align: center;
}
#btn_search span:before {
  content: url("../img/common/icon_search_b.svg") !important;
  width: 30px;
  height: 45px;
  position: absolute;
  left: 10%;
  top: 10px;
}
#btn_search:hover {
  color: #645551 !important;
  background: #fff !important;
}
#btn_search:hover span:after {
  content: url(../img/common/icon_arrow_b.svg) !important;
}
#btn_plan {
  width: 250px;
  text-align: center;
  margin-left: 20px;
}
@media screen and (max-width: 1199px) {
  #search .contents_inner {
    width: 80%;
  }
  #wrap_calendar {
    margin-left: 5%;
  }
  #btn_search {
    width: 48%;
    margin: 20px 0 0 0;
  }
  #btn_plan {
    width: 48%;
    margin: 20px 0 0 2%;
  }
}
@media screen and (max-width: 740px) {
  #search {
    margin-bottom: 30px;
  }
  #search .contents_inner {
    width: 95%;
    text-align: center;
  }
  #search dl {
    /*width: 33%;*/
    margin: 0 auto 20px;
  }
  #wrap_calendar {
    width: 80% !important;
    margin: 0 auto 10px;
    float: none !important;
  }
  #search dt {
    font-size: 16px;
    margin-bottom: 10px;
  }
  #search dd {
    font-size: 18px;
  }
  #search dd #calendar {
    width: 100%;
    padding: 5px 2.5%;
    box-sizing: border-box;
  }
  #btn_search {
    width: 80%;
    margin: 0 auto 20px;
  }
  #btn_plan {
    width: 80%;
    margin: 0 auto;
  }
}
/*-----------------------------------

	about

-----------------------------------*/
#about {
  text-align: center;
  margin: 20px auto;
}
#about h2 {
  width: 700px;
  margin: 0 auto 20px;
}
#about h2 img {
  width: 700px;
}
#about p {
  margin-top: 20px;
}
#about #about_top {
  position: relative;
  margin-bottom: 40px;
}
#about #about_top .deco_01 {
  position: absolute;
  left: 0;
  top: 30px;
}
#about #about_top .deco_02 {
  position: absolute;
  right: 0;
  top: 30px;
}
#about .aboutbox {
  width: 580px;
  text-align: left;
  position: relative;
  margin-top: 30px;
}
#about .aboutbox .point {
  width: 190px;
  height: 110px;
  position: absolute;
  top: -50px;
  left: 0;
  z-index: 998;
}
#about .aboutbox .img {
  margin-bottom: 40px;
}
#about #about_01 {
  margin-right: 40px;
}
@media screen and (max-width: 1199px) {
  #about .aboutbox {
    width: 49%;
    text-align: left;
    position: relative;
    margin-top: 30px;
  }
  #about #about_01 {
    margin-right: 2%;
  }
}
@media screen and (max-width: 980px) {
  #about h2 {
    width: 600px;
    margin: 0 auto 20px;
  }
  #about h2 img {
    width: 600px;
  }
  #about #about_top {
    margin-bottom: 0;
    padding-bottom: 80px;
  }
  #about #about_top .deco_01 {
    width: 20%;
    left: -20px;
    top: inherit;
    bottom: 0;
  }
  #about #about_top .deco_02 {
    width: 20%;
    right: -20px;
    top: inherit;
    bottom: 0;
  }
}
@media screen and (max-width: 740px) {
  #about h2 {
    width: 90%;
    max-width: 430px;
    margin: 0 auto 20px;
  }
  #about h2 img {
    width: 100%;
    max-width: 430px;
  }
  #about #about_top {
    margin-bottom: 0;
    padding-bottom: 80px;
  }
  #about #about_top .deco_01 {
    width: 22%;
    left: -20px;
    top: inherit;
    bottom: 0;
  }
  #about #about_top .deco_02 {
    width: 22%;
    right: -20px;
    top: inherit;
    bottom: 0;
  }
  #about .aboutbox {
    width: 95%;
    margin: 30px auto 0;
    float: none !important;
  }
  #about .aboutbox .img {
    margin-bottom: 20px;
  }
  #about .aboutbox .point {
    width: 140px;
    height: 80px;
    top: -35px;
  }
  #about #about_01 {
    margin: 20px auto 0;
  }
}
/*-----------------------------------

	plan

-----------------------------------*/
.plan .h2_wrap {
  margin-bottom: 30px;
}
.plan h2 {
  margin-top: 3px;
}
.plan h2 span {
  width: 430px;
  text-align: center;
  display: block;
  margin: 0 auto;
  padding: 5px 20px;
}
.plan h2 span img {
  width: 430px;
}
/*-----------------------------------

	plan_01

-----------------------------------*/
#plan_01 {
  text-align: center;
  padding: 0px 0px 70px 0px;
}
#plan_01 .h2_wrap {
  border-top: solid 2px #00a199;
}
#plan_01 h2 {
  border-top: solid 5px #00a199;
}
#plan_01 h2 span {
  background: #00a199;
}
#plan_01 ul {
  margin-top: 20px;
}
#plan_01 ul li {
  text-align: left;
  box-sizing: border-box;
  margin: 0 20px;
  background: #fff;
}
#plan_01 ul li:first-child {
  margin-left: 0;
}
#plan_01 ul li a {
  width: 100%;
  display: inline-block;
}
#plan_01 ul li a .img {
  width: 100%;
  height: 285px;
}
#plan_01 ul li a .img img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 285px;
}
#plan_01 ul li a .text {
  font-size: 18px;
  line-height: 2.4rem;
  padding: 10px;
}
#plan_01 .link_btn {
  width: 300px;
  margin: 30px auto 0;
}
@media screen and (max-width: 980px) {
}
@media screen and (max-width: 740px) {
  .plan h2 span img {
    width: 100%;
  }
  #plan_01 {
    padding: 30px 0;
  }
  #plan_01 ul li {
    margin: 0 5px;
  }
  #plan_01 ul li a .img {
    width: 100%;
    height: 150px;
  }
  #plan_01 ul li a .img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 150px;
  }
  #plan_01 ul li a .text {
    font-size: 14px;
    line-height: 1.8rem;
    padding: 10px 2.5%;
  }
}
/*-----------------------------------

	plan_02

-----------------------------------*/
#plan_02 {
  text-align: center;
  padding: 0 0 70px;
}
#plan_02 .h2_wrap {
  border-top: solid 2px #87b828;
}
#plan_02 h2 {
  border-top: solid 5px #87b828;
}
#plan_02 h2 span {
  background: #87b828;
}
#plan_02 h3 {
  font-size: 18px;
  line-height: 2.1rem;
  display: inline-block;
  letter-spacing: 0.2rem;
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
}
#plan_02 h3 span {
  font-size: 14px;
  display: block;
}
#plan_02 h3:before {
  width: 15px;
  height: 15px;
  position: absolute;
  left: -5px;
  top: 0;
}
#plan_02 ul {
  margin-top: 20px;
}
#plan_02 ul li {
  width: 24.2%;
  text-align: left;
  float: left;
  display: block;
  margin: 30px 1% 0 0;
  box-sizing: border-box;
}
#plan_02 ul li:first-child,
#plan_02 ul li:nth-child(2),
#plan_02 ul li:nth-child(3),
#plan_02 ul li:nth-child(4) {
  margin-top: 0;
}
#plan_02 ul li:nth-child(4n) {
  margin-right: 0;
}
#plan_02 .plan_east h3 {
  color: #00a199;
}
#plan_02 .plan_east h3:before {
  content: url("../img/common/icon_leaf_g.svg");
}
#plan_02 .plan_main h3 {
  color: #87b828;
}
#plan_02 .plan_main h3:before {
  content: url("../img/common/icon_leaf_yg.svg");
}
#plan_02 ul li a .text {
  font-size: 18px;
  line-height: 2.4rem;
  padding: 10px;
}
@media screen and (max-width: 1199px) {
  #plan_02 h3 {
    font-size: 16px;
    line-height: 1.8rem;
  }
  #plan_02 ul li {
    width: 32.6%;
    margin: 30px 1% 0 0;
  }
  #plan_02 ul li:nth-child(4) {
    margin-top: 30px;
  }
  #plan_02 ul li:nth-child(4n) {
    margin-right: 1%;
  }
  #plan_02 ul li:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 980px) {
  #plan_02 ul {
    width: 740px;
    margin: 30px auto 0;
  }
  #plan_02 ul li {
    width: 49%;
    text-align: left;
    float: left;
    display: block;
    margin: 20px 2% 0 0;
    box-sizing: border-box;
  }
  #plan_02 ul li:nth-child(4n) {
    margin-right: 2%;
  }
  #plan_02 ul li:nth-child(3n) {
    margin-right: 2%;
  }
  #plan_02 ul li:nth-child(3),
  #plan_02 ul li:nth-child(4) {
    margin-top: 20px;
  }
  #plan_02 ul li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 740px) {
  #plan_02 {
    padding: 0 0 30px;
  }
  .plan .h2_wrap {
    margin-bottom: 20px;
  }
  .plan h2 span {
    width: 80%;
    max-width: 300px;
    margin: 0 auto;
    padding: 5px 20px;
  }
  #plan_02 ul {
    width: 100%;
    margin: 20px auto 0;
  }
  #plan_02 h3 {
    font-size: 15px;
    line-height: 1.8rem;
    text-align: center;
    padding-left: 0;
  }
  #plan_02 h3 span {
    font-size: 13px;
    display: block;
  }
  #plan_02 .plan_east h3:before,
  #plan_02 .plan_main h3:before {
    content: "";
    width: auto;
  }
}
/*-----------------------------------

	facility

-----------------------------------*/
#facility {
  margin-bottom: 70px;
  padding: 70px 0;
}
#facility h2 {
  width: 580px;
  margin: 0 auto 80px;
  position: relative;
}
#facility h2 img {
  width: 580px;
}
#facility h2:before {
  content: url("../img/index/h2_facility_left.svg");
  width: 345px;
  position: absolute;
  left: -400px;
  top: -40px;
}
#facility h2:after {
  content: url("../img/index/h2_facility_right.svg");
  width: 345px;
  position: absolute;
  right: -400px;
  top: -40px;
}
#facility h3 {
  width: 480px;
  margin: 0 auto 20px;
}
#facility h3 img {
  width: 480px;
}
#facility section {
  position: relative;
  text-align: center;
}
#facility .point {
  width: 190px;
  height: 110px;
  position: absolute;
  top: -50px;
  left: 0;
}
#facility .text {
  width: 580px;
  background: #fff;
  margin: 0 auto;
  padding: 20px 10px;
  position: absolute;
  top: 300px;
  left: 0;
  right: 0;
  box-sizing: border-box;
}
#facility .facilitybox {
  margin-top: 80px;
}
#facility .deco_01 {
  position: absolute;
  left: 0;
}
#facility .deco_02 {
  position: absolute;
  right: 0;
}
#facility .link_btn {
  width: 300px;
  margin: 150px auto 0;
}
#facility #facility_01 {
  margin-top: 0;
}
#facility #facility_01 .deco_01,
#facility #facility_01 .deco_02 {
  bottom: 80px;
}

#facility #facility_02 .deco_01 {
  bottom: 50px;
}
#facility #facility_02 .deco_02 {
  bottom: 70px;
}
#facility #facility_03 .deco_01 {
  bottom: 120px;
}
#facility #facility_03 .deco_02 {
  bottom: 50px;
}
@media screen and (max-width: 980px) {
  #facility h2 {
    width: 90%;
    max-width: 350px;
    margin: 0 auto 50px;
    position: relative;
  }
  #facility h2 img {
    width: 100%;
    max-width: 350px;
  }
  #facility h2:before {
    width: 180px;
    left: -210px;
    top: 0;
  }
  #facility h2:after {
    width: 180px;
    right: -210px;
    top: 0;
  }
  #facility .text {
    width: 100%;
    margin: 0 auto;
    padding: 20px 2.5%;
    position: static;
    top: 30%;
    left: 0;
    right: 0;
  }
  #facility .point {
    width: 150px;
    height: 85px;
    top: -30px;
  }
  #facility .link_btn {
    margin: 15px auto 0;
  }
  #facility .deco_01 {
    width: 30%;
    left: -20px;
    top: 25%;
    bottom: inherit;
  }
  #facility .deco_02 {
    width: 15%;
    top: 25%;
    right: -20px;
    bottom: inherit;
  }
  #facility #facility_02 .deco_01 {
    width: 20%;
    top: 25%;
  }
  #facility #facility_02 .deco_02 {
    width: 30%;
    top: 25%;
  }
  #facility #facility_03 .deco_01 {
    width: 15%;
    top: 40%;
  }
  #facility #facility_03 .deco_02 {
    width: 20%;
    top: 30%;
  }
}
@media screen and (max-width: 740px) {
  #facility {
    margin-bottom: 30px;
    padding: 30px 0;
  }
  #facility h2 {
    width: 90%;
    max-width: 220px;
    margin: 0 auto 50px;
    position: relative;
  }
  #facility h2 img {
    width: 100%;
    max-width: 220px;
  }
  #facility h2:before {
    content: url("../img/index/h2_facility_left.svg");
    width: 150px;
    left: -160px;
    top: 0;
  }
  #facility h2:after {
    content: url("../img/index/h2_facility_right.svg");
    width: 150px;
    right: -160px;
    top: 0;
  }
  #facility h3 {
    width: 100%;
    max-width: 300px;
    margin: 0 auto 10px;
    padding-bottom: 10px;
  }
  #facility h3 img {
    width: 100%;
  }
  #facility .facilitybox {
    margin-top: 50px;
  }
  #facility .text {
    width: 100%;
    margin: 0 auto;
    padding: 30px 2.5% 20px;
    position: static;
    top: 30%;
    left: 0;
    right: 0;
  }
  #facility .link_btn {
    width: 80%;
    margin: 15px auto 0;
  }
  #facility .point {
    width: 100px;
    height: 58px;
    top: -25px;
  }
  #facility .deco_01 {
    width: 38%;
    left: -15px;
    top: 20%;
    bottom: inherit;
  }
  #facility .deco_02 {
    width: 20%;
    top: 25%;
    right: -15px;
    bottom: inherit;
  }
  #facility #facility_02 .deco_01 {
    width: 28%;
    top: 20%;
    left: inherit;
    right: -20px;
  }
  #facility #facility_02 .deco_02 {
    width: 40%;
    top: 20%;
    left: -15px;
    right: inherit;
  }
  #facility #facility_03 .deco_01 {
    width: 20%;
    top: 30%;
  }
  #facility #facility_03 .deco_02 {
    width: 30%;
    top: 22%;
  }
}
/*-----------------------------------

	line_slider

-----------------------------------*/
.line_slider li {
  margin: 0 10px;
}
.line_slider img {
  width: 100%;
}
@media screen and (max-width: 740px) {
  .line_slider li {
    margin: 0 5px;
  }
}
/*-----------------------------------

	news & link nlbox

-----------------------------------*/
/*.nlbox h2{
	height: 30px;
	margin-right: 20px;
	display:inline-block;
	position: relative;
	padding-left: 50px;
}
.nlbox h2:before{
    width: 35px;
    height: 55px;
    position: absolute;
    left: 0;
    top: -10px;
}
*/
.nlbox p.text {
  display: inline-block;
  padding-top: 5px;
}
@media screen and (max-width: 740px) {
  .nlbox_warp {
    padding: 30px 0;
  }
}

/*-----------------------------------

	menu_nav

-----------------------------------*/
#menu_nav {
  text-align: center;
  padding: 10px 0;
}
#menu_nav .menu_link {
  width: 360px;
  margin-right: 2%;
  margin-top: 20px;
}
#menu_nav .menu_link a {
  width: 100%;
  font-size: 16px;
  line-height: 2.1rem;
}
@media screen and (max-width: 1199px) {
  #menu_nav {
    width: 95%;
    margin: 10px auto 30px;
  }
  #menu_nav ul li {
    width: 23.5%;
    margin-right: 2%;
    margin-top: 20px;
  }
}
@media screen and (max-width: 980px) {
  #menu_nav {
    width: 95%;
    margin: 10px auto 20px;
  }
  #menu_nav ul li {
    width: 95%;
    float: left;
    margin-top: 15px;
  }
  #menu_nav ul li a {
    font-size: 14px;
  }
}
@media screen and (max-width: 740px) {
  #menu_nav .menu_link {
    width: 95%;
    margin: 0 auto;
  }
}

/*-----------------------------------

   news

-----------------------------------*/
:root {
  --green: #87b828;
  /* 
  カスタムプロパティで色を変更できます。黄緑: #87b828、青緑: #00a199; */
}
#btn_news {
  display: block;
  text-align: center;
}
#news01 {
  text-align: center;
  padding: 0 0 70px;
}
#news01 .h2_wrap {
  border-top: solid 2px var(--green);
}
.news01 .h2_wrap {
  margin-bottom: 30px;
}
.news01 h2 {
  margin-top: 3px;
}
.news01 h2 span {
  width: 430px;
  text-align: center;
  display: block;
  margin: 0 auto;
  padding: 5px 20px;
}
#news01 h2 {
  border-top: 5px solid var(--green);
}
.news01 h2 span img {
  width: 430px;
}
#news01 h2 span {
  background: var(--green);
}
#news01 ul {
  margin-top: 20px;
}
#news01 ul li {
  width: 24.2%;
  text-align: left;
  margin: 0 1% 0 0;
  box-sizing: border-box;
  background: #fff;
}
#news01 ul li:nth-child(4n) {
  margin-right: 0;
}
#news01 .img-wrapper {
  position: relative;
  width: 100%;
}
#news01 .img-wrapper .cate_news {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  background: var(--green);
  color: #fff;
  font-size: 1.3rem;
  padding: 0px 6px;
}
#news01 ul li a .text {
  font-size: 1.8rem;
  line-height: 2.4rem;
  padding: 10px;
  margin-top: auto;
  display: flex;
  flex-direction: column;
}
#news01 ul li a .text .title {
  margin-bottom: 10px;
}
#news01 ul li a .text .date {
  font-size: 1.3rem;
  text-align: right;
  color: #bda29b;
}
#news01 .news-list {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
#news01 .news-list .news-list__link {
  display: flex;
  flex-direction: column;
}
.news01 .link_btn {
  width: 300px;
  margin: 30px auto 0;
}
@media screen and (max-width: 980px) {
}
@media screen and (max-width: 740px) {
  #news01 {
    text-align: center;
    padding: 0 0 30px;
  }
  #news01 .h2_wrap {
    border-top: solid 2px var(--green);
  }
  .news01 .h2_wrap {
    margin-bottom: 20px;
  }
  .news01 h2 {
    margin-top: 3px;
  }
  .news01 h2 span {
    width: min(80%, 300px);
    text-align: center;
    display: block;
  }
  #news01 h2 {
    border-top: 5px solid var(--green);
  }
  .news01 h2 span img {
    width: 100%;
  }
  #news01 h2 span {
    background: var(--green);
  }
  #news01 ul {
    margin-top: 20px;
  }
  #news01 ul li {
    width: 100%;
    text-align: left;
    margin: 0;
    box-sizing: border-box;
    background: transparent;
    border-top: solid 1px #fff;
    margin-top: 10px;
    padding-top: 10px;
  }
  #news01 ul li:nth-child(4n) {
    margin-right: 0;
  }
  #news01 .img-wrapper {
    position: relative;
    width: 30%;
  }
  #news01 .img-wrapper img {
    height: 90px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  #news01 .img-wrapper .cate_news {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    background: var(--green);
    color: #fff;
    font-size: 1.1rem;
    padding: 0px 3px;
  }
  #news01 ul li a .text {
    width: 70%;
    font-size: 1.4rem;
    line-height: 1.8rem;
    padding: 10px 2.5%;
    margin: 0;
    flex-direction: column-reverse;
    justify-content: flex-end;
    align-items: flex-start;
  }
  #news01 ul li a .text .title {
    margin-bottom: 0;
  }
  #news01 ul li a .text .date {
    font-size: 1.1rem;
    text-align: left;
    margin-bottom: 10px;
    color: #bda29b;
  }
  #news01 .news-list {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
  }
  #news01 .news-list .news-list__link {
    display: flex;
    flex-direction: row;
  }
}
/*news slide-pattern*/

#news01 .slide-news__list li {
  margin: 0 6px;
}
#news01 .slide-news__list li:nth-child(4n) {
  margin: 0 6px;
}
@media screen and (max-width: 740px) {
  #news01 .slide-news__list li {
    margin: 10px 0 0 0;
  }
  #news01 .slide-news__list li:nth-child(4n) {
    margin: 10px 0 0 0;
  }
  #news01 .slide-news__list li:nth-last-child(-n + 2) {
    display: none;
  }
}
/*-----------------------------------

	link

-----------------------------------*/

#link .bd_dot_g {
  height: 35px;
  margin-bottom: 10px;
  padding-bottom: 15px;
}
#link h2 {
  width: 215px;
}
#link h2:before {
  content: url("../img/common/icon_tree_g.svg");
}
#link p.text {
  display: inline-block;
}
#link {
  width: 100%;
  max-width: 1200px;
}
#link .banner-list {
  display: grid;
  grid-template-columns: repeat(5, calc((100% - 30px * 4) / 5));
  max-width: 1200px;
  margin-top: 30px;
  gap: 30px;
}
#link .banner-list li {
  float: none;
}
.nlbox_warp {
  padding: 60px 0;
}
.nlbox h2 {
  height: 30px;
  margin-right: 20px;
  position: relative;
  display: inline-block;
  padding-left: 50px;
}
.nlbox h2:before {
  width: 35px;
  height: 55px;
  position: absolute;
  left: 0;
  top: -10px;
}
@media screen and (max-width: 980px) {
  #link {
    width: 100%;
    max-width: 100%;
  }
  #link .banner-list {
    display: grid;
    grid-template-columns: repeat(4, 23.5%);
    justify-content: space-between;
    gap: 0;
    row-gap: 20px;
  }
  #link ul li:first-child {
    grid-column-start: 1;
    grid-column-end: 3;
  }
  #link ul li:nth-child(2) {
    grid-column-start: 3;
    grid-column-end: 5;
  }
}
@media screen and (max-width: 740px) {
  .nlbox_warp {
    padding: 30px 0;
  }
  #link h2 {
    width: 160px;
  }
  #link .bd_dot_g {
    height: 25px;
    margin-bottom: 20px;
    padding-bottom: 10px;
  }

  #link .banner-list {
    width: min(90%, 500px);
    display: grid;
    grid-template-columns: repeat(2, 49%);
    justify-content: space-between;
    -moz-column-gap: 2%;
    column-gap: 2%;
    row-gap: 15px;
    margin: 0 auto;
  }

  #link ul li:first-child,
  #link ul li:nth-child(2) {
    width: 100%;
    margin-left: 0;
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
@charset "UTF-8";

/*-----------------------------------

	C&Cテスト用

-----------------------------------*/
#search_ver5{
	background: #edfaff;
	padding: 10px 0;
	text-align: cneter;
	font-family: "Sawarabi Mincho";
}
#search_489ban{
	padding: 10px;
}
.search dl {
	float: left;
}
.date_489ban{
	float: left;
}
.date_489ban input{
	font-size: 16px;
	letter-spacing: 0rem;
	outline: none;
	background: #fff;
	margin: 0 10px;
	border: solid 1px #ccc;
	padding: 5px;
}
.person_489ban{
	float: left;
}
.person_489ban select{
	font-size: 16px;
	letter-spacing: 0.2rem;
	border: none;
	outline: none;
	background: #fff;
	margin: 0 10px;
}
.stay_489ban{
	float: left;
}
.stay_489ban select {
	font-size: 16px;
	letter-spacing: 0.2rem;
	border: none;
	outline: none;
	background: #fff;
	margin: 0 10px;
}
.room_489ban{
	float: left;
}
.room_489ban select{
	font-size: 16px;
	letter-spacing: 0.2rem;
	border: none;
	outline: none;
	background: #fff;
	margin: 0 10px;
}
.inbox_489ban{
	float: left;
}
#search_489ban button {
	display: block;
	width: 120px;
	height: 60px;
	color: #fff;
	text-align: center;
	font-size: 20px;
	background: #87b828;
	border: solid 1px #ccc;
	padding: 0;
	margin: 5px;
	font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN','Noto Serif CJK JP',sans-serif;
	float: left;
	letter-spacing: 0.1em;
}
#search_489ban button:hover {
	background: #f1ee45;
	color: #87b828;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
	#search_ver5{
		background: #edfaff;
		padding: 0;
	}
	#search_489ban{
		padding: 0px;
	}
	.date_489ban{
		width: 100%;
		margin: 0 auto;
	}
/*	.inbox_489ban{
		width: 100%;
		margin: 0 auto;
	}*/
	.date_489ban dt{
		/*padding: 10px;*/
	}
	.stay_489ban {
		float: left;
	}
	.stay_489ban dt{
		/*padding: 10px;*/
	}
	.room_489ban{
		/*width: 100%;*/
		margin: 0 auto;
	}
	.room_489ban dt{
		/*padding: 10px;*/
	}
	.person_489ban{
		/*width: 100%;*/
		margin: 0 auto;
		clear: both;
	}
}
/* バナー本体 */
#telop{
	/*border:2px solid #666;*/
	padding: 1px 15px;
	color:#fff;
	/*font-size:13px;*/
	background:#00a199;
	border-radius:8px;
	width: 400px;
	margin: 0px 0px 0px 10px;
	
}
.ymdText{
	margin-right:10px;
}
.telopText{
	margin-right:20px;
}
.telopText a{
	color:#eee;
}
/* バナー本体 */
.news-banner {
  display: block;
  height: 30px;
  width: 100%;
  background-color: orange;
  overflow: hidden;
}

/* バナー内コンテンツ */
.news-banner__content {
  display: inline-block;
  color: #fff;
  line-height: 30px;
  padding-left: 100%;
  white-space: nowrap;
  animation: animate-banner 20s linear infinite;
}

/* バナー内の要素をすべて選択 */
.news-banner__content > * {
  display: inline-block;
}
@media screen and (max-width: 640px) {
	#telop{
		width: 90%;
	}
}

/* 横にスクロールさせるアニメーション */
@keyframes animate-banner {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/*-----------------------------------
Margin
-----------------------------------*/
.mga{
	margin-left: auto;
	margin-right: auto;
}
.mgt5{
	margin-top: 5px;
}
.mgt15{
	margin-top: 15px;
}
.mgt30{
	margin-top: 30px;
}
.mgb30{
	margin-bottom: 30px;
}
.mgt70{
	margin-top: 70px;
}
.mgt140{
	margin-top: 140px;
}
.pd70{
	padding:70px 0;
}
@media screen and (max-width: 1200px) {

}
@media screen and (max-width: 740px) {
	.mgt15{
		margin-top: 8px;
	}
	.mgt30{
		margin-top: 20px;
	}
	.mgt70{
		margin-top: 40px;
	}
	.mgt140 {
		margin-top: 70px;
	}
	.pd70{
		padding:40px 0;
	}
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
