@charset "utf-8";
/* CSS Document */
body{
	overflow-x: hidden;
}
.loc03,.loc04{
	position: relative;
}
.loc03::before, .loc04::before{
	content: "";
	width: 85%;
	height:0.5px;
	background-color: #81af2f;
	position: absolute;
	top:0.5em;
	right:0;
}
.title_rl{
	font-family: var(--font-cin);
	font-size: var(--fs-44);
	text-transform: capitalize;
	writing-mode: vertical-rl;
	color:#81af2f;
	margin-left: 0.8em;
}
.title_tb{
	writing-mode: horizontal-tb;
	margin-left: 0;
}
/**/
.loc02{
	text-align: center;
}
.loc02_inner1{
	display: flex;
	grid-column-gap: 5%;
	
}
.loc02_image{
	margin-bottom: 5vh;
}
.loc02 h2{
	font-size: var(--fs-35);
	line-height: 1.5em;
	text-align: center;
	white-space: nowrap;
	padding-left: 10%;
}
.loc02 h2 span,.loc02 p{
	font-size: var(--fs-18);
}

.loc_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 5%;
	padding-left: 15%;
}
.loc_box_top{
	margin-top: -18%;
	margin-bottom: 7.5vh;
}
.loc_box_top2{
	margin-top: -10%;
}
.loc_box_r{
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	column-gap: 5%;
	padding-left: 0;
	padding-right: 15%;
	margin-bottom: 7.5vh;
}
.loc_box_l{
	display: flex;
	align-items: center;
	column-gap: 5%;
	padding-left: 0;
	padding-right: 15%;
}
.h3_title{
	font-size: var(--fs-20);
	margin-bottom: 2.0em;
	position: relative;
}


.h3_title1::before{
	content: "";
    width: clamp(13em, 17vw, 20em);
    aspect-ratio:3/1;
    background-image: url(../images/location/loc_02@2x.webp);
    background-repeat: no-repeat;
    background-position: center top;
	background-size: contain;
    position: absolute;
    top: -2.0em;
    right: -3.2em;
	z-index: 10;
}
.h3_title2::before{
	content: "";
    width: clamp(13em, 17vw, 20em);
    aspect-ratio:3/1;
    background-image: url(../images/location/loc_05@2x.webp);
    background-repeat: no-repeat;
    background-position: center top;
	background-size: contain;
    position: absolute;
    top: -2.0em;
    right: -3.2em;
	z-index: 10;
}
.h3_title3::before{
	content: "";
    width: clamp(13em, 17vw, 20em);
    aspect-ratio:3/1;
    background-image: url(../images/location/loc_12@2x.webp);
    background-repeat: no-repeat;
    background-position: center top;
	background-size: contain;
    position: absolute;
    top: -2.0em;
    right: -3.2em;
	z-index:-1;
}
.loc_text{
	font-size: var(--fs-16);
	padding-right: 1.0em;
}

.right{
	font-size: var(--fs-cap);
	text-align: start;
}

.loc_photo_list{
	display: flex;
}

.content_group{
	position: relative;
}
.content_group::after{
	content: "";
	width: 0.5px;
	height: 100%;
	background-color: #81af2f;
	position: absolute;
	top:0;
	right:0;
}
.loc04{
	padding-bottom: 15vh;
	border-bottom: solid 0.5px #5f5f5f;
}
/**/
.loc_photo_list2{
	display: flex;
	column-gap: 10%;
	margin-bottom: 10vh;
}
.loc05 figure img{
	margin-bottom: 1.0em;
}
.left{
	font-size: var(--fs-20);
}
.left span{
	font-size: var(--fs-16);
}
.left2{
	font-size: var(--fs-16);
}
.left2 span{
	font-size: var(--fs-cap);
}
/**/
.loc06 h2{
	font-family: var(--font-cin);
	font-size:var(--fs-23);
	text-transform: capitalize;
	border-bottom: solid 0.5px #5f5f5f;
	margin-bottom: 2.5em;
}
.loc06 figure{
	margin-bottom: 2.0em;
}
.loc06 .shop{
	font-size: var(--fs-25);
	margin-bottom: 1.0em;
}
.loc06 .shop span{
	font-size:var(--fs-16);
}
.loc06 .loc06_lead{
	font-size:var(--fs-18);
	margin-bottom: 2.0em;
}

.loc06 .guide_h{
	font-size:var(--fs-20);
	border:solid 0.5px #5f5f5f;
	text-align: center;
	margin-bottom: 1.2em;
}
.shop1{
	font-family: var(--font-kakugothic);
	display: grid;
	grid-template-columns: 2fr 0.8fr;
	column-gap: 1.5em;
}
.shop2{
	font-family: var(--font-kakugothic);
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 5%;
}
.shop_list{
	display: flex;
	justify-content: space-between;
}
.shop_list li{
	font-size: var(--fs-16);
	margin-bottom: 0.5em;
}
.shop_list li span{
	font-size: var(--fs-14);
}
.time,.time2{
	display: flex;
	gap:0.8em;
	justify-content: center;
	align-items: center;
}
.loc06 .time li{
	font-size: var(--fs-14);
	font-weight: normal;
}
.loc06 .time .op_cl{
	font-family: "Inter", sans-serif;
	font-size: var(--fs-23);
	font-weight: 600;
}
.loc06 .open{
	font-size: var(--fs-16);
	text-align: center;
	margin-bottom: 1.0em;
}

.time2 li{
	font-size: var(--fs-cap);
	font-weight: normal;
}

.op_cl span{
	font-family: "Inter", sans-serif;
	font-size: var(--fs-18);
	font-weight: 600;
}
.loc06 .shop_cap{
	font-size: var(--fs-cap);
}
.open_inner{
	margin-bottom: 1.0em;
}
.open_inner2{
	display: flex;
	justify-content: space-evenly;
}
.open_inner3{
	display: grid;
	grid-template-columns: 0.5fr 0.5fr;
	grid-template-rows: 1fr;
	column-gap: 1.0em;
	justify-content: space-between;
}
.open_inner3 .time3{
	flex-basis: 40%;
}
.loc06_right{
	padding: 1.2em 1.2em;
	background-color: #e7e7e7;
	white-space: nowrap;
}
/**/

.loc07 .other_list{
	display: flex;
	justify-content: space-between;
	column-gap: 5%;
	align-items: center;
	font-size: var(--fs-16);
	margin-bottom: 8vh;
}
.loc07 .loc07_list1,.loc07 .loc07_list2{
	flex-basis: 47%;
}
/*ここからアクセス*/
.acc01{
	padding-top: 5vh;
}
.acc01 h2{
	font-size: var(--fs-28);
	text-align: center;
	margin-bottom: 3.5em;
}
.acc01 .Sta{
	display: flex;
	gap:2.5em;
	justify-content: center;
	margin-bottom: 10vh;
}
.acc01 .station{
	display: flex;
	justify-content: center;
	align-items: baseline;
	font-size: var(--fs-28);
	text-indent: 0.5em;
	position: relative
}
.acc01 .station2{
	display: flex;
	justify-content: center;
	align-items: baseline;
	font-size: var(--fs-18);
	text-indent: 0.5em;
	position: relative;
	white-space: nowrap;
}
.acc01 .station3{
	position: relative
}
.acc01 .station::after{
	content:"";
	width: 100%;
	height:0.5px;
	background-color: #5f5f5f;
	position: absolute;
	bottom:0;
	left:50%;
	transform: translateX(-50%)
}

.acc01 .station::before,.acc01 .station2::before{
	content: "";
	width: 1.6em;
	height:1.6em;
	background-image: url("../images/access/ac_01@2x.webp");
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}
.acc01 .station3::after{
	content:"";
	width: 0.5px;
	height:2.5em;
	background-color: #5f5f5f;
	position: absolute;
	bottom:0;
	left:-1.25em;
}

.acc01 .station .sta{
	font-size: var(--fs-35);
}
.acc01 .station2 .sta2{
	font-size: var(--fs-28);
}
.acc01 .station .min{
	font-size: var(--fs-56);
	font-weight: 800;
	color: #911d22;
}
.acc01 .station2 .min2{
	font-size: var(--fs-44);
	font-weight: 800;
	color: #911d22;
}
.acc01 .rosen{
	margin-bottom: 10vh;
}
.acc01 h3{
	font-size: var(--fs-18);
	margin-bottom:0.2em;
	text-indent: 0.5em;
}

.acc01 .sta4_container{
	display: flex;
}
.acc01 .sta4_box{
	width: 20%;
	aspect-ratio:383/256;
	position: relative;
}
.acc01 .sta_photo{
	position: absolute;
	top:0;
	left:0;
	filter: brightness(0.3);
}
.acc01 .station4{
	display: flex;
	white-space: nowrap;
    align-items: baseline;
	position: absolute;
	top:50%;
	left:50%;
	transform: translate(-50%,-50%);
	color:#ffffff;
	font-size:var(--fs-16);
	z-index: 1;
}
.acc01 .station4 .sta4{
	font-size:var(--fs-30);
}
.acc01 .station4 .min4{
	font-size:var(--fs-35);
	font-weight: 500;
}

@media (max-width: 1024px) {
	
.h3_title1::before {
    right: -6.0em;	
	}
.h3_title2::before {
    right: -8.2em;	
	}

.loc_box_top2 {
    margin-bottom: 7.5vh;
}	
.loc_photo_list2 {
    display: flex;
    column-gap: 5%;
    margin-bottom: 2.0em;
	}
.loc07 .other_list {
    display: flex;
    column-gap: 2.0em;
    align-items: center;
    margin-bottom: 8vh;
    flex-direction: column;
}	
.acc01 .station2 {
    display: flex;
    flex-direction: column;	
	}
.acc01 .station2::before {
	    position: absolute;
    top: 0.5em;
    left: -1.5em;
	}
.acc01 .station4 {
    font-size: var(--fs-14);
}
.acc01 .station4 .sta4 {
    font-size: var(--fs-23);
}	
.acc01 .station4 .min4 {
    font-size: var(--fs-28);
}	
}


@media (max-width: 768px) {
	    .h3_title1::before {
        right: -3em;
			z-index: -1;
    }
    .h3_title2::before {
        right: -6.2em;
	}
.loc02_inner1 {
    display: block;
}
.loc02 h2 {
    padding-left: 0;
	margin-bottom: 1.0em;
	}
	.loc02_lead{
		text-align: start;
	}	
/**/
	.loc_photo_list {
    flex-direction: column;
		row-gap: 1.0em;
}
/**/
	.shop1,.shop2 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 0.6fr;
    row-gap: 1.5em;
	}
	
/**/
.loc07 .other_list {
    flex-direction: column;
}	
	.loc_photo_list2{
		display: flex;
		flex-direction: row;
		column-gap: 1.5em;
		margin-bottom: 5vh;
	}	
	.loc07{
		margin-bottom: 15vh;
	}	
/**/
.acc01 h2 {
    font-size: var(--fs-25);
	}
	
	
.acc01 .station4 {
    font-size: var(--fs-cap);	
	}
.acc01 .station4 .sta4 {
    font-size: var(--fs-16);
}	
.acc01 .station4 .min4 {
    font-size: var(--fs-25);
}	
}
@media (max-width: 500px) {
.loc02 h2 {
    font-size: var(--fs-25);
	}
.loc02 h2 span, .loc02 p {
    font-size: var(--fs-16);
}

.title_rl {
    font-size: var(--fs-30);
	margin-left: 0em;
	}
    .h3_title1::before{
        right: -2.0em;
	}
.h3_title3::before {
    right: -1.0em;
	}
.h3_title2::before {
    right: -2.0em;
	}
.loc_box_top {
    margin-top: -25%;
	}
    .loc_photo_list {
        flex-direction: row;
	}
.loc_text {
    padding-right: 0;
	}
.loc_box {
    flex-direction: column;	
    row-gap:1.0em;
	margin-bottom: 5vh;
	}
	.loc_photo_list_sch{
		flex-direction: column;
		row-gap: 1.2em;
	}
.loc05 figure img {
    margin-bottom: 0;
	}
	.loc_photo_list_sch2{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		row-gap:1.2em;
	}
.left2 {
    font-size: var(--fs-16);
    line-height: 1;
	}
.loc06 .loc06_lead {
    font-size: var(--fs-16);
}
.shop_list {
    display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr;
}	
.open_inner3 {
    grid-template-columns: 1fr;
}
.loc07 .other_list {
    font-size: var(--fs-14);
	}
/**/

    .acc01 h2 {
        font-size: var(--fs-20);
    }
.acc01 .Sta {
    display: flex;
    gap: 0;
    margin-bottom: 10vh;
    flex-direction: column;
	}
.acc01 .station3::after {
    content: none;
	}
.acc01 .station,.acc01 .station2 {
    display: flex;
    justify-content: center;
    align-items: center;
   text-indent: 0;
    position: relative;
    flex-direction: column;
	margin-bottom: 0.6em;
	}
.acc01 .station::before{
    position: absolute;
    top: 0;
    left: 0.5em;
	}
    .acc01 .station2::before {
        position: absolute;
        top: 0.2em;
        left: 2em;
	}
    .acc01 .station4 {
        font-size: var(--fs-23);
    }
.acc01 .sta4_container {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.acc01 .sta4_box {
    width: 50%;
	}

.acc01 .station4 {
    font-size: var(--fs-18);
}

.acc01 .station4 .sta4 {
        font-size: var(--fs-25);
    }
    .acc01 .station4 .min4 {
        font-size: var(--fs-30);
    }
}
