@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@500;700;800&family=Noto+Sans+JP:wght@400;500;700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanjp.min.css');
@import url('https://cdn.jsdelivr.net/npm/material-design-iconic-font@2.2.0/dist/css/material-design-iconic-font.min.css');

/*
	commons.css
---------------------------------------------------------------------------------------------------------------------------------------------*/
/* common
--------------------------------------------------------------------------------------------------------*/
em, i { font-style: normal;}
a { text-decoration: none; color: inherit;}
textarea { resize: vertical;}
img { vertical-align: bottom; max-width: 100%; height: auto;}

iframe[name='google_conversion_frame'] {
	position: absolute;
	top: 0;
}

/* font-size
--------------------------------------------------------------------------------------------------------*/
html { font-size: 62.5%;}
body {
	font-size: 16px;
	font-size: 1.6rem;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* input
--------------------------------------------------------------------------------------------------------*/
input[type=text], input[type=password], input[type=checkbox], input[type=email],input[type=radio], input[type=submit], input[type=button],
select, textarea {
	font-family: 'Hiragino Sans', 'Helvetica Neue', 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', YuGothic, Arial, 'メイリオ', Meiryo, sans-serif;
	border: none;
	outline: 0;
}

/* body
--------------------------------------------------------------------------------------------------------*/
body {
	font-family: 'Hiragino Sans', 'Helvetica Neue', 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', YuGothic, Arial, 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	line-height: 1.0;
	background-color: #fff;
	color: #231815;
}
body {
	min-width: 1024px;
}
@media screen and (max-width: 1024px){
	body {
		min-width: initial;
	}
}


/* font
--------------------------------------------------------------------------------------------------------*/
.fw-l { font-weight: 300!important;}
.fw-r { font-weight: 400!important;}
.fw-m { font-weight: 500!important;}
.fw-sb { font-weight: 600!important;}
.fw-bd { font-weight: 700!important;}
.fw-ex { font-weight: 800!important;}
.fw-bk { font-weight: 900!important;}

.fs-it { font-style: italic!important;}
.ffs-pa { font-feature-settings: 'palt';}

.ff-nt {
	font-family: 'Noto Sans JP', sans-serif;
}
.ff-mp {
	font-family: 'M PLUS 1p', sans-serif;
	-webkit-transform: rotate(0.03deg);
	transform: rotate(0.03deg);
}
.ff-yakuhan {
	font-family: YakuHanJP, 'M PLUS 1p', sans-serif;
	-webkit-transform: rotate(0.03deg);
	transform: rotate(0.03deg);
}
.ff-yakuhan-nt {
	font-family: YakuHanJP, 'Noto Sans JP', sans-serif;
}
.ff-hee {
	font-family: 'Heebo', sans-serif;
}

/* text
--------------------------------------------------------------------------------------------------------*/
.txt-up { text-transform: uppercase;}
.txt-cap { text-transform: capitalize;}
.txt-just {
	text-align: justify;
	text-justify: inter-ideograph;
}
.txt-overflow {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* opacity
--------------------------------------------------------------------------------------------------------*/
a.opacity {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
@media screen and (min-width: 1025px){
	a.opacity:hover { opacity: 0.65;}
}

/* common parts
--------------------------------------------------------------------------------------------------------*/
.flex {
	display: -webkit-flex;
	display: flex;
}
.f-align-ce {
	-webkit-align-items: center;
	align-items: center;
}
.f-align-bl {
	-webkit-align-items: baseline;
	align-items: baseline;
}
.f-align-fs {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.f-align-fe {
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
.f-just-sb {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.f-just-ce {
	-webkit-justify-content: center;
	justify-content: center;
}
.f-direct-cl {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.f-wrap {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}


/* wrapper
---------------------------------------------------------*/
#wrapper {
	position: relative;
}

/* ic-home
---------------------------------------------------------*/
#ic-home {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1;
}
#ic-home a {
	display: block;
	padding-top: calc(5 / 375 * 100vw);
	padding-right: calc(10 / 375 * 100vw);
	padding-bottom: calc(5 / 375 * 100vw);
	padding-left: calc(10 / 375 * 100vw);
}
#ic-home a i {
	font-size: calc(32 / 375 * 100vw);
	color: #231815;
}
@media screen and (min-width: 1025px) {
	#ic-home .inner {
		width: 100.0%;
	}
	#ic-home a {
		padding-top 1.3rem;
		padding-right 2.7rem;
		padding-bottom 1.3rem;
		padding-left 2.7rem;
	}
	#ic-home a i {
		font-size: 8.7rem;
	}
}

/* inner
---------------------------------------------------------*/
.inner {
	width: 100%;
	margin: 0 auto;
}
@media screen and (min-width: 1025px) {
	.inner {
		width: 1024px;
	}
}

/* pager-nav
---------------------------------------------------------*/
.pager-nav > * {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex: 0 0 calc(35 / 375 * 100vw);
	flex: 0 0 calc(35 / 375 * 100vw);
	width: calc(35 / 375 * 100vw);
	height: calc(35 / 375 * 100vw);
	margin-right: calc(5 / 375 * 100vw);
	margin-left: calc(5 / 375 * 100vw);
}
.pager-nav > a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: calc(14 / 375 * 100vw);
	font-weight: 500;
	color: #218c3b;
	cursor: pointer;
	background-color: #fff;
	border: 1px solid #218c3b;
}
.pager-nav > a.jp-current,
.pager-nav > a:hover {
	background-color: #218c3b;
	color: #fff;
}
.pager-nav > a.jp-previous,
.pager-nav > a.jp-next {
	background-color: transparent;
	border: none;
}
.pager-nav > a.jp-previous::before,
.pager-nav > a.jp-next::before {
	font-size: calc(30 / 375 * 100vw);
	font-family: 'Material-Design-Iconic-Font';
	font-weight: 400;
	color: #218c3b;
}
.pager-nav > a.jp-previous::before {
	content: '\f2fa';
}
.pager-nav > a.jp-next::before {
	content: '\f2fb';
}
.pager-nav > a.jp-disabled::before {
	color: #b1b1b1;
}

@media screen and (min-width: 1025px) {
	.pager-nav > * {
		-webkit-flex: 0 0 9.5rem;
		flex: 0 0 9.5rem;
		width: 9.5rem;
		height: 9.5rem;
		margin-right: 1.2rem;
		margin-left: 1.2rem;
	}
	.pager-nav > a {
		font-size: 3.8rem;
	}
	.pager-nav > a.jp-previous::before,
	.pager-nav > a.jp-next::before {
		font-size: 8.2rem;
	}
}

/* header
--------------------------------------------------------------------------------------------------------*/
header .inner h1 {
	text-align: center;
}
header .inner h1 a {
	display: block;
}

header .inner .tap{
	background-color: #fff462;
	text-align: center;
	padding: 0.5em;
}
header .inner .tap a{
	font-size: 1.2rem;
}
/*
	commons.css End
---------------------------------------------------------------------------------------------------------------------------------------------*/