@charset "UTF-8";

/*index
----------------------------------------*/
body {

}
.pc_header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 1000px;
	margin: 0 auto;
	position: relative;
}
@media only screen and (max-width: 736px) {
	.pc_header, .gnav {
			display: none;
	}
}

.header .gnav {
	width: 680px;
	margin: 0;
}

@media only screen and (max-width: 736px) {
	.header .gnav {
		width: 100%;
	}
}

.header .header_logo {
	display: block;
	width: 261px;
}

.gnav ul {
	margin: 18px auto;
	line-height: 1.5;
	text-align: center;
}

.gnav ul li a {
	letter-spacing: 0;
}

.gnav ul li img {
	width: 40px;
}

.gnav ul li span {
	font-size: 9px;
}


/*mainv_block
----------------------------------------*/
.mainv_block {
	background: url(../img/index/img-mainv02.png)no-repeat;
	overflow: visible;
	position: relative;
	background-size: cover;
	height: 100vh;
    min-height: 840px;
	background-position: center;
}

.mainv_block > * {
	position: absolute;
}
.mainv_block img {
	margin: 0 auto;
	text-align: center;
	width: 100%;
}

.mainv_block .logo {
	left: 50%;
    width: 100%;
    max-width: 1000px;
    transform: translateX(-50%);
}

.mainv_block.off .logo {
	top: 30.5%;
}

.mainv_block .logo img {
	width: auto;
}

.mainv_block.off .txt {
	top: 59.77%;
	left: 50%;
	margin-left: -530px;
    width: inherit;
    max-width: 290px;
}

.mainv_block .txt {
	top: 54.77%;
	left: 50%;
	margin-left: -500px;
	width: 22.57%;
	max-width: 1500px;
}
/*.mainv_block .txt {
	top: 54.77%;
	left: 50%;
	margin-left: -520px;
	width: 20.85%;
	max-width: 1500px;
}*/


.mainv_block .txt img {
	max-width: 340px;
}

.mainv_block.off .txt img {
	max-width: inherit;
}

.mainv_block.off .txt_end {
	width: 100%;
    background: rgba(255,255,255,0.7);
    margin: 0 auto;
    text-align: center;
    padding: 40px 0;
    top: 43%;
}

.mainv_block .txt_end img {
	/*width: 40%;*/
	max-width: 740px;
}




.mainv_block .scroll {
	bottom: 10.9%;
	left: 50%;
	margin-left: -25px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {



}
@media only screen and (min-width: 737px)  and (max-width: 1024px) {
	/*.mainv_block.off .logo {
		top: 27%;
	}

	.mainv_block .txt_end img {
		width: 50%;
	}*/


}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait) {
    .mainv_block.off .logo {
        width: 90%;
    }
    .mainv_block.off .logo,
    .mainv_block.off .logo img {
        max-width: inherit;
    }

    .mainv_block .txt_end img {
        max-width: inherit;
    }
	.mainv_block .txt {
        top: 44.77%;
        left: 50%;
        margin-left: -500px;
        width: 22.57%;
        max-width: 1500px;
    }
    .mainv_block.off .txt {
        margin: 0;
        left: 20px;
        max-width: inherit;
        width: 30%;
    }
}

@media only screen and (max-width: 736px) {
	.mainv_block {
		background: url(../img/index/img-mainv-sp.png)no-repeat;
		padding-top: 140%;
		background-size: cover;
		background-position: top center;

		width: auto;
		height: auto;
		float: none;
		margin-bottom: 18px;
		padding-bottom: 20px;
        min-height: inherit;

	}

	.mainv_block .logo {
		top: 43.6%;
		/*left: 4%;
		width: 92%;
		margin-left: 0;*/
	}

	.mainv_block.off .logo {
		top: 24%;
        width: 90%;
	}

	.mainv_block.off .txt_end {
		padding: 25px 0;
		top: 35%;
	}

	.mainv_block.off .txt_end img {
		width: 90%;
		max-width: inherit;
	}

	.mainv_block.off .txt {
		bottom: inherit;
        left: 2%;
        margin-left: 0;
        width: 40%;
        top: 55%;
	}

	.mainv_block .txt {
    bottom: 4%;
    left: 4%;
    margin-left: 0;
    width: 33%;
    top: inherit;
	}
	/*.mainv_block .txt {
		top: 61%;
		left: 3%;
	  margin-left: 0;
		width: 34%;
	}*/

	.mainv_block .scroll {
    bottom: 8.27%;
		left: 46%;
		margin-left: 0;
		width: 7.56%;
	}
}



/*container
----------------------------------------*/
.container {
	width: 1000px;
	margin: 0 auto;
	zoom: 1;
}

.parking {
	text-align: center;
	font-weight: bold;
	color: #FF080D;
	margin-bottom: 20px;
	font-size: 1.5em;
}


@media only screen and (max-width: 736px) {
	.container {
		width: auto;
		padding: 0 4%;
	}

}


/*btn_more
----------------------------------------*/
.btn_more {
	width: 260px;
	text-align: center;
	margin: 40px auto;
}

.btn_more a  {
	background : linear-gradient(135deg, rgba(115, 248, 224, 1) 0%, rgba(115, 181, 224, 1) 52.07%, rgba(0, 116, 255, 1) 100%);
	border-radius: 5rem;
	display: block;
	color: #fff;
	transition: 0.5s;
}
.btn_more a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.btn_more a img {
	margin: 0 auto;
	padding: 20px 0;
	display: block;
}
.btn_more a img:hover {
	opacity: 1 !important;
}


@media only screen and (max-width: 736px) {


}



/*news_block
----------------------------------------*/
.news_block {
	padding: 64px 0;
}

.news_block h2 {
	text-align: left;
	background: none;
	border: none;
	margin-bottom: 50px;
	padding: 0;
}
.news_block h2 img {
	margin-left: auto;
	margin-right: auto;
}

.news_block dl {
	margin-top: 25px;
	padding-bottom: 8px;
	border-bottom: 1px solid #e0e0e0;
	font-weight: bold;
	color: #000000;
}

.news_block dt {
	float: left;
	width: 200px;
	font-size: 93%;
	color: #0f2747;
}

.news_block dd {
	overflow: hidden;
	font-size: 108%;
}

.news_block dd a {
	color: #0f2747;
}


@media only screen and (max-width: 736px) {
	.news_block {
		padding: 30px 0 50px;
	}

	.news_block h2 {
		margin-bottom: 32px;
	}

	.news_block dt {
		float: none;
		width: 100%;
	}

	.news_block dd {
		font-size: 100%;
	}

}


/*facebook_block
----------------------------------------*/
.facebook_block {
	padding: 50px 0;
}

.facebook_block li {
	float: left;
	width: 25%;
	color: #ffffff;
	padding-bottom: 1px;
	padding-right: 1px;
}

.facebook_block li img {
	width: 100%;
}

.facebook_block li a {
	display: block;
	color: #ffffff;
	background: #000000;
	position: relative;
}

.facebook_block .ph_box {
	position: relative;
}

.facebook_block li .ttl {
	position: absolute;
	width: 80%;
	top: 36%;
	left: 10%;
	z-index: 10;
	text-align: center;
	display: none;
}
.facebook_block li a:hover .ttl {
	display: block;
	z-index: 11;
}

.facebook_block li .ttl p {
	font-size: 93%;
	margin: 0;
	/* color: #000; */
	font-weight: bold;
	/* text-shadow: 2px 0px 1px #ffffff; */
}


.facebook_block .ph_box {
	overflow: hidden;
	padding-top: 100%;
}

.facebook_block .ph_box img {
	position: absolute;
	bottom: 0;
	left: -25%;
	right: 0;
	top: 0;
	width: 150%;
	height: auto;
	max-width: none;
	margin: auto;
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}


.facebook_block .ph_box img:hover {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}



@media only screen and (max-width: 736px) {
	.facebook_block {
		padding: 50px 0;
	}
	.facebook_block li {
		float: left;
		width: 50%;
	}
	.facebook_block li img {
		width: 100%;
	}
	.facebook_block li .ttl {
		display: block;
		top: 25%;
	}
	.facebook_block li .ttl h3 {
		margin: 0 0 10px;
		font-size: 100%;
	}
	.facebook_block p.btn {
		width: 48.75%;
		margin: 12.5% auto 0;
	}
}


/*guide_block
----------------------------------------*/
.guide_block {
	padding: 60px 0 80px;
	background-image: url(../img/index/guide_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #f2fafa;
}
.guide_block a {
	transition: 0.5s;
}

.guide_block h2 {
	text-align: center;
	background: none;
	border: none;
	padding: 0;
	font-size: 262.3%;
	color: #156bb1;
}

.guide_block .col4_block > * {
	width: 24.5%;
	margin: 0 0 0 0.5%;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid #1F5CB7;
}

.guide_block .col4_block img {
	display: block;
}
.guide_block .col4_block a:hover {
	text-decoration: none !important;
}

.guide_block .txt_box {
	background-color: #fff;
	padding: 15px 15px 20px;
}
.guide_block .txt_box::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 6px;
	right: 6px;
	background: url(../img/index/ico-guide.png)no-repeat;
	width: 5px;
	height: 5px;
}


.guide_block .txt_box p.sttl {
	font-size: 184%;
	padding: 0;
	width: fit-content;
	line-height: 1.5;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 12px;
	text-align: center;
	background: none;
	font-weight: bold;
	border-bottom: 2px solid #19b3e5;
	color: #156bb1;
}

@media only screen and (max-width: 736px) {
	.guide_block .txt_box p.sttl {
		font-size: 150%;;
	}
}

.guide_block .txt_box p + p {
	margin-top: 5px;
}

.guide_block a .txt_box {
	position: relative;
	overflow: hidden;
	border-top: 2px solid #1F5CB7;
}

.guide_block a .txt_box::before {
	position: absolute;
	top: 0;
	left: -75%;
	z-index: 2;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	-webkit-transform: skewX(-25deg);
	transform: skewX(-25deg);
}

.guide_block a .txt_box:hover::before {
	-webkit-animation: shine 1.8s;
	animation: shine 1.8s;
}

@-webkit-keyframes shine {
	100% {
		left: 125%;
	}
}
@keyframes shine {
	100% {
		left: 125%;
	}
}


@keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

@media only screen and (max-width: 736px) {
	.guide_block {
		padding: 30px 0;
	}

	.guide_block h2 {
		font-size: 197%;
	}

	.guide_block .col4_block > * {
		width: 48%;
		margin: 0 0 3% 2%;
	}

	.guide_block .txt_box p + p {
		font-size: 100%;
		line-height: 1.6;
	}

}


/*payment_block
----------------------------------------*/
.payment_block {
	background: url(../img/index/bg-01.jpg) no-repeat;
	background-size: cover;
	padding: 60px 0;
	margin-bottom: 80px;
	text-align: center;
	color: #ffffff;
}

.payment_block h2 {
	background: none;
	border: none;
	padding: 0;
	position: relative;
	margin-bottom: 45px;
}

.payment_block h2::after {
	content: "";
	display: block;
	position: absolute;
	width: 88px;
	height: 2px;
	background: #ffffff;
	left: 50%;
	margin-left: -44px;
	margin-top: 20px;
}

.payment_block .convenience {
	width: 550px;
	margin: 30px auto 0;
	padding: 30px;
	background: rgba(255,255,255,0.7);
}

.payment_block .convenience p {
	color: #000000;
	margin-bottom: 5px;
}

.payment_block .convenience ul {
	margin-bottom: 0;
}

.payment_block .convenience li {
	display: inline-block;
	vertical-align: middle;
	margin-left: 25px;
}

.payment_block .convenience li:first-child {
	margin-left: 0;
}

@media only screen and (max-width: 736px) {
	.payment_block {
		padding: 30px 0;
		margin-bottom: 30px;
	}
	.payment_block .txt_box h2 {
		font-size: 169.2%;
		margin-bottom: 30px;
	}
	.payment_block .txt_box h2::after {
		width: 44px;
		margin-left: -22px;
		margin-top: 15px;
	}
	.payment_block .txt_box p {
		text-align: left;
	}

	.payment_block .convenience p {
		margin-bottom: 10px;
		font-size: 95%;
	}

	.payment_block .convenience li {
    	width: 50%;
		margin-left: 10px;
		float: left;
    	margin: 0 auto;
	}
	.payment_block .convenience li img {
    	margin: 0 auto 10px;
	}
	.payment_block .convenience {
		width: 100%;
		margin: 15px auto 0;
		padding: 10px 5%;

	}

}


/*photo_block
----------------------------------------*/

.photo_block  {
	margin-bottom: 80px;
}

.photo_block .btn_more ph  {
	position: relative;
	margin-bottom: 0;
}

.photo_block .btn_more {
	position: absolute;
	bottom: 25px;
	right: 30px;
	width: 140px;
}

.photo_block .btn_more a  {
	border: 3px solid #ffffff;
}

.photo_block .btn_more a:hover  {
	background: rgba(255,255,255,0.3)
}

@media only screen and (max-width: 736px) {
	.photo_block {
		margin-bottom: 30px;
	}

	.photo_block .btn_more {
    bottom: 6.3%;
    right: 7%;
    width: 28.2%;
	}
	.photo_block .btn_more a {
    border: 2px solid #ffffff;
	}
	.photo_block .btn_more a img {
			margin: 0 auto;
			padding: 8px 0;
		}

}


/*bnr_block
----------------------------------------*/
.bnr_block {
	padding: 50px 0 25px;
	background: #f5f5f5;
}

@media only screen and (max-width: 736px) {
	.bnr_block  {
		padding: 30px 0;
	}

	.bnr_block .col2_block .col_box  {
		margin-bottom: 20px;
	}

	.bnr_block .col2_block .col_box:last-child  {
		margin-bottom: 0;
	}

}


/*attention_block
----------------------------------------*/
.attention_block {
	padding: 53px 0 55px;
	color: #0a2243;
}

.attention_block .txt_box {
	border: 1px solid #5aa4e8;
	padding: 25px 30px;
}

.attention_block .sttl {
	background: none;
	text-align: left;
	font-weight: bold;
	color: #C50B48;
	padding: 0;
	letter-spacing: 5px;
}

.attention_block .txt_box ul {
	margin-bottom: 0;
}

.attention_block .txt_box ul li {
	margin-bottom: 0;
	line-height: 1.6;
	font-weight: bold;
}

@media only screen and (max-width: 736px) {
	.attention_block {
		padding: 30px 0;
	}

}




/*top-contents
----------------------------------------*/
.top-contents h2 {
    background: none;
    color: #3164a8;
    text-align: center;
    padding: 0;
    font-size: 30px;
}
.top-contents h2.mb-small {
    margin-bottom: 10px;
}
.top-contents h2 span {
    padding-bottom: 8px;
    border-bottom: 2px solid #3164a8;
    display: inline-block;
}
.top-contents p.txt-center {
    text-align: center;
}

.top-contents .txt-visitors {
    margin-bottom: 70px;
}
.top-contents .txt-visitors p {
    color: #525252;
    text-align: center;
    font-size: 16px;
}
.top-contents .txt-visitors p.ttl {
    font-size: 23px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 1px;
}
.top-contents .txt-visitors p.ttl span {
    font-size: 42px;
    color: #b12d49;
    padding: 0 10px;
    letter-spacing: 0;
}

.top-contents .txt-visitors p.ttl2 span {
    font-size: 30px;
	font-weight: bold;
    color: #b12d49;
    padding: 0 10px;
    letter-spacing: 0;
	line-height: 42px;
}

.top-contents .txt-visitors p.ttl span.color-blue {
    color: #0578ba;
}
.top-contents .txt-visitors p.ttl span.color-green {
    color: #30ad39;
}
.top-contents .txt-visitors p.ttl span.color-orange {
    color: #f7950a;
}
.top-contents .txt-visitors p.ttl span.color-red {
    color: #d90e22;
}
.top-contents .txt-visitors p.ttl span.color-pink {
    color: #b12d49;
}
.top-contents .txt-visitors p.ttl span.color-black {
    color: #333333;
}

@media only screen and (max-width: 736px) {
	.top-contents {
        margin-top: 30px;
    }
	.top-contents h2 {
        font-size: 22px;
    }
    .top-contents .txt-visitors {
        margin-bottom: 40px;
    }
    .top-contents .txt-visitors p {
        font-size: 14px;
    }
    .top-contents .txt-visitors p.ttl {
        font-size: 18px;
    }
    .top-contents .txt-visitors p.ttl span {
        font-size: 30px;
        padding: 0 6px;
    }

    .top-contents .txt-visitors p.ttl span.color-blue,
    .top-contents .txt-visitors p.ttl span.color-green,
    .top-contents .txt-visitors p.ttl span.color-orange,
    .top-contents .txt-visitors p.ttl span.color-red,
    .top-contents .txt-visitors p.ttl span.color-pink,
    .top-contents .txt-visitors p.ttl span.color-black {
        display: block;
        margin-top: 10px;
    }

}

.top-contents .mod-schedule {
    margin-top: 10px;
    margin-bottom: 50px;
}
.top-contents .mod-schedule .mod-schedule__unit p {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #2f2f2f;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 {
    padding: 0 30px;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table {
    width: 100%;
    border: none;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th,
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td {
    border: 1px solid #77b6f6;
    font-size: 15px;
    text-align: center;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th {
    color: #2660cb;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td {
    height: 50px;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th:first-child,
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td:first-child {
    border: 1px solid #dbbfd4;
    background: #eee0eb;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th:first-child {
    color: #de2768;
    background: #f0d3e9;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th:last-child,
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td:last-child {
    border: 1px solid #6385c4;
    background: #becfee;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table th:last-child {
    color: #ffffff;
    background: #6385c4;
}
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td .mod-schedule__day__date,
.top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 table td .mod-schedule__day__label {
    line-height: 1.4;
}

@media only screen and (max-width: 736px) {
    .top-contents .mod-schedule {
        margin-bottom: 0;
    }
    .top-contents .mod-schedule .mod-schedule__unit p {
        font-size: 18px;
        margin-bottom: 5px;
    }
    .top-contents .mod-schedule .mod-schedule__unit .acms-col-md-12 {
        padding: 0 4.68%;
        margin-bottom: 30px;
    }
}

.top-contents .btn-more {
    margin: 0 auto 60px;
    text-align: center;
}
.top-contents .btn-more a {
    display: inline-block;
    font-size: 20px;
    font-weight: bold;
    color: #1765ad;
    border: 3px solid;
    border-image: linear-gradient(90deg, #1765ad 33%, #0798ca 66%);
    border-image-slice: 1;
    padding: 6px 15px;
    text-decoration: none !important;
    transition: 0.3s;
}
.top-contents .btn-more a:hover {
    opacity: 0.5;
}

@media only screen and (max-width: 736px) {
    .top-contents .btn-more a {
        font-size: 16px;
    }
}



.top-contents .border-box {
    padding: 30px 40px;
    margin-bottom: 60px;
    border: solid 3px #0798CA;
    border-radius: 6px;
}
.top-contents .border-box ul {

}
.top-contents .border-box ul li {
    font-size: 1.4em;
    font-weight: bold;
    position: relative;
    padding-left: 15px;
}
.top-contents .border-box ul li::before {
    content: "";
    position: absolute;
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 50px;
    background: #1765ad;
    left: 0;
    top: 13px;
}

@media only screen and (max-width: 736px) {
    .top-contents .border-box {
        padding: 20px;
        margin: 0 4.68% 30px;
    }
    .top-contents .border-box ul li {
        font-size: 1.2em;
    }
    .top-contents .border-box ul li::before {
        top: 10px;
    }
}



.info-img {
    margin: 30px auto 60px;
    text-align: center;
}


@media only screen and (max-width: 736px) {
    .info-img {
        margin: 20px auto 40px;
    }
}



.info_block {
	padding: 30px 4.68% 100px;
}
.info_block p img {
	margin: 0 auto;
}
.info_block p + p {
  margin-top: 50px;
}

@media only screen and (max-width: 736px) {
   .info_block {
		padding: 30px 4.68% 50px;
	}
}



/*bouken_bnr_block
----------------------------------------*/
.bouken_bnr_block {
	padding: 30px 0 10px;
	width: 670px;
	margin: 0 auto;
}

.bouken_bnr_block .col2_block > * {
  width: 45.6%;
  float: left;
  margin-left: 20px;
  margin-bottom: 20px;
  *display: inline;
  *zoom: 1;
}




@media only screen and (max-width: 736px) {
	.bouken_bnr_block  {
		padding: 30px 0;
		width: 94%;
	}
	.bouken_bnr_block .col2_block > * {
	  width: 76%;
	  float: inherit;
	  margin-left: 0;
	  margin-bottom: 0;
	  *display: inline;
	  *zoom: 1;
	}

	.bouken_bnr_block .col2_block .col_box  {
		margin: 0 auto 20px;
	}

	.bouken_bnr_block .col2_block .col_box:last-child  {
		margin-bottom: 0 auto;
	}

}






