/* CSS Document */




/*============================================================================

	footer

============================================================================*/
footer {
}




/*============================================================================

	pagetop

============================================================================*/
#pagetop {
  	position: fixed;
  	bottom: 0;
  	right: 0;
	width: 100px;
	height: 100px;
  	background: rgba(11,58,45,.8);
  	border-radius: 0 5px 0 0;
  	font-size: 12px;
  	color: #FFF;
  	cursor: pointer;
  	pointer-events: none;
  	transition: opacity 0.3s;
  	z-index: 1000;
	transform: rotate(-90deg);
  	opacity: 0;
}
#pagetop.show {
  pointer-events: auto;
  opacity: 1;
}
#pagetop p {
	position: absolute;
	bottom: 20px; right: 13px;
	transform: rotate(180deg);
	letter-spacing: 2px;
	text-align: center;
	width: 80px;
	transition: 0.3s ease-out;
}
#pagetop::before {
	position: absolute; content: "";
  	width: 8px;
  	height: 1px;
	bottom: 48px;
  	right: 23px;
  	background: #FFF;
  	transform: rotate(-30deg);
	transition: 0.3s ease-out;
}
#pagetop::after {
  	position: absolute; content: "";
  	width: 55px;
  	height: 1px;
  	bottom: 50px;
  	right: 23px;
	margin-left: 20px;
  	background: #FFF;
	transition: 0.3s ease-out;
}



#pagetop:hover p {
	letter-spacing: 5px;
}
#pagetop:hover::before {
  	right: 13px;
}
#pagetop:hover::after {
  	right: 13px;
  	width: 68px;
}




/*============================================================================

	無限スライダー画像

============================================================================*/
.slider-wrapper {
	display: flex;
	margin: 60px 0;
	overflow: hidden;
}
.slider-wrapper ul {
	display: flex;
	animation: scroll-left 70s infinite linear .5s both;
}
.slider-wrapper ul li {
	margin: 0 5px;
}
@keyframes scroll-left {
  from { transform: translateX(0);}
  to {   transform: translateX(-100%);}
}
@media screen and (max-width:640px) {
	.slider-wrapper {
		margin: 40px 0;
	}
	.slider-wrapper ul img {
		max-width: 260px;
	}
}





/*============================================================================

	.information

============================================================================*/
.information {
	position: relative;
	margin-top: 80px;
	padding-bottom: 110px;
	background: linear-gradient(to top, #f2efea, #FFF);
}
.information::before {
	position: absolute; content: "";
	width: 44.5%; height: 100%;
	top: 0; left: 0;
	background: #FFF;
}
.information .inner {
	position: relative;
	width: 84%;
	max-width: 1280px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	z-index: 2;
}
@media screen and (max-width:640px) {
	.information {
		margin-top: 100px;
		padding-bottom: 110px;
	}
	.information::before {
		display: none;
	}
	.information .inner {
		width: 90%;
		display: block;
	}
}



/*------------------------------ 左 ------------------------------*/
.information .left {
	width: 640px;
}
.info_add { /*住所*/
	display: flex;
	align-items: center;
	margin: 55px 0 45px;
	letter-spacing: 0.8px;
	line-height: 1;
}
.info_add img { /*住所*/
	margin-right: 15px;
}
.information dl {
	margin-top: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.information dl dt {
	position: relative;
	margin-right: 25px;
	margin-top: 3px;
	padding: 0 18px 0 20px;
	font-size: 14px;
	line-height: 1;
	color: #103a2f;
}
.information dl dt::before {
	position: absolute; content: "";
	background: url("../images/icon03.png");
	background-size: 9px 15px;
	width: 9px; height: 15px;
	top: 0; left: 0;
}
.information dl dt::after {
	position: absolute; content: "";
	background: url("../images/icon03.png");
	background-size: 9px 15px;
	width: 9px; height: 15px;
	top: 0; right: 0;
	transform: scaleX(-1);
}
.information dl dd a {
	display: block;
	line-height: 1;
}
@media screen and (max-width:640px) {
	.information .left {
		width: 100%;
	}
	.information .left h1 {
		width: 60%;
		margin: auto;
		text-align: center;
	}
	.info_add { /*住所*/
		display: flex;
		align-items: flex-start;
		margin: 30px 0 30px;
		line-height: 2;
	}
	.info_add img { /*住所*/
		margin-right: 15px;
		margin-top: 6px;
	}
	.information dl {
		display: block;
		text-align: center;
	}
	.information dl dt {
		margin: 0 auto 20px;
		padding: 0;
		font-size: 15px;
		width: 340px;
	}
}



/*------------------------------ 右 ------------------------------*/
.information .right {
	width: calc( 100% - 640px - 8% );
}
.information .right iframe {
	width: 100%;
	height: 390px;
	box-sizing: border-box;
	border: 1px solid #e2dfda !important;
	border-radius: 5px;
}
.info_access { /*駅より徒歩〜*/
	display: flex;
	align-items: center;
	margin: 15px 0 20px;
	letter-spacing: 0.8px;
}
.info_access img { /*駅より徒歩〜*/
	margin-right: 15px;
}
.information .right .btn {
	text-align: right;
	margin-right: 20px;
	line-height: 1;
}
.information .right .btn a:hover {
	letter-spacing: 3px;
}
@media screen and (max-width:1440px) {
	.information .right {
		width: calc( 100% - 640px - 5% );
	}
	.information .right .btn a {
		letter-spacing: 2.5px;
	}
	.information .right .btn a:hover {
		letter-spacing: 2.5px;
	}
}
@media screen and (max-width:640px) {
	.information .right {
		width: 100%;
		margin-top: 50px;
	}
	.information .right iframe {
		height: 300px;
	}
	.info_access { /*駅より徒歩〜*/
		display: flex;
		align-items: center;
		margin: 15px 0 20px;
		letter-spacing: 0.8px;
	}
	.info_access img { /*駅より徒歩〜*/
		margin-right: 15px;
	}
	.information .right .btn {
		margin-right: 0;
	}
	.information .right .btn a {
		padding: 0;
		text-decoration-line: underline;
		text-underline-offset: 10px;
		text-decoration-color: #edaf19; /* 線の色を変える */
	}
	.information .right .btn a::before , .information .right .btn a::after {
		display: none;
	}
	.information .right .btn a:hover {
		letter-spacing: 3px;
	}
}





/*============================================================================

	#footer_nav

============================================================================*/
#footer_nav {
	padding: 90px 0 80px;
	background: #406c60;
}
#footer_nav .inner {
	width: 90%;
	max-width: 1300px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}
#footer_nav ul {
	width: auto;
}
#footer_nav li {
	position: relative;
	padding-left: 20px;
}
#footer_nav li::before {
	position: absolute;
	content: "−";
	top: -2px;
	left: 0;
	color: #FFF;
	opacity: .7;
}
#footer_nav li a {
	display: block;
	color: #FFF;
	font-size: 15px;
}
#footer_nav li a:hover {
	opacity: .5;
}
@media screen and (max-width:640px) {
	#footer_nav {
		padding: 40px 0 40px;
	}
	#footer_nav .inner { display: none;}
}





/*============================================================================

	コピーライト

============================================================================*/
.copy{
	margin-top: 50px;
	text-align: center;
}
.copy small{
	font-size: 12px;
	letter-spacing: 2px;
	font-family: "Cormorant Garamond", serif;
  	font-optical-sizing: auto;
	color: #FFF;
}
@media screen and (max-width:640px) {
	.copy{
		margin-top: 0;
	}
}









