@charset "UTF-8";


body{
	padding: 0;
	margin: 0;
	width: 100%
}

button{
	appearance: none;
	border: none;
    background: none;
}

img{
	width: 100%;
	display: block;
}

ul{
	padding: 0;
}

li{
	padding: 0;
	list-style: none;
}

.mailto{
	position: absolute
}

.reserve{
	position: absolute
}

.wrapper{
	width:100%;
	max-width: 768px;
	margin-left:auto;
	margin-right:auto;
	position: relative;
}

.mailto{
	position: absolute;
    width: 91.733%;
    left: 50%;
    transform: translate(-50%, 0px);
    top:90%;
}

.section1,
.section2,
.section3,
.section4{
	position:relative;
}
.section1{
	padding-bottom: 22%;
    padding-top: 4%;
}

.section1-icon{
	width: 92%;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-49.5%);
	cursor: pointer;
}

.section3{
	width: 97.6%;
    left: 2.4%;
}

.section4{
	overflow: hidden;
	margin-bottom:min(11.4vw,87px);
}

.slide-area{
	width: 100%;
	margin-left: -28.4%;
}

.slide-list{
	width: 450vw;
    position: absolute;
    bottom: 11.4%;
	margin: 0;
	transition: transform 0.3s ease-out;
}

.slide-list.notransition{
	transition: none;
}

.arrow-area{
	width: 63%;
    position: absolute;
    left: 50%;
    top: 67.7%;
    transform: translateX(-50%);
}

.arrow-left,
.arrow-right{
	width: 14.4%;
	position: absolute;
	top: 0;
	cursor: pointer;
}

.arrow-left{
	left: -2%;
}

.arrow-right{
	right: -2.9%;
}

.clearfix{
	zoom: 1;
}

.slide-list-item{
	width: min(46.2vw,355px);
	float: left;
	margin-right:min(9.8vw,75px);
}

.section5{
	position: relative;
	padding-bottom:min(4.4vw,33px);
	margin-bottom: 4%;
}

.section5>img{
	margin-bottom: -8%;
}

.section5 .arrow{
	width: 88%;
    position: absolute;
    left: 50%;
    top: -15.3%;
    transform: translateX(-50%);
    z-index: -1;
	overflow: hidden;
}

.section5 .arrow .mask{
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	position: absolute;
	background-color: #fff;
	
}

.section5-pic1{
	width: 92%;
    left: 6%;
    position: relative;
	margin-bottom:min(5vw,38px);
}

.section5-pic1 .pic-bg{
	width: 82.7%;
    position: absolute;
    right: -2.3%;
    top: 7%;
    z-index: -1;
	mix-blend-mode: multiply;
}

.section5-pic2{
	width: 92.6%;
	left: 3.6%;
    position: relative;
}

.section5-pic2 .pic-bg{
	width: 87.7%;
    position: absolute;
    left: -3.8%;
    top: 26%;
    z-index: -1;
	mix-blend-mode: multiply;
}

.section6{
	width: 95%;
    margin: 0 auto;
	padding-bottom:min(6.6vw,50px);
	padding-bottom: min(5vw, 34px);
}

.section7{
	position: relative;
	margin-bottom:min(10vw,77px);
	margin-bottom: min(5vw, 39px);
}

.section7-pic1{
	width: 77%;
    margin: 0 auto;
	/* margin-bottom:min(2.3vw,17px); */
}

.section7-link{
	width: 92%;
    margin: 0 auto;
    padding: 0;
}

.map-bg{
	width: 100%;
    position: absolute;
    left: 50%;
    top: -116.3%;
    transform: translateX(-50%);
    z-index: -1;
	padding-bottom: 42%;
}

.map{
    width: 100%;
    margin: 0 auto;
    position: relative;
}

.map a{
	text-decoration: none;
}

.map_kodaira{
    position: absolute;
    width: 22.4%;
    top: 20.28%;
    left: 3.29%;
}
.map_mitaka2{
    position: absolute;
    width: 23.46%;
    top: 32.19%;
    left: 1.26%;
}
.map_mitaka1{
    position: absolute;
    width: 23.2%;
    top: 40.4%;
    left: 0.78%;
}
.map_syakuji{
    position: absolute;
    width: 18.13%;
    top: 22.46%;
    left: 33.26%;
}
.map_hamadayama{
    position: absolute;
    width: 12.26%;
    top: 36.02%;
    left: 37.46%;
}
.map_okura{
    position: absolute;
    width: 18.4%;
    top: 50.5%;
    left: 40.7%;
}
.map_seta{
    position: absolute;
    width: 23.2%;
    top: 57.88%;
    left: 17.46%;
}
.map_nishiarai{
    position: absolute;
    width: 18.93%;
    top: 10.92%;
    left: 71.72%;
}
.map_oji{
    position: absolute;
    width: 16.53%;
    top: 16.8%;
    left: 61.76%;
}
.map_kinshicho{
    position: absolute;
    width: 9.86%;
    top: 28.66%;
    left: 73.14%;
}
.map_toyosu{
    position: absolute;
    width: 20.26%;
    top: 49.72%;
    left: 71.92%;
}
.map_kamata{
    position: absolute;
    width: 22.93%;
    top: 77.04%;
    left: 54.56%;
}

.reserve{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 91.733%;
	top: 20.5%;
}
.inner{
	position: relative;
}

.btn-acc{
	display: block;
	width: 91.733%;
	color: #2F3099;
	cursor: pointer;
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0px);
	top: 98%;
}
.acc{
	height: 0;
	overflow: hidden;
	transition: height .6s ease;
}

.acc.open{
	transition: none;
}
.acc-inner{
	/* padding: min(2.604vw,20px) 5%; */
	position: relative;
}
.acc-text{
	font-size: min(2.604vw,20px);
	margin: 0;
}

.btn-copy{
	position: absolute;
	color: #fff;
	cursor: pointer;
	border-radius: min(0.651vw,5px);
	overflow: hidden;
	display: block;
	margin: min(2.604vw,20px) auto;
	padding: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 91.733%;
}

.btn-copy.address{
	top: 12%;
}

.btn-copy.text{
	top: 87%;
}

.btn-copy.copyd .btn-wrapper.copyd{
	top: 0%;
	left: 0;
}

.btn-wrapper{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 2.5%;
	padding: 3.5% 0;
	background-color: #648AEB;
	font-size: min(3.6458vw,28px);
	height: min(5.2083vw,40px);
}

.btn-wrapper.copyd{
	position: absolute;
	top: 100%;
	left: 0;
	background-color: #16E582;
}

.btn-wrapper::before{
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - min(1.95vw,15px));
	height: calc(100% - min(1.95vw,15px));
	border: dashed min(0.26vw,2px) #fff;
	border-radius:  min(0.26vw,2px);
}

.btn-icon{
	width: 5%;
	display: block;
}

.pagetop{
	width: 12%;
    margin: 0 auto;
	/* margin-bottom:min(15vw,115px) ; */
    cursor: pointer;
}

.fix-link{
	width:min(15%,115px);
	position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
	pointer-events: none;
	cursor: pointer;
}

.fix-link.show{
	pointer-events:all;
}

.fix-link img{
	transition: transform 0.5s ease-out;
	transform: translateX(100%);
}

.fix-link.show img{
	transform: translateX(0);
}

.line-area{
	width: 91%;
	margin: 0 auto min(7vw,69px);
}

.line-text{
	width: 91%;
    margin: 0 auto 0.8em;
}

.line-btn{
	width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 768px){
	.pagetop{
		width: 19%;
	}
}