@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* Noto Sans JP: Thin 100, ExtraLight 200, Light 300, Regular 400, Medium 500, SemiBold 600, Bold 700, ExtraBold 800, Black 900 */

/* common start */
:root{
    --site-max-width:100%;
    --site-main-width:100%;
    --site-division:375;
	--site-font-family-Noto-Sans-JP:'Noto Sans JP', sans-serif;
    --site-font-size-ratio:calc(100vw / var(--site-division));
}
*{
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
    list-style: none;
}
::before,
::after{
    box-sizing: border-box;
}
input, textarea, select {
	outline: none;
}
textarea {
	resize: none;
}
fieldset{
    border: none;
}
img{
	max-width: 100%;
	vertical-align: top;
}
/* common end */


/* -------------------------------base(mobile)↓-------------------------------------- */
body{
	font-family: var(--site-font-family-Noto-Sans-JP);
	max-width: var(--site-max-width);
    margin: auto;
	color: #464646;
}
main{
    max-width: var(--site-main-width);
	margin: auto;
	background-color: #FFFBF3;
}
.is_mobile{
	display: initial !important;
}
.is_desktop{
	display: none !important;
}

/* header start */
header{
	padding: calc(13 * var(--site-font-size-ratio)) calc(20 * var(--site-font-size-ratio));
	background-color: #ffffff;
}
header>h1{
	display: flex;
	align-items: center;
}
header>h1>img{
	width: calc(190 * var(--site-font-size-ratio));
}
/* header end */

/* footer start */
footer{
	margin-top: calc(calc(3566 - 1823 - 1683) * var(--site-font-size-ratio));
	padding: 0 calc(20 * var(--site-font-size-ratio)) calc(calc(3838 - 3798.4 - 18) * var(--site-font-size-ratio));
	text-align: center;
}
footer>img{
	width: calc(247.72 * var(--site-font-size-ratio));
}
footer>div{
	margin-top: calc(calc(3643.4 - 3566 - 51.26) * var(--site-font-size-ratio));
	display: flex;
	flex-direction: column;
}
footer>div>a{
	text-decoration: none;
	color: inherit;
	line-height: 220%;
	font-size: calc(16 * var(--site-font-size-ratio));
	font-weight: 500;
}
footer>small{
	display: block;
	margin-top: calc(calc(3798.4 - 3643.4 - 105) * var(--site-font-size-ratio));
	font-size: calc(12 * var(--site-font-size-ratio));
	font-weight: 500;
	line-height: 150%;
}
/* footer end */

/* popup_wrapper_visible common start */
.popup_wrapper_visible>.popup_content{
	width: calc(334 * var(--site-font-size-ratio));
	background-color: #ffffff;
	border-radius: calc(20 * var(--site-font-size-ratio));
	box-shadow: 0 0 calc(10 * var(--site-font-size-ratio)) 0 #0000002d;
	padding: calc(calc(94 - 60) * var(--site-font-size-ratio)) calc(20 * var(--site-font-size-ratio));
	position: relative;
}
.popup_wrapper_visible>.popup_content>.popupoverlay_close{
	position: absolute;
	width: calc(32 * var(--site-font-size-ratio));
	left: calc(calc(313 - 20) * var(--site-font-size-ratio));
	top: calc(calc(72 - 60) * var(--site-font-size-ratio));
}
/* popup_wrapper_visible common end */
/* -------------------------------base(mobile)↑-------------------------------------- */


/* -----------------desktop(include ipad)↓-------------------- */
@media screen and (min-width: 768px){
    :root{
        --site-division: 1440;
    }
	.is_mobile{
		display: none !important;
	}
	.is_desktop{
		display: initial !important;
	}

	/* header start */
	header{
		padding: calc(14.56 * var(--site-font-size-ratio)) calc(100.2 * var(--site-font-size-ratio));
	}
	header>h1>img{
		width: calc(305 * var(--site-font-size-ratio));
	}
	/* header end */

	/* footer start */
	footer{
		margin-top: calc(calc(3029 - 1415 - 1552) * var(--site-font-size-ratio));
		padding: 0 calc(20 * var(--site-font-size-ratio)) calc(calc(3230 - 3192 - 18) * var(--site-font-size-ratio));
	}
	footer>div{
		margin-top: calc(calc(3138 - 3029 - 64.45) * var(--site-font-size-ratio));
		flex-direction: row;
		justify-content: center;
		column-gap: calc(30 * var(--site-font-size-ratio));
	}
	footer>div>a{
		line-height: 150%;
	}
	footer>small{
		margin-top: calc(calc(3192 - 3138 - 24) * var(--site-font-size-ratio));
	}
	/* footer end */

	/* popup_wrapper_visible common start */
	.popup_wrapper_visible>.popup_content{
		width: calc(495 * var(--site-font-size-ratio));
		padding: calc(calc(174 - 140) * var(--site-font-size-ratio)) calc(calc(548 - 495) * var(--site-font-size-ratio));
	}
	.popup_wrapper_visible>.popup_content>.popupoverlay_close{
		left: calc(calc(903 - 450) * var(--site-font-size-ratio));
		top: calc(calc(152 - 140) * var(--site-font-size-ratio));
		cursor: pointer;
	}
	.popup_wrapper_visible>.popup_content>a{
		cursor: pointer;
	}
	/* popup_wrapper_visible common end */
}

@media screen and (min-width: 1440px){
    :root{
        --site-max-width: 1960px;
        --site-main-width: 1960px;
        --site-font-size-ratio:1px;
    }
}
/* -----------------desktop(include ipad)↑-------------------- */