@charset "utf-8";

/* トップページ */

/* メインスライダー
---------------------------------------------------------------------------*/
/* スライダー */
.block-topsl {
	background: #333333;
	position: relative;
	height: 100vh;
	height: calc(100vh - 90px);
	min-height: 500px;
	overflow: hidden;
}
div.indexTopWrap::after {
	content: "";
	width: 100%;
	height: 70%;
	left: 0;
	bottom: 0;
	background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.25));
	position: absolute;
	z-index: 19;
}
.lst-topsl,
.lst-topsl li span {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.lst-topsl li span {
	opacity: 0;
	transition: opacity 1.0s ease;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.lst-topsl li.on {
}
.lst-topsl li.mv-01 span {
	background-image: url(../img/top/mv-01.jpg);
}
.lst-topsl li.mv-02 span {
	background-image: url(../img/top/mv-02.jpg);
}
.lst-topsl li.mv-03 span {
	background-image: url(../img/top/mv-03.jpg);
}
.lst-topsl li.mv-04 span {
	background-image: url(../img/top/mv-04.jpg);
}
.lst-topsl li.mv-05 span {
	background-image: url(../img/top/mv-05.jpg);
}
.lst-topsl li.mv-06 span {
	background-image: url(../img/top/mv-06.jpg);
}

.lst-topsl li.mv-01.on span {
	animation: sld 60s ease-out 0s infinite;
}
.lst-topsl li.mv-02.on span {
	animation: sld 60s ease-out 10s infinite;
}
.lst-topsl li.mv-03.on span {
	animation: sld 60s ease-out 20s infinite;
}
.lst-topsl li.mv-04.on span {
	animation: sld 60s ease-out 30s infinite;
}
.lst-topsl li.mv-05.on span {
	animation: sld 60s ease-out 40s infinite;
}
.lst-topsl li.mv-06.on span {
	animation: sld 60s ease-out 50s infinite;
}

@keyframes sld{
    0% {opacity: 0; transform: scale(1.2);}
    8.4% {opacity: 1;}
    16.6% {opacity: 1;}
    25% {opacity: 0;}
    33.3% {opacity: 0; transform: scale(1);}
    41.7% {opacity: 0;}
    83.3% {opacity: 0;}
    100% {opacity: 0;}
}
.block-topsl div.titleBlock {
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 15%;
	bottom: calc(4% + 50px);
	z-index: 20;
}
.block-topsl div.titleBlock p.main {
	color: #FFF;
	font-size: 5.4rem;
	letter-spacing: 0.04em;
}
.block-topsl div.titleBlock p.sub {
	color: #FFF;
	font-size: 1.5rem;
}
.btn-scrl-topsl {
	position: absolute;
	width: 50px;
	height: 60px;
	bottom: 150px;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 20;
}
.btn-scrl-topsl a {
	position: relative;
}
.tx-scrl-topsl {
	margin-bottom: 10px;
}
.arw-scrl-topsl {
	position: relative;
	animation: scrollBar 2s ease infinite;

}
.block-topsl span.load {
	width: 30px;
	height: 30px;
	border: 4px solid rgba(255,255,255,0);
	border-top-color: rgba(255,255,255,0.3);
	border-radius: 50%;
	animation: spinLoad 0.7s linear 0s infinite;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	margin: auto;
	display: block;
}


@keyframes spinLoad {
    0% {transform: translateY(-20px) rotate(0deg);}
    100% {transform: translateY(-20px) rotate(360deg);}
}
@keyframes scrollBar {
    0% {transform: translateY(0); opacity: 1;}
    50% {transform: translateY(-5px); opacity: 0.6;}
    100% {transform: translateY(0); opacity: 1;}
}


.tx-topsl {
	position: absolute;
	top: 23vh;
	z-index: 99999;
	opacity: 0;
}
.logo-topsl {
}
.catch-topsl {
	padding-left: 10px;
	color: #FFFFFF;
	font-size: .24rem;
}
.lst-topsl li.mv-01.on .catch-topsl {
	text-shadow: 0px 0px 9px #0F1E5C,
		2px 2px 7px #0F1E5C,
		2px -2px 7px #0F1E5C,
		-2px 2px 7px #0F1E5C,
		-2px -2px 7px #0F1E5C;
}
.lst-topsl li.mv-02.on .catch-topsl {
	text-shadow: 0px 0px 9px #0050A5,
		2px 2px 7px #0050A5,
		2px -2px 7px #0050A5,
		-2px 2px 7px #0050A5,
		-2px -2px 7px #0050A5;
}
.lst-topsl li.mv-03.on .catch-topsl {
	text-shadow: 0px 0px 9px #206E44,
		2px 2px 7px #206E44,
		2px -2px 7px #206E44,
		-2px 2px 7px #206E44,
		-2px -2px 7px #206E44;
}
.lst-topsl li.mv-04.on .catch-topsl {
	text-shadow: 0px 0px 9px #002196,
		2px 2px 7px #002196,
		2px -2px 7px #002196,
		-2px 2px 7px #002196,
		-2px -2px 7px #002196;
}
.lst-topsl li.mv-05.on .catch-topsl {
	text-shadow: 0px 0px 9px #45658C,
		2px 2px 7px #45658C,
		2px -2px 7px #45658C,
		-2px 2px 7px #45658C,
		-2px -2px 7px #45658C;
}
.lst-topsl li.mv-06.on .catch-topsl {
	text-shadow: 0px 0px 9px #A16785,
		2px 2px 7px #A16785,
		2px -2px 7px #A16785,
		-2px 2px 7px #A16785,
		-2px -2px 7px #A16785;
}
.lst-topsl li.mv-01.on .tx-topsl {
	left: calc(50% + 190px);
	animation: sldtx 60s ease-out 0s infinite;
}
.lst-topsl li.mv-02.on .tx-topsl {
	left: calc(50% + 190px);
	animation: sldtx 60s ease-out 10s infinite;
}
.lst-topsl li.mv-03.on .tx-topsl {
	left: calc(50% - 670px);
	animation: sldtx 60s ease-out 20s infinite;
}
.lst-topsl li.mv-04.on .tx-topsl {
	left: calc(50% - 670px);
	animation: sldtx 60s ease-out 30s infinite;
}
.lst-topsl li.mv-05.on .tx-topsl {
	left: calc(50% - 670px);
	animation: sldtx 60s ease-out 40s infinite;
}
.lst-topsl li.mv-06.on .tx-topsl {
	left: calc(50% + 190px);
	animation: sldtx 60s ease-out 50s infinite;
}
@keyframes sldtx{
    0% {opacity: 0;}
    8.4% {opacity: 1;}
    16.6% {opacity: 1;}
    25% {opacity: 0;}
    33.3% {opacity: 0;}
    41.7% {opacity: 0;}
    83.3% {opacity: 0;}
    100% {opacity: 0;}
}

@media screen and (max-width: 1350px){
	.lst-topsl li.mv-01.on .tx-topsl,
	.lst-topsl li.mv-02.on .tx-topsl,
	.lst-topsl li.mv-06.on .tx-topsl {
		left: calc(50% + 8vw);
	}
	.lst-topsl li.mv-03.on .tx-topsl,
	.lst-topsl li.mv-04.on .tx-topsl,
	.lst-topsl li.mv-05.on .tx-topsl {
		left: calc(50% - 49vw);
	}
}
@media screen and (max-width: 768px){
	.block-topsl {
		height: calc(100vh - 26vw);
	}
	.lst-topsl li.mv-01 span {
		background-image: url(../img/top/mv-01-sp.jpg);
	}
	.lst-topsl li.mv-02 span {
		background-image: url(../img/top/mv-02-sp.jpg);
	}
	.lst-topsl li.mv-03 span {
		background-image: url(../img/top/mv-03-sp.jpg);
	}
	.lst-topsl li.mv-04 span {
		background-image: url(../img/top/mv-04-sp.jpg);
	}
	.lst-topsl li.mv-05 span {
		background-image: url(../img/top/mv-05-sp.jpg);
	}
	.lst-topsl li.mv-06 span {
		background-image: url(../img/top/mv-06-sp.jpg);
	}

	.lst-topsl li.mv-01.on span {
		animation: sldsp 60s ease-out 0s infinite;
	}
	.lst-topsl li.mv-02.on span {
		animation: sldsp 60s ease-out 10s infinite;
	}
	.lst-topsl li.mv-03.on span {
		animation: sldsp 60s ease-out 20s infinite;
	}
	.lst-topsl li.mv-04.on span {
		animation: sldsp 60s ease-out 30s infinite;
	}
	.lst-topsl li.mv-05.on span {
		animation: sldsp 60s ease-out 40s infinite;
	}
	.lst-topsl li.mv-06.on span {
		animation: sldsp 60s ease-out 50s infinite;
	}

	@keyframes sldsp{
	    0% {opacity: 0; transform: scale(1.2);}
	    7% {opacity: 1;}
	    38% {opacity: 1; transform: scale(1);}
	    42% {opacity: 0;}
	    100% {opacity: 0; transform: scale(1);}
	}

	.tx-topsl {
		width: 80%;
		top: 10vh;
		left: 10%!important;
		right: 10%!important;
	}
	.catch-topsl {
		margin-top: 3vw;
		font-size: 4.3vw;
	}

	.btn-scrl-topsl {
		bottom: 25vw;
	}
}




/* NEWS & TOPICS
---------------------------------------------------------------------------*/
.block-topic {
	margin-top: 0;
}
.block-topic .inner-base {
	max-width: 1100px;
}
.box-topic {
	position: relative;
}
/* タブ */
.tabs-topic {
	position: absolute;
	width: 100%;
	top: -40px;
	left: 0;
	z-index: 50;
}
.tabs-topic li {
	font-size: .18rem;
}
.tabs-topic li a {
	width: 212px;
	height: 50px;
	background-color: #FFFFFF;
}
@media screen and (max-width: 768px){
	.block-topic {
		margin-top: 0;
	}
	.tabs-topic {
		top: -19vw;
	}
	.tabs-topic li {
		margin: 1vw;
		font-size: 4.2vw;
		letter-spacing: -.08em;
	}
	.tabs-topic li a {
		width: 29vw;
		height: 7vw;
	}
}

/* 詳細 */
.detail-topic {
	position: absolute;
	top: 0px;
	margin-top: 70px;
	padding: 30px 35px 25px;
	opacity: 0;
	z-index: 5
}
.lst-detail-topic li {
	width: 239px;
}
.lst-detail-topic li + li {
	margin-left: 26px;
}
.fig-topic {
	margin-bottom: 15px;
}
.fig-topic img {
	width: 100%;
	height: 139px;
	object-fit: cover;
	object-position: center;
	font-family: "object-fit: cover; object-position: center;";
}
.icon-topic span {
	display: inline-block;
	margin-bottom: 3px;
	margin-right: 2px;
	padding: 1px 6px;
	border: 1px solid #0050A5;
	font-size: .11rem;
}
.icon-topic {
	line-height: 130%;
	margin-bottom: 8px;
}
.date-topic {
	margin-bottom: 5px;
	font-size: .15rem;
}
.ttl-topic {
	font-size: .15rem;
	color: #000000;
}
@media screen and (max-width: 768px){
	.detail-topic {
		width: 94vw;
		margin: 21vw auto 0;
		padding: 3vw;
	}
	.lst-detail-topic li + li {
		margin-top: 3vw;
		margin-left: 0;
	}
	.fig-topic {
		width: 28vw;
		margin-right: 3vw;
		margin-bottom: 0;
	}
	.fig-topic img  {
		width: 27.5vw;
		height: 20vw;
	}
	.date-topic,
	.ttl-topic {
		font-size: 4vw;
	}
	.tx-topic {
		width: 53vw;
	}
}
/* 切り替え */
.tabs-topic li a.active {
	background-color: #B2CAE4;
	box-shadow: 0px 2px 3px rgba(0, 0, 0, .3);
}
.detail-topic.active {
	position: relative;
	z-index: 10;
	opacity: 1;
}



/* 導入
---------------------------------------------------------------------------*/
.block-intro {
	height: 773px;
	padding-top: 57px;
	background-image: url(../img/top/bg-intro.jpg);
	background-position: center top;
	background-size: cover;
	text-align: center;
}
.ttl-intro {
	margin-bottom: 30px;
}
@media screen and (max-width: 768px){
	.block-intro {
		height: 140vw;
		padding-top: 5vw;
		background-image: url(../img/top/bg-intro-sp.jpg);
		background-size: cover;
	}
	.ttl-intro img {
		width: 77vw;
	}
}
/* カルーセル */
.box-carousel-intro {
	margin-top: 8px;
}
.box-carousel-intro .slick-slide {
	padding: 0 3.5px;
}


/* ナビオス横浜の4つのポイント
---------------------------------------------------------------------------*/
.block-point {
}
/* 導入 */
.box-first-point {
	padding-top: 60px;
	padding-bottom: 70px;
	text-align: center;
}
@media screen and (max-width: 768px){
	.box-first-point {
		padding: 5vw 3vw;
	}
	.box-first-point .hdl-def {
		margin-bottom: 1.5vw;
		font-size: 6.5vw;
	}
}
/* ポイント */
.num-point {
	color: #D2CBB5;
	font-size: .73rem;
}
.num-point span {
	padding-left: 30px;
	font-size: 1.06rem;
}
@media screen and (max-width: 768px){
	.num-point {
		font-size: 12vw;
	}
	.num-point span {
		padding-left: 3vw;
		font-size: 18vw;
	}
}
/* ボタン */
.btn-point {
	margin-top: 45px;
}
.btn-point a {
	width: 250px;
	height: 60px;
}
@media screen and (max-width: 768px){
	.btn-point {
		margin-top: 5vw;
	}
	.slider-point-rooms .btn-point {
		padding-left: 3vw;
		padding-right: 3vw;
	}
	.btn-point a {
		width: 100%;
		height: 12vw;
	}
}


/* ポイントタイトル */
@media screen and (max-width: 768px){
	.box-skew-ttl-sp {
		padding: 0vw 3vw;
	}
	.name-skew {
		width: auto;
		margin-top: 3vw;
		margin-bottom: 0;
		margin-left: 4vw;
		padding-left: 4vw;
		font-size: 6.7vw;
	}
	.name-skew::after {
		width: 1px;
		height: 13vw;
		margin-top: 3vw;
		margin-bottom: 0;
		bottom: calc(50% - 6.5vw);
		background-image: url(../img/cmn/line-name-cols-sp.png);
		background-size: auto 100%;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.lay-skew.lft .tx-lay-skew,
	.lay-skew.rit .tx-lay-skew {
		padding: 3vw;
	}
}
/* point01 -------------------- 客室スライダー */
.slider-point-rooms .inner-base {
	max-width: 1080px;
}
.slick-list {
	overflow: visible;
}

.box-point-rooms {
	display: block;
	width: 100%;
	padding: 0 10px;
}
.items-point-rooms {
	padding: 20px;
	background-color: #FFFFFF;
}

.fig-point-rooms {
	width: 622px;
}
.tx-point-rooms {
	width: 320px;
}

.name-point-rooms {
	margin-bottom: 20px;
	text-align: left;
}
.ja-point-rooms {
	font-size: .22rem;
}
.supple-point-rooms {
	margin-bottom: 20px;
	font-size: .17rem;
}
.desc-point-rooms {
	margin-bottom: 30px;
	font-size: .15rem;
}
.icons-point-rooms {
	margin-bottom: 25px;
}
.icons-point-rooms li + li {
	margin-left: 20px;
}
.btn-point-rooms {
	letter-spacing: 0;
}
@media screen and (max-width: 768px){
	.slider-point-rooms .inner-base {
		padding-left: 0;
		padding-right: 0;
	}
	.box-point-rooms {
		padding: 0 3vw;
	}
	.items-point-rooms {
		padding: 3vw;
	}
	.fig-point-rooms {
		margin-bottom: 3vw;
	}
	.name-point-rooms {
		width: 100%;
		margin-bottom: 1vw;
	}
	.supple-point-rooms {
		margin-bottom: 0;
	}
	.desc-point-rooms,
	.btn-point-rooms {
		width: 100%;
	}
	.supple-point-rooms {
		font-size: 4.5vw;
	}
	.desc-point-rooms {
		margin-top: 1vw;
		margin-bottom: 3vw;
		font-size: 4vw;
	}
	.ja-point-rooms {
		font-size: 5vw;
	}
	.icons-point-rooms {
		margin-bottom: 2vw;
	}
}
/* マウスオーバー */
.fig-point-rooms {
	overflow: hidden;
}
.fig-point-rooms img {
	transition-duration: 0.6s;
}
.items-point-rooms:hover .fig-point-rooms img {
	transform: scale(1.2);
	transition-duration: 0.6s;
}
/* 矢印 */
.slider-point-rooms .slick-prev:before,
.slider-point-rooms .slick-next:before {
	display: none;
}
.slider-point-rooms .slick-prev,
.slider-point-rooms .slick-next {
	width: 53px;
	height: 100px;
	background-repeat: no-repeat;
	z-index: 100;
}
.slider-point-rooms .slick-prev {
	left: -5px;
	background-image: url(../img/top/arw-prev-rooms-point.png);
}
.slider-point-rooms .slick-next {
	right: -5px;
	background-image: url(../img/top/arw-next-rooms-point.png);
}
@media screen and (max-width: 768px){
	.slider-point-rooms .slick-prev,
	.slider-point-rooms .slick-next {
		width: 4.3vw;
		height: 10vw;
		background-size: contain;
	}
	.slider-point-rooms .slick-prev {
		left: 1vw;
	}
	.slider-point-rooms .slick-next {
		right: 1vw;
	}
}
/* ドット */
.slider-point-rooms .slick-dots {
	bottom: -50px;
}
.slider-point-rooms .slick-dots li button {
	width: 9px;
	height: 9px;
	background-color: #CED3E1;
	border-radius: 100%;
}
.slider-point-rooms .slick-dots li.slick-active button {
	background-color: #8591B4;
}
.slider-point-rooms .slick-dots li button:before {
	display: none;
}
@media screen and (max-width: 768px){
	.slider-point-rooms .slick-dots {
		bottom: -3vw;
	}
}

/* point02 -------------------- レストラン */
.box-point02 {
	padding-top: 60px;
	padding-bottom: 60px;
}
.fig-point02 img {
	max-width: 896px;
	width: 100%;
	height: 509px;
}
@media screen and (max-width: 768px){
	.box-point02 {
		padding-top: 5vw;
		padding-bottom: 5vw;
	}
	.fig-point02 img {
		height: auto;
	}
}

/* point03 -------------------- 館内設備 */
.box-point03 {
	color: #FFFFFF;
}
/* タイトル */
.box-point03 .name-skew {
	margin-left: 25px;
	margin-right: 120px;
	margin-bottom: 0;
	color: #FFFFFF;
}
.box-point03 .name-skew::after {
	width: 1px;
	height: 83px;
	left: auto;
	right: -65px;
	bottom: calc(50% - 41.5px);
	background-image: url(../img/cmn/line-name-row.png);
}
.box-point03 .catch-def {
	margin-bottom: 0;
	color: #FFFFFF;
}
@media screen and (max-width: 768px){
	.box-point03 .name-skew {
		margin-left: 4vw;
		margin-right: 0;
		padding-left: 4vw;
	}
	.box-point03 .name-skew::after {
		width: 1px;
		height: 13vw;
		left: 0;
		bottom: calc(50% - 6.5vw);
		background-image: url(../img/cmn/line-name-row-sp.png);
		background-size: auto 100%;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.box-point03 .catch-def {
		width: 100%;
		margin-bottom: 3vw;
	}
	.box-point03 .inner-wide {
		padding-left: 3vw;
		padding-right: 3vw;
	}
}
/* 画像 */
.lst-point03 {
	margin-top: 40px;
	margin-bottom: 30px;
}
.lst-point03 li {
	width: 400px;
	text-align: center;
}
.fig-point03 {
	margin-bottom: 15px;
}
.name-point03 {
	margin-bottom: 5px;
	font-size: .22rem;
}
.ja-name-point03 {
	font-size: .15rem;
}
@media screen and (max-width: 768px){
	.lst-point03 {
		margin-top: 5vw;
		margin-bottom: 0;
	}
	.lst-point03 li + li {
		margin-top: 5vw;
	}
	.name-point03 {
		font-size: 5.8vw;
	}
	.ja-name-point03 {
		font-size: 3.8vw;
	}
}
/* ボタン */
.btn-point03 a {
	background-color: #FFFFFF;
}
.btn-point03 {
	color: #0050A5;
}
.btn-point03 a {
	background-color: #FFFFFF;
	border: 1px solid #0050A5;
}
.btn-point03 a:hover {
	color: #FFFFFF;
	background-color: #0050A5;
	border: 1px solid #FFFFFF;
	opacity: 1;
}
.lst-btn-point03 li + li {
	margin-left: 20px;
}
@media screen and (max-width: 768px){
	.lst-btn-point03 li {
		padding-left: 3vw;
		padding-right: 3vw;
	}
	.lst-btn-point03 li + li {
		margin-left: 0;
		margin-top: 2vw;
	}
}



/* point04 -------------------- アクセス */
/* タイトル */
.box-point04 .name-skew {
	margin-left: 25px;
	margin-right: 120px;
	margin-bottom: 0;
}
.box-point04 .name-skew::after {
	width: 1px;
	height: 57px;
	left: auto;
	right: -65px;
	bottom: calc(50% - 28.5px);
	background-image: url(../img/cmn/line-name-row-blue.png)!important;
}
.box-point04 .catch-def {
	margin-bottom: 0;
}
@media screen and (max-width: 768px){
	.box-point04 .name-skew {
		margin-left: 4vw;
		margin-right: 0;
		padding-left: 4vw;
	}
	.box-point04 .name-skew::after {
		width: 1px;
		height: 13vw;
		left: 0;
		bottom: calc(50% - 6.5vw);
		background-image: url(../img/cmn/line-name-row-sp.png);
		background-size: auto 100%;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.box-point04 .catch-def {
		width: 100%;
		margin-bottom: 3vw;
	}
}
/* マップ */
.map-access {
	margin-bottom: 30px;
}
.map-access img {
	width: 100%;
	height: 440px;
	object-fit: cover;
	object-position: center;
	font-family: "object-fit: cover; object-position: center;";
}
@media screen and (max-width: 768px){
	.map-access {
		margin-bottom: 0;
	}
	.map-access img {
		height: auto;
	}
}
/* ルート */
.lst-route-point04 li {
	position: relative;
	padding-left: 45px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #0050A5;
}
.lst-route-point04 li::before {
	position: absolute;
	left: 0;
	top: calc(50% - 19.5px);
	content: "";
	width: 25px;
	height: 29px;
	background-repeat: no-repeat;
}
.lst-route-point04 li.icon-car::before {
	background-image: url(../img/cmn/icon-car.png);
}
.lst-route-point04 li.icon-train::before {
	background-image: url(../img/cmn/icon-train.png);
}
.lst-route-point04 li.icon-bus::before {
	background-image: url(../img/cmn/icon-bus.png);
}
.lst-route-point04 .lead {
	line-height: 140%;
}
@media screen and (max-width: 768px){
	.lst-route-point04 li {
		padding: 2vw 0 2vw 8vw;
	}
	.lst-route-point04 li::before {
		top: calc(50% - 3.25vw);
		width: 6.5vw;
		height: 6.5vw;
		background-size: contain;
	}
	.lst-route-point04 .lead {
		font-size: 3.8vw;
	}
}


/* おすすめご宿泊プラン
---------------------------------------------------------------------------*/
.block-plan {
	padding-bottom: 0;
	background-image: url(../img/top/bg-plan.png);
	background-position: center top;
	background-repeat: no-repeat;
}
.block-plan .ttl-row.grow {
	text-shadow: 0px 0px 9px #FFFFFF,
		2px 2px 7px #FFFFFF,
		2px -2px 7px #FFFFFF,
		-2px 2px 7px #FFFFFF,
		-2px -2px 7px #FFFFFF;
}
.lst-plan li {
	width: 328px;
}
.lst-plan li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px;
	background-color: #FFFFFF;
}
.fig-plan {
	margin-bottom: 10px;
}
.ttl-plan {
	margin-bottom: 5px;
	font-size: .17rem;
	line-height: 170%;
}
.block-plan .btn-plan {
	margin-top: 40px;
	margin-bottom: 50px;
}
.block-plan .btn-plan a {
	width: 330px;
	height: 76px;
}
@media screen and (max-width: 768px){
	.lst-plan li a {
		display: flex;
		padding: 3vw;
	}
	.lst-plan li + li {
		margin-top: 3vw;
	}
	.fig-plan {
		width: 34vw;
		margin-bottom: 0;
		margin-right: 3vw;
	}
	.ttl-plan {
		width: 50vw;
		margin-bottom: 0;
		font-size: 3.9vw;
		letter-spacing: -.03em;
	}
	.block-plan .btn-plan {
		margin-top: 3vw;
		margin-bottom: 5vw;
	}
	.block-plan .btn-plan a {
		width: 100%;
		height: 12vw;
	}
}
/* スペシャル */
.lst-bana-plan {
	margin-bottom: 50px;
	justify-content: center;
}
#slick-insta .slick-slide img {
	max-width: 200%;
	width: 100%;
}
.box-carousel-insta {
	position: relative;
}
.box-btn-insta {
	position: absolute;
	top: calc(90vw / 120);
	left: calc(50% - 470px);
	width: calc(90vw / 6);
	height: calc(90vw / 6);
	background-color: rgba(0, 80, 165, .9);
	color: #FFFFFF;
	text-align: center;
	box-shadow: 2px 2px 8px rgba(0, 0, 0, .6);
}
.icon-insta {
	margin-bottom: 15px;
}
.ttl-insta {
	margin-bottom: 20px;
}
.box-btn-insta .lead {
	margin-bottom: 20px;
	line-height: 160%;
}
@media screen and (max-width: 768px){
	.lst-bana-plan {
		margin-top: -2vw;
		margin-bottom: 5vw;
	}
	.lst-bana-plan li + li {
		margin-top: 3vw;
	}
	.box-btn-insta {
		left: 3vw;
		top: 3vw;
		width: 47vw;
		height: 47vw;
	}
	.icon-insta,
	.ttl-insta,
	.box-btn-insta .lead {
		margin-bottom: 1.5vw;
	}
}













