@charset "UTF-8";

/* ================================================================

制作コンテンツ

info:
- レスポンシブの場合は、ブレイクポイント 768px で記述してください。
- SP用CSSを先に記述する方法を推奨します。下記の記述は例です。
- PCのみの場合は、記述を削除してください。

================================================================ */

/* SP用CSSの記述 */

.container{
	background: url("../images/main-bg.jpg") repeat center;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	    overflow: hidden;
}
.container a{
	transition: opacity 0.3s;
}
.container a:hover{
	opacity: 0.6;
}
.container ul li{
	list-style-type: none;
}
.container .inner{
	max-width: 990px;
	margin: 0 auto;
	position: relative;
}
.container .inner > span{
    text-align: right;
    font-size: 14px;
    float: right;
    display: inline-block;
    padding: 0.5em 0;
    font-weight: 300;
    margin-bottom: 3em;
    color: #666;
}

.top-main-outer{
	width: 100%;
	height: 600px;
	background: url("../images/top-main-bg.jpg") no-repeat center;
	background-size: cover;
}
.top-main-inner{
	max-width: 1100px;
	height: 600px;
	margin: 0 auto;
	background: url("../images/top-main.jpg") no-repeat center;
	background-size: cover;
	position: relative;
}
h1{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.access-wrap h2{
	text-align: center;
	font-size: 25px;
	line-height: 1.5;
	font-weight: bold;
	color: #333;
}
.access-wrap h2 img{
	display: block;
	margin: 0 auto;
}
.access-wrap h2 span{
	padding: 0.5em 0;
	display: inline-block;
}
.access-wrap h2 small{
	font-size: 0.8em;
	color: #f45192;
}


.map-wrap{
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-top: 40px;
}
.map-wrap .map-text{
	width: 50%;
}
.map-wrap .map-text h3{
	background: #f45192;
	line-height: 1;
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	padding: 0.3em 1em;
	border-radius: 5px;
	display: inline-block;
	letter-spacing: 1px;
}
.map-wrap .map-text ul li{
	font-size: 17px;
	font-weight: 700;
	padding: 0.8em 0;
	border-bottom: 1px solid #e9e9e9;
}
.map-wrap .map-text ul li:last-child{
	border-bottom: none;
}
.map-wrap .map-text ul li img{
    display: inline-block;
    padding-bottom: 0.3em;
}

.map-wrap .map-text ul li span{
	color: #f45192;
	line-height: 2em;
	font-size: 1.1em;
}
.map-wrap .map-img{
    width: 49%;
    border: 1px solid #f45192;
    border-radius: 10px;
    overflow: hidden;
}
.map-wrap .map-img img{
	width: 100%;
}
.map-wrap .bg{
	position: absolute;
    left: 38%;
    top: 0%;
}
.map-wrap .bg.bg-2{
	position: absolute;
left: auto;
    right: 5%;
    top: -46%;
}

.access-btn-wrap{
	text-align: center;
	padding: 10px 30px;
	background: url("../images/plan-btn-bg.jpg") no-repeat center;
	background-size: cover;
    margin: 50px 0 60px;
}
.access-btn-wrap h4{
    font-weight: bold;
    font-size: 25px;
    line-height: 1.3;
    color: #fff;
    padding: 0.8em 0 0.6em;
}
.access-btn-wrap h4 small{
	font-size: 0.8em;
}
.access-btn-wrap a{
    display: inline-block;
    background: #f45192;
    border-radius: 30px;
    color: #fff;
    font-weight: bold;
    font-size: 19px;
    padding: 0.4em 1.5em;
    margin-bottom: 0.8em;
}

.plan-wrap{
	background: #fff;
	width: 100%;	
    margin-top: 60px;
}
.plan-wrap .plan-about{
	width: 100%;
	background: #fff2ef;
	text-align: center;
	    padding: 60px 0;
}
.plan-wrap .plan-about h4{
	font-size: 22px;
    color: #f45192;
    position: relative;
    border-bottom: 1px solid;
    padding-bottom: 0.5em;
}
.plan-wrap .plan-about p{
	font-size: 17px;
    margin-top: 1.5em;
    line-height: 1.7;
    letter-spacing: 1px;
}
.plan-wrap .plan-about p strong{
    background: linear-gradient(transparent 60%, #ffe1a4 60%);
    font-weight: 600;
}
.plan-wrap .plan-bg li{
	position: absolute;
}
.plan-wrap .plan-bg li:nth-child(1){
    left: -5%;
    top: 20%;
}
.plan-wrap .plan-bg li:nth-child(2){
    right: -9%;
	bottom: 0;
}
.plan-wrap .plan-how-to{
	padding: 60px 0;
	text-align: center;
	box-shadow: 0px 10px 10px -6px rgb(0 0 0 / 6%);
}

.spot-wrap{
	padding: 40px 0 120px;
}
.spot-wrap > ul{
	text-align: center;
}
.spot-wrap li img{
	width: 100%;
    max-width: 1150px;
}
.spot-wrap h5{
	font-size: 21px;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid #d0d0d0;
	text-align: center;
	color: #f45192;
}
.spot-wrap table{
	width: 990px;
	margin-top: 20px;
	border-collapse:  collapse;
}
.spot-wrap table th,
.spot-wrap table td{
    border: 1px solid #d0d0d0;
	padding: 10px;
}
.spot-wrap table th{
	font-size: 18px;
	background: #f978ab;
    color: #fff;
}
.spot-wrap table td{
	vertical-align: top;
	font-size: 14px;
	background: #fff6fa;
	padding: 10px 10px 20px;
}
.ex-text{
	margin-top: 1em;
    font-size: 13px;
}
.spot-btn{
	text-align: center;
}
.spot-btn a{
	display: inline-block;
    background: #f45192;
    color: #fff;
    font-weight: bold;
    line-height: 1;
    padding: 0.7em 2.5em;
    border-radius: 5px;
    font-size: 22px;
    margin-top: 30px;
}
.spot-btn.btn-1 a{
	background: #f88eb9;
}

.fix-banner-wrap{
	max-width: 1100px;
	width: 100%;
	min-width: 990px;
	left: 50%;
	transform: translateX(-50%);
	position: fixed;
	top: 18%;
}

.fix-banner{
	position: absolute;
    right: -185px;
}



/* PC、Tablet用CSSの記述 */
@media screen and (max-width:1100px){
	.fix-banner{
		position: absolute;
		right: 1.5%;
	}
}



