@charset "UTF-8";
body {
	overflow: hidden;
	background: #1ab4d6;
}
img {
	display: block;
	max-width: 100%;
	width: 100%;
}
.flex {
	display: flex;
}
.flex.wrap {
	flex-wrap: wrap;
}

section.fv {
    position: relative;
}
.logo {
    width: 10em;
    background: #fff;
    position: absolute;
    padding: 2em;
    padding-bottom: 3.2em;
    box-sizing: border-box;
    border-radius: 0 0 5em 5em;
    left: calc(50% + -23%);
    transform: translateX(-50%);
}
.logo a {
    transition: 0.2s transform;
    display: block;
}
.logo a:hover {
    transform: scale(1.1);
}

.main {
	background: url(../img/main_bg.webp) repeat center/120em;
	padding: 2em 0;
}
.link {
	width: 45%;
	margin: 0 auto;
}
.link a {
    filter: drop-shadow(8px 8px 8px rgba(0,0,0,0.2));
	background: no-repeat center/contain;
	display: block;
}
.link a img {
	opacity: 1;
	transition: 0.2s opacity;
}
.link a:hover img {
	opacity: 0;
}
a.pop01:hover {
	background-image: url(../img/pop01_hv.webp);
}
a.pop02:hover {
	background-image: url(../img/pop02_hv.webp);
}
a.pop03:hover {
	background-image: url(../img/pop03_hv.webp);
}
a.link01:hover {
	background-image: url(../img/link01_hv.webp);
}

ul.pop-link.flex {
    gap: 3.5em;
    margin: 0 auto;
    align-items: center;
    justify-content: center;
}
ul.pop-link.flex li {
    width: calc(100%/3 - 2.5em);
}
.yoyaku {
    width: 98%;
    margin: 5em auto;
}

.main .dec {
	width: 45%;
	margin: 0 auto;
}

footer {
	background: url(../img/footer_bg.webp) no-repeat center top/cover;
	padding: 10em 0 2em;
	margin-top: -12em;
}
footer .content {
    width: 62%;
    margin: 0 auto;
    position: relative;
}
footer .content .tel {
    position: absolute;
    width: 23%;
    left: calc(50% + 18.5%);
    transform: translateX(-50%);
    top: 34.5%;
}
footer .content .tel a {
    display: block;
	transition: 0.2s transform;
}
footer .content .tel a:hover {
	transform: scale(1.03)
}



.remodal-overlay {
    background: #eb6d94;
}
.remodal.col1 {
    width: 100%;
}
.remodal.col2 {
	max-width: 40em;
}
.remodal-content img {
    width: auto;
    margin: 0 auto;
    border-radius: 1.5em;
}
.remodal-content.border img {
	border: 0.375em solid #fff;
	box-sizing: border-box;
}
.remodal-content {
    padding: 0 3.75em;
}
.remodal{
    position: relative;
}
.remodal-close {
    top: 0;
    right: 0;
    background: url(../img/close_icon.webp) no-repeat center/contain;
    width: 2.875em;
    height: 2.875em;
    font-size: 1em;
    position: fixed;
}
.remodal-close:before {
	display: none;
}
@media (max-width: 1920px){
	html>body {
		font-size: 0.833vw;
	}
}
@media (max-width: 750px){
	html>body {
		font-size: 2.133vw;
	}
	.pc {
		display: none!important;
	}
	.sp {
		display: block;
	}
	.logo {
	    width: 11em;
	    left: calc(50% + 0.6em);
	    background: no-repeat;
	    padding: 1.7em;
	}
	.main {
	    padding: 1em 0;
	    background: url(../img/main_bg_sp.webp) repeat center / 100%;
	}
	.link {
    width: 90%;
}
ul.pop-link.flex {
    gap: 0 3.5em;
}
ul.pop-link.flex li {
    width: calc(100% / 2 - 1.75em);
}
.yoyaku {
    width: 100%;
    margin: 5em auto 2em;
    position: relative;
    /* padding-top: 11.125em; */
    /* background: url(../img/link01_bg_sp.webp) no-repeat center top/contain; */
}
.yoyaku .link01.sp {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 3em;
    width: 85%;
}
a.pop01:hover {
	background-image: url(../img/pop01_hv_sp.webp);
}
a.pop02:hover {
	background-image: url(../img/pop02_hv_sp.webp);
}
a.pop03:hover {
	background-image: url(../img/pop03_hv_sp.webp);
}
a.link01:hover {
	background-image: url(../img/link01_hv_sp.webp?set02);
}
.main .dec {
    width: 100%;
}
footer .content {
    width: 100%;
}
footer {
	background: url(../img/footer_bg_sp.webp) no-repeat center top/cover;
	padding: 8.75em 0 1.5625em;
	margin-top: -8em;
}
footer .content .tel {
    width: 80%;
    left: calc(50% - 2%);
    top: 45%;
}
.float {
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
	width: 4.875em;
}

	
.remodal.col1 {
	width: 95%;
	margin: 0 auto;
}
.remodal.col2 {
    max-width: 88%;
}
.remodal-content {
    padding: 3.75em 0;
}
.remodal.col1 .remodal-content {
   overflow: scroll;
   margin-right: -5%;
}
.remodal.col1 .remodal-content img {
    min-width: 180%;
    margin-right: 5%;
}

}
@media (min-width: 751px){
	.pc {
		display: block;
	}
	.sp {
		display: none!important;
	}
}

