@charset "utf-8";
/**
 * init.css
 */

/*修正*/
#container img {
	pointer-events: none;
}

/* reset
--------------------------------------------------*/
body {
	margin: 0;
	padding: 0;
	border: none;
	background: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}
/* img */
img,
/*box*/
div, p, blockquote,
/* heading */
h1, h2, h3, h4, h5, h6,
/* list */
ul, ol, li, dl, dt, dd,
/* form */
form, fieldset, textarea,
/* address */
address,
/* html5 */
main, article, aside, dialog, figure, footer, header, hgroup, nav, section
{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	list-style-type: none;
}
/* html5 */
main, article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}
/* table */
table {
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
}
th {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}
caption{
	text-align: left;
}
/* a */
a, a:focus, a:hover, a:active {
	outline: none;
}
a {
	color: #079DE1;
	text-decoration: underline;
}
.pcmode a:hover {
	text-decoration: none;
}
a[href^="tel:"] {
	cursor: default;
	text-decoration: none;
}

/* form */
input, input:focus, input:hover, input:active,
textarea, textarea:focus, textarea:hover, textarea:active {
	outline: none;
}
/* img */
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	-webkit-backface-visibility: hidden;
/*	pointer-events: none;*/
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	touch-callout:none;
	user-select:none;
}
.guard,
figure,
picture {
	position: relative;
	display: block;
}
.guard:after,
figure:after,
picture:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	content: '';
	opacity: 0;
}

/* selection */
::-moz-selection {
	background: #b2d7fe;
}

* {
	min-height: 0%;
	/* word-break: break-all; */
	word-wrap: break-word;
}


/*バナー*/
.top-banners img{
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
}

.top-banners img.sp{
    display: none;
}

@media only screen and (min-width:768px) {
	.top-banners img.sp {
		display: block!important;
	}
    .top-banners img.pc{
        display: none;
    }
    .top-banners img{
        max-width: 690px;
        width: 100%;
    }
}


/*************************************************

 siteCommonStyle

*************************************************/


/* sp pc */
@media only screen and (min-width:992px) {
	.tbView {
		display: none !important;
	}
}
@media only screen and (min-width:768px) {
	.spView {
		display: none !important;
	}
}
@media only screen and (max-width:767px) {
	.pcView {
		display: none !important;
	}
}

/* fade */
@media only screen and (min-width:768px) {
	.pcmode .fade,
	.pcmode .fadeArea a {
		transition-property: opacity;
		transition-duration: 0.3s;
	}
	.pcmode .fade:hover,
	.pcmode .fadeArea a:hover {
		opacity: 0.7;
	}
	.textBdr:hover,
	.textBdrList a:hover {
		text-decoration: underline !important;
	}
	.hoverScaleList figure {
		overflow: hidden;
		position: relative;
	}
	.hoverScaleList img {
		transform: scale(1);
		transition: transform 0.4s;
	}
	.pcmode .hoverScaleList a:hover img {
		transform: scale(1.1);
	}
}



@media only screen and (max-width:991px) {}
@media only screen and (max-width:767px) {}
@media only screen and (max-width:375px) {} /* iPhoneSE 375px / iPhone12mini 360px */


/*************************************************

 wrapper

*************************************************/
#wrapper {
	color: #3C0200;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ＭＳ Ｐゴシック', sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	line-height: 1.7;
	text-align: left;
	background: rgb(255,244,214);
	background: linear-gradient(90deg, rgba(255,244,214,1) 0%, rgba(255,255,255,1) 50%, rgba(255,244,214,1) 100%);
}
#wrapper.fixed {
	position: fixed;
	left: 0;
	width: 100%;
}

.f-mintyo {
	font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', '游明朝', YuMincho, serif;
}

@media only screen and (max-width:767px) {
	#wrapper {
		font-size: 14px;
	}
}



/* fade anime
--------------------------------*/
.effectFU,
.effectFL,
.effectFR,
.effectFD,
.effectIn,
.ch-effectFU,
.ch-effectFL,
.ch-effectFR,
.ch-effectFD,
.ch-effectIn {
	opacity: 0;
	transition: transform 0.8s, opacity 0.8s;
}

.effectFU,.ch-effectFU {transform: translateY(30px);}
.effectFL,.ch-effectFL {transform: translateX(30px);}
.effectFR,.ch-effectFR {transform: translateX(-30px);}
.effectFD,.ch-effectFD {transform: translateY(-30px);}

.effectSCin {
	opacity: 0;
	transition: transform 0.6s, opacity 0.6s;
	transform: scale(1.05);
}


.effectFU.is-View,
.effectFL.is-View,
.effectFR.is-View,
.effectFD.is-View,
.effectIn.is-View,
.effectSCin.is-View,
.is-View .ch-effectFU,
.is-View .ch-effectFL,
.is-View .ch-effectFR,
.is-View .ch-effectFD,
.is-View .ch-effectIn {
	opacity: 1;
	transform: translate(0,0) scale(1);
}



/*************************************************

 footer

*************************************************/






/*************************************************

 container

*************************************************/
#container {
}
@media only screen and (max-width:767px) {
	#container {
		background-size: 50px auto;
	}
}



/* parts
--------------------------------*/

/* partsTitle01 */
.partsTitle01 {
	text-align: center;
}
.partsTitle01 img {
	width: min(53.867%,565px);
}
@media only screen and (max-width:767px) {
	.partsTitle01 img {
		width: min(73.867%,277px);
	}
}


/* partsButtonRegister */
.partsButtonRegister {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.partsButtonRegister a {
	display: block;
	line-height: 0;
	text-align: center;
}
.partsButtonRegister .inBntText {
	position: relative;
	display: flex;
	justify-content: center;
	margin-bottom: 5px;
}
.partsButtonRegister .inBntText span {
	position: relative;
	display: block;
	font-size: 16px;
	font-weight: 700;
	padding: 0 20px;
	color: #CC2D4D;
}
.partsButtonRegister .inBntText span:before,
.partsButtonRegister .inBntText span:after {
	position: absolute;
	bottom: 0;
	display: block;
	content: '';
	width: 1px;
	height: 1.5em;
	background-color: #CC2D4D;
}
.partsButtonRegister .inBntText span:before {
	left: 0;
	transform: rotate(-30deg);
}
.partsButtonRegister .inBntText span:after {
	right: 0;
	transform: rotate(30deg);
}
@media only screen and (max-width:767px) {
	.partsButtonRegister a img {
		width: 237px;
	}
}

/* partsButtonLogin */
.partsButtonLogin {
	display: flex;
	justify-content: center;
}
.partsButtonLogin a {
	display: block;
	line-height: 0;
	text-align: center;
}
@media only screen and (max-width:767px) {
	.partsButtonLogin a img {
		width: 237px;
	}
}


/* partsDecoline */
.partsDecoline {
	position: relative;
	display: flex;
	line-height: 0;
	justify-content: space-between;
}
.partsDecoline:before {
	position: absolute;
	top: 50%;
	left: 14px;
	width: calc(100% - 28px);
	height: 1px;
	display: block;
	content: '';
	background-color: #64180D;
	margin-top: -1px;
}


/*************************************************

 top-mainvisual

*************************************************/
.top-mainvisual {
	line-height: 0;
}
.top-mainvisual img {
	width: 100%;
}



/*************************************************

 top-whatis

*************************************************/
.top-whatis {
	position: relative;
	overflow: hidden;
	padding: 70px 20px 90px;
}
.top-whatis__title {
	position: relative;
	margin-bottom: 35px;
	line-height: 0;
	text-align: center;
	z-index: 3;
}
.top-whatis__btn {
	position: relative;
	display: flex;
	justify-content: center;
	line-height: 0;
	z-index: 3;
}
.top-whatis__bg {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0;
	padding-bottom: 446px;
	background: url(../img/whatis_bg.png) no-repeat center bottom / 1500px auto;
	z-index: 1;
}
.top-whatis__bg::before {
	position: absolute;
	bottom: 100%;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 1000px;
	background-color: #B32231;
}
.top-whatis__bg img {
	display: none;
}

@media only screen and (min-width:1501px) {
	.top-whatis__bg {
		background-size: 100% auto;
	}
}

@media only screen and (max-width:767px) {
	.top-whatis {
		padding: 40px 0 0;
	}
	.top-whatis__title {
		margin-bottom: 30px;
		padding: 0 20px;
	}
	.top-whatis__title img {
		width: min(100%,333px);
	}
	.top-whatis__btn a {
		width: min(100%,280px);
	}
	.top-whatis__bg {
		position: relative;
		height: auto;
		padding-bottom: 0;
		background: none;
	}
	.top-whatis__bg img {
		display: block;
		width: 100%;
	}
}




/*************************************************

 top-anchornav

*************************************************/
.top-anchornav {
	padding-top: 20px;
	line-height: 0;
}
.top-anchornav__list {
	display: flex;
	justify-content: center;
}
.top-anchornav__list__li {
	position: relative;
	display: flex;
}
.top-anchornav__list__anchor {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: inherit;
	padding: 7px 35px 26px;
}
.top-anchornav__list__anchor::before {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 16px;
	background: url(../img/nav_arw.svg) no-repeat center center / contain;
	transition: transform 0.3s;
}
.top-anchornav__list__anchor:hover::before {
	transform: translateY(25%);
}
.top-anchornav__list__anchor::after {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	content: '';
	width: 2px;
	height: 100%;
	background: url(../img/nav_border01.png) repeat-y top left / 100% auto;
}
.top-anchornav__list__li:last-child .top-anchornav__list__anchor::after {
	display: none;
}


@media only screen and (max-width:767px) {
	.top-anchornav {
		padding: 50px 20px 0;
	}
	.top-anchornav__list {
		overflow: hidden;
		max-width: 333px;
		margin: 0 auto;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.top-anchornav__list__li {
		width: 50%;
		padding: 10px 0;
	}
	.top-anchornav__list__li:nth-child(odd)::before {
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		content: '';
		width: 100vw;
		height: 2px;
		background: url(../img/nav_border02.png) repeat-x top left / auto 100%;
	}
	.top-anchornav__list__li:nth-child(1)::before {
		display: none;
	}
	.top-anchornav__list__anchor {
		width: 100%;
		padding: 14px 0 25px;
	}
	.top-anchornav__list__li:nth-child(even) .top-anchornav__list__anchor::after {
		display: none;
	}

	.top-anchornav__list__li:nth-child(1) img { width: min(100%,155px); transform: translateX(-2%); }
	.top-anchornav__list__li:nth-child(2) img { width: min(48.2%,80px); }
	.top-anchornav__list__li:nth-child(3) img { width: min(60.85%,101px); }
	.top-anchornav__list__li:nth-child(4) img { width: min(60.85%,101px); }
	.top-anchornav__list__li:nth-child(5) img { width: min(46.99%,78px); }
	.top-anchornav__list__li:nth-child(6) img { width: min(56.63%,94px); }
}



/*************************************************

 top-outline

*************************************************/
.top-outline {
	padding: 80px 20px;
	text-align: center;
}
.top-outline__title {
	margin-bottom: 40px;
	text-align: center;
	line-height: 0;
}
.top-outline__title img {
	max-width: 88.29%;
}
.top-outline__text01 {
	margin-bottom: 20px;
	line-height: 0;
}
.top-outline__text01 img {
	max-width: 96%;
}
.top-outline__text02 {
	margin-bottom: 35px;
	line-height: 0;
}
.top-outline__span {
	line-height: 0;
}

@media only screen and (max-width:767px) {
	.top-outline {
		max-width: 333px;
		margin: 0 auto;
	}
}



/*************************************************

 top-merchandise

*************************************************/
.top-merchandise {
	overflow: hidden;
	position: relative;
	padding: 170px 0 180px;
}
.top-merchandise::before,
.top-merchandise::after {
	position: absolute;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	z-index: 1;
}
.top-merchandise::before {
	top: 0;
	height: 0;
	padding-bottom: 300px;
	background: url(../img/merchandise_bg01.png) no-repeat center top / 1500px auto;
}
.top-merchandise::after {
	bottom: 0;
	height: 0;
	padding-bottom: 250px;
	background: url(../img/merchandise_bg02.png) no-repeat center top / 1500px auto;
}
.top-merchandise__bg {
	position: absolute;
	top: 300px;
	width: 100%;
	height: calc(100% - 550px);
	background-color: #B32231;
	z-index: 1;
}
.top-merchandise__inner {
	position: relative;
	color: #fff;
	z-index: 5;
}
.top-merchandise__inner > * {
	position: relative;
	z-index: 3;
}

.top-merchandise__title {
	margin-bottom: 20px;
	text-align: center;
	line-height: 0;
}
.top-merchandise__title__star01,
.top-merchandise__title__star02 {
	display: none;
	line-height: 0;
}
.top-merchandise__lead {
	margin-bottom: 45px;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
}
.top-merchandise__wrap {
	box-sizing: border-box;
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 80px 0 70px;
	background: url(../img/merchandise_bg03.jpg) center center / cover;
	border-radius: 20px;
}
.top-merchandise__group + .top-merchandise__group {
	margin-top: 80px;
}
.top-merchandise__group__tilte {
	line-height: 0;
	text-align: center;
}
.top-merchandise__group__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 840px;
	margin: 0 auto;
}
.top-merchandise__group__list__li {
	box-sizing: border-box;
	display: flex;
	align-items: flex-end;
	width: calc(100% / 3);
	margin-top: 40px;
	padding: 0 10px;
	text-align: center;
}
.top-merchandise__group__list__anchor {
	display: flex;
	flex-direction: column;
	width: 100%;
	color: #fff;
	text-decoration: none;
}
.top-merchandise__group__list__anchor figure {
	line-height: 0;
}
.top-merchandise__group__list__anchor p {
	margin-top: 10px;
	font-weight: 700;
	line-height: 1.2;
}
.top-merchandise__cap {
	margin-top: 50px;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
}


.top-merchandise__star {
	position: absolute;
	line-height: 0;
	z-index: 1;
}

.top-merchandise__star.is-star01 {
	top: -4%;
    left: -7%;
}
.top-merchandise__star.is-star02 {
	top: 2%;
    right: -7%;
}
.top-merchandise__star.is-star03 {
    top: 31%;
    right: -11%;
}
.top-merchandise__star.is-star04 {
    top: 48%;
    left: -10%;
}
.top-merchandise__star.is-star05 {
	top: 57%;
    right: -7%;
}
.top-merchandise__star.is-star06 {
	top: 73%;
    left: -11%;
}
.top-merchandise__star.is-star07 {
    bottom: 21%;
    right: -7%;
}
.top-merchandise__star.is-star08 {
    bottom: 7%;
    left: -11%;
}
.top-merchandise__star.is-star09 {
	bottom: 0%;
    right: -12%;
}


@media only screen and (min-width:1501px) {
	.top-merchandise__bg {
		top: calc(280 / 1501 * 100vw);
		height: calc(100% - (510 / 1501 * 100vw));
	}
	.top-merchandise::before {
		padding-bottom: calc(300 / 1501 * 100vw);
		background-size: 100% auto;
	}
	.top-merchandise::after {
		padding-bottom: calc(250 / 1501 * 100vw);
		background-size: 100% auto;
	}
}


@media only screen and (max-width:767px) {
	.top-merchandise {
		padding: 100px 0;
	}
	.top-merchandise::before {
		padding-bottom: calc(120 / 767 * 100vw);
		background: url(../img/merchandise_bg01_sp.png) no-repeat center top / 100% 100%;
	}
	.top-merchandise::after {
		padding-bottom: calc(160 / 767 * 100vw);
		background: url(../img/merchandise_bg02_sp.png) no-repeat center top / 100% 100%;
	}
	.top-merchandise__bg {
		top: calc(120 / 767 * 100vw);
		height: calc(100% - (280 / 767 * 100vw));
	}
	.top-merchandise__title {
		position: relative;
		width: min(84.09%,280px);
		margin: 0 auto 15px;
	}
	.top-merchandise__title__star01,
	.top-merchandise__title__star02 {
		position: absolute;
		display: block;
	}
	.top-merchandise__title__star01 {
		bottom: 100%;
		left: -30px;
		width: 60px;
	}
	.top-merchandise__title__star02 {
		bottom: 100%;
		right: -30px;
		width: 60px;
		margin-bottom: -10px;
	}
	.top-merchandise__title__star01 img,
	.top-merchandise__title__star02 img {
		width: 100%;
	}


	.top-merchandise__lead {
		margin-bottom: 30px;
		font-size: 14px;
	}
	.top-merchandise__wrap {
		padding: 45px 0 50px;
	}
	.top-merchandise__group + .top-merchandise__group {
		margin-top: 50px;
	}
	.top-merchandise__group__tilte {
		margin: 0 20px;
	}
	.top-merchandise__group__tilte img {
		width: 286px;
	}
	.top-merchandise__group__list__li {
		margin-top: 35px;
		padding: 0;
	}
	.top-merchandise__group__list__anchor {
		display: flex;
		flex-direction: column;
		width: 100%;
		color: #fff;
		text-decoration: none;
	}
	.top-merchandise__group__list__anchor figure {
		line-height: 0;
	}
	.top-merchandise__group__list__anchor p {
		font-size: 12px;
		min-height: 2.4em;
	}

	.top-merchandise__cap {
		margin-top: 20px;
		font-size: 14px;
	}

	.top-merchandise__group__list__li.is-item01-01 img { width: min(59.46%,66px); }
	.top-merchandise__group__list__li.is-item01-02 img { width: min(59.46%,66px); }
	.top-merchandise__group__list__li.is-item01-03 img { width: min(74.78%,83px); }
	.top-merchandise__group__list__li.is-item01-04 img { width: min(80.19%,89px); }
	.top-merchandise__group__list__li.is-item01-05 img { width: min(80.19%,89px); }
	.top-merchandise__group__list__li.is-item01-06 img { width: min(74.78%,83px); }
	.top-merchandise__group__list__li.is-item01-07 {
		width: 100%;
	}
	.top-merchandise__group__list__li.is-item01-07 img { width: min(47.75%,159px); }

	.top-merchandise__group__list__li.is-item02-01 img { width: min(64.87%,72px); }
	.top-merchandise__group__list__li.is-item02-02 img { width: min(64.87%,72px); }
	.top-merchandise__group__list__li.is-item03-01 img { width: min(64.87%,72px); }
	.top-merchandise__group__list__li.is-item03-02 img { width: min(64.87%,72px); }
	.top-merchandise__group__list__li.is-item04-01 img { width: min(64.87%,72px); }
	.top-merchandise__group__list__li.is-item04-02 img { width: min(64.87%,72px); }

	.top-merchandise__star:not(.is-star10) {
		display: none;
	}
	.top-merchandise__star.is-star10 {
		bottom: -50px;
		right: 10%;
	}
}



/*************************************************

 top-merchandise

*************************************************/
.top-necessities {
	padding-top: 80px;
}
.top-necessities__title {
	text-align: center;
	line-height: 0;
}
.top-necessities__cap {
	margin-top: 25px;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
}
.top-necessities__lead01 {
	margin: 30px 20px 40px;
	text-align: center;
	line-height: 0;
}
.top-necessities__span {
	margin: 0 20px 50px;
	line-height: 0;
	text-align: center;
}
.top-necessities__list {
	display: flex;
	justify-content: center;
	line-height: 0;
}
.top-necessities__list__li {
	padding: 0 25px;
}
.top-necessities__lead02 {
	margin: 50px 20px 0;
	line-height: 0;
	text-align: center;
}
.top-necessities__btn {
	display: flex;
	justify-content: center;
	margin-top: 30px;
	line-height: 0;
}
@media only screen and (max-width:767px) {
	.top-necessities {
		max-width: 375px;
		margin: 0 auto;
		padding-top: 60px;
	}
	.top-necessities__title img {
		width: min(87.99%, 293px);
	}
	.top-necessities__cap {
		margin-top: 10px;
		font-size: 11px;
	}
	.top-necessities__lead01 {
		margin-bottom: 35px;
	}
	.top-necessities__span {
		margin: 0 20px;
	}
	.top-necessities__list {
		display: block;
	}
	.top-necessities__list__li {
		padding: 40px 40px 0;
		text-align: center;
	}
	.top-necessities__lead02 {
		margin: 30px 20px 0;
	}
	.top-necessities__btn {
		display: flex;
		justify-content: center;
		margin-top: 30px;
		line-height: 0;
	}
	.top-necessities__btn a {
		width: min(84.09%, 280px);
	}
}


/*************************************************

 top-howto

*************************************************/
.top-howto {
	padding: 170px 0 140px;
}
.top-howto__title {
	margin-bottom: 80px;
	text-align: center;
	line-height: 0;
}
.top-howto__box {
	box-sizing: border-box;
	position: relative;
	max-width: 1100px;
	width: calc(100% - 40px);
	margin: 0 auto;
	background-color: #fff;
	line-height: 0;
}
.top-howto__box + .top-howto__box {
	margin-top: 80px;
}
.top-howto__box::before,
.top-howto__box::after {
	position: absolute;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 0;
	padding-bottom: calc(70 / 1100 * 100%);
	z-index: 2;
}
.top-howto__box::before {
	top: 0;
	background: url(../img/howto_box_top.jpg) no-repeat center top / 100% 100%;
}
.top-howto__box::after {
	bottom: 0;
	background: url(../img/howto_box_bottom.jpg) no-repeat center top / 100% 100%;
}
.top-howto__box__inner {
	position: relative;
	padding: calc(70 / 1100 * 100% + 20px) 50px;
	background: url(../img/howto_box_inner.jpg) repeat center top / 100% auto;
	z-index: 1;
}
.top-howto__box__title {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	text-align: center;
	transform: translateY(-20%);
	z-index: 5;
}
.top-howto__box__title img {
	max-width: 35%;
}
.top-howto__box__text {
	margin-bottom: 35px;
	text-align: center;
}
.top-howto__box01__list {
	display: flex;
	justify-content: center;
}
.top-howto__box01__list li {
	padding: 0 20px;
}
.top-howto__box__image {
	text-align: center;
}
.top-howto__box__btn {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
.is-box02 .top-howto__box__image img {
	border: #64180D solid 1px;
}
@media only screen and (max-width:767px) {
	.top-howto {
		padding: 80px 0;
	}
	.top-howto__title {
		margin-bottom: 30px;
	}
	.top-howto__title img {
		width: min(48.05%, 160px);
	}
	.top-howto__box {
		max-width: 333px;
	}
	.top-howto__box + .top-howto__box {
		margin-top: 20px;
	}
	.top-howto__box::before,
	.top-howto__box::after {
		padding-bottom: 15.015%;
	}
	.top-howto__box::before {
		top: 0;
		background: url(../img/howto_box_top_sp.jpg) no-repeat center top / 100% 100%;
	}
	.top-howto__box::after {
		bottom: 0;
		background: url(../img/howto_box_bottom_sp.jpg) no-repeat center top / 100% 100%;
	}
	.top-howto__box__inner {
		position: relative;
		padding: 15.015% 0;
		background: url(../img/howto_box_inner_sp.jpg) repeat center top / 100% auto;
		z-index: 1;
	}
	.top-howto__box__title img {
		max-width: none;
		width: min(54.96%,183px);
	}
	.top-howto__box__text {
		margin-bottom: 30px;
	}
	.top-howto__box__text img {
		width: min(68.17%, 227px);
	}
	.top-howto__box01__list {
		display: block;
	}
	.top-howto__box01__list li {
		padding: 0;
		text-align: center;
	}
	.top-howto__box01__list li + li {
		margin-top: 30px;
	}
	.top-howto__box01__list li img {
		width: min(84.09%, 280px);
	}
	.is-box02 .top-howto__box__image img {
		width: min(84.09%, 280px);
	}
	.top-howto__box__btn a {
		width: min(84.09%, 280px);
	}
	.is-box03 .top-howto__box__image img {
		width: min(73.58%, 245px);
	}
}


.top-howto__refund {
	position: relative;
	width: calc(100% - 40px);
	max-width: 1100px;
	margin: 60px auto 0;
	padding: 40px 0 50px;
	text-align: center;
	line-height: 0;
}
.top-howto__refund::before,
.top-howto__refund::after {
	position: absolute;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 4px;
	background: url(../img/howto_refund_dots.png) left center / auto 100%;
}
.top-howto__refund::before {
	top: 0;
}
.top-howto__refund::after {
	bottom: 0;
}
.top-howto__refund__title {
	margin-bottom: 13px;
	line-height: 0;
}
.top-howto__refund__text01 {
	margin-top: 30px;
}
.top-howto__refund__text02 {
	margin-top: 40px;
}
@media only screen and (max-width:767px) {
	.top-howto__refund {
		max-width: 333px;
		margin-top: 40px;
		padding: 30px 0 40px;
	}
	.top-howto__refund::before,
	.top-howto__refund::after {
		height: 3px;
	}
	.top-howto__refund__title {
		margin-bottom: 13px;
		line-height: 0;
	}
	.top-howto__refund__title img {
		width: min(39.04%, 130px);
	}
	.top-howto__refund__logo img {
		width: min(17.12%, 57px);
	}
	.top-howto__refund__text01 {
		margin-top: 20px;
	}
	.top-howto__refund__text02 {
		margin-top: 30px;
	}
}




/*************************************************

 dark-bgarea

*************************************************/
.dark-bgarea {
	overflow: hidden;
	position: relative;
	padding: 40px 20px 150px;
}
.dark-bgarea > *{
	position: relative;
	z-index: 5;
}
.dark-bgarea::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	height: 40px;
	width: 100%;
	background: url(../img/dark_bg01.png) no-repeat center top / 1500px auto;
	z-index: 1;
}
.dark-bgarea::after {
	position: absolute;
	top: 40px;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	content: '';
	background: url(../img/dark_bg02.jpg) repeat-y center top / 100% auto;
	z-index: 1;
}
@media only screen and (min-width:1501px) {
	.dark-bgarea::before {
		background-size: 100% auto;
	}
}
@media only screen and (max-width:767px) {
	.dark-bgarea {
		padding: 40px 20px 70px;
	}
	.dark-bgarea::before {
		background: url(../img/dark_bg01_sp.png) no-repeat center top / 100% 100%;
	}
	.dark-bgarea::after {
		background: url(../img/dark_bg02_sp.jpg) repeat-y center top / 100% auto;
	}
}




/*************************************************

 top-faq

*************************************************/

.top-faq {
	padding-top: 100px;
}
.top-faq__title {
	text-align: center;
	line-height: 0;
}
.top-faq__block {
	position: relative;
	max-width: 800px;
	margin: 35px auto 0;
	color: #fff;
}
.top-faq__block + .top-faq__block {
	margin-top: 40px;
	padding-top: 40px;
}
.top-faq__block + .top-faq__block::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 2px;
	background: url(../img/faq_border.png) repeat-x center top / auto 100%;
}
.top-faq__block__title {
	position: relative;
}
.top-faq__block__title {
	position: relative;
	padding: 10px 0;
	cursor: pointer;
}
.top-faq__block__title__inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 7px 70px 7px 20px;
	background-color: #B28146;
}
.top-faq__block__title__icon {
	width: 40px;
}
.top-faq__block__title__text {
	width: calc(100% - 65px);
	font-size: 22px;
	line-height: 1.364;
	background-color: #B28146;
}
.top-faq__block__title__arrow {
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	width: 33px;
	height: 33px;
	transform: translateY(-50%);
}
.top-faq__block__title__arrow::before,
.top-faq__block__title__arrow::after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 4px;
	margin-top: -2px;
	background-color: #fff;
}
.top-faq__block__title__arrow::before {
	transform: rotate(0deg);
	transition: transform 0.2s;
}
.on .top-faq__block__title__arrow::before {
	transform: rotate(90deg);
}
.top-faq__block__title__border01,
.top-faq__block__title__border02 {
	position: absolute;
	left: 10px;
	width: calc(100% - 20px);
	height: 10px;
	background-color: #B28146;
}
.top-faq__block__title__border01::before,
.top-faq__block__title__border01::after,
.top-faq__block__title__border02::before,
.top-faq__block__title__border02::after {
	position: absolute;
	top: 0;
	display: block;
	content: '';
	width: 10px;
	height: 10px;
	background: url(../img/faq_circle.png) no-repeat center center / contain;
}
.top-faq__block__title__border01 {
	top: 0;
}
.top-faq__block__title__border01::before {
	right: 100%;
}
.top-faq__block__title__border01::after {
	left: 100%;
	transform: rotate(90deg);
}
.top-faq__block__title__border02 {
	bottom: 0;
}
.top-faq__block__title__border02::before {
	right: 100%;
	transform: rotate(-90deg);
}
.top-faq__block__title__border02::after {
	left: 100%;
	transform: rotate(180deg);
}
/* .top-faq__block__body {
	display: none;
} */
.top-faq__block__body__inner {
	padding: 20px 25px 0;
	font-weight: 500;
	line-height: 1.6;
}
.top-faq__block__body__inner small {
	font-size: 12px;
}
.top-faq__block__body__inner a {
	color: #FFF000;
    text-decoration: underline;
}

@media only screen and (max-width:767px) {
	.top-faq {
		padding-top: 50px;
	}
	.top-faq__block {
		margin-top: 30px;
	}
	.top-faq__block + .top-faq__block {
		margin-top: 25px;
		padding-top: 27px;
	}
	.top-faq__block__title__inner {
		padding: 10px 50px 10px 15px;
	}
	.top-faq__block__title__icon {
		width: 32px;
	}
	.top-faq__block__title__text {
		width: calc(100% - 42px);
		font-size: 17px;
	}
	.top-faq__block__title__arrow {
		right: 15px;
		width: 14px;
		height: 14px;
	}
	.top-faq__block__title__arrow::before,
	.top-faq__block__title__arrow::after {
		height: 2px;
		margin-top: -1px;
	}
	.top-faq__block__body__inner {
		padding: 10px 20px 0 10px;
	}
	.top-faq__block__body__inner small {
		font-size: 11px;
	}
}




/*************************************************

 top-terms

*************************************************/

.top-terms {
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	padding: min(calc(33 / 1100 * 100%), 33px) 0;
	margin-top: 145px;
}
.top-terms > * {
	position: relative;
	z-index: 3;
}
.top-terms::before,
.top-terms::after {
	position: absolute;
	left: 0;
	display: block;
	content: '';
	width: 100%;
	height: 0;
	padding-bottom: min(calc(33 / 1100 * 100%), 33px);
	background: no-repeat center center / 100% 100%;
}
.top-terms::before {
	top: 0;
	background-image: url(../img/terms_bg_top.png);
}
.top-terms::after {
	bottom: 0;
	background-image: url(../img/terms_bg_bottom.png);
}
.top-terms__inner {
	padding: 30px 0;
	background: url(../img/terms_bg_inner.png) center top / 100% auto;
}
.top-terms__title {
	padding: 0 130px;
	text-align: center;
	line-height: 0;
	cursor: pointer;
}
.top-terms__lead {
	margin: 0 60px;
	font-weight: 500;
	line-height: 1.625;
}
.top-terms__block {
	max-width: 930px;
	margin: 50px auto 0;
	padding: 0 60px;
}
.top-terms__block__title {
	position: relative;
	padding: 5px 0 7px;
	text-align: center;
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	background-color: #B28146;
	border-radius: 200px;
	cursor: pointer;
}
.top-terms__block__title::before {
	position: absolute;
	top: 0;
	display: block;
	content: '';
	right: 25px;
	width: 11px;
	height: 100%;
	background: url(../img/terms_arrow.svg) no-repeat center center / 100% auto;
	transform: rotate(180deg);
	transition: transform 0.3s;
}
.top-terms__block__title.on::before {
	transform: rotate(0deg);
}
.top-terms__block__body {
	padding-top: 25px;
	font-weight: 500;
	line-height: 1.625;
	display: none;
}
.top-terms__block__body *:not(strong) {
	font-weight: 500;
}
.top-terms__block__body small {
	font-size: 12px;
}
.top-terms__block__body .color {
	color: #C30D23;
}
.top-terms__block__body ul > li {
	position: relative;
	padding-left: 1.5em;
}
.top-terms__block__body ul > li::before {
	position: absolute;
	top: 0.2em;
	left: 0;
	display: block;
	content: '●';
	color: #C30D23;
	font-size: 0.75em;
}

.top-terms__block__body ol {
	counter-reset: number 0;
}
.top-terms__block__body ol li {
	position: relative;
	padding-left: 1.5em;
}
.top-terms__block__body ol li::before {
	position: absolute;
	top: 0;
	left: 0;
	counter-increment: number 1;
	display: block;
	content:  counter(number)".";
}
.top-terms__block__body a {
	color: #C30D23;
    text-decoration: underline;
}
.top-faq__close01 {
	position: absolute;
	top: 30px;
	right: 50px;
	width: 36px;
	height: 36px;
	z-index: 10;
	transition: transform 0.3s;
	transform: rotate(45deg);
	cursor: pointer;
}
.on .top-faq__close01 {
	transform: rotate(0deg);
}
.top-terms__closebtn {
	display: flex;
	justify-content: center;
	margin-top: 50px;
	padding-bottom: 50px;
	line-height: 0;
}
.top-terms__closebtn > * {
	cursor: pointer;
}
.js-terms-accordion__body {
	display: none;
	margin-top: 50px;
}
@media only screen and (max-width:767px) {
	.top-terms {
		padding: min(calc(21 / 737 * 100%), 21px) 0;
		margin-top: 65px;
	}
	.top-terms::before,
	.top-terms::after {
		padding-bottom: min(calc(21 / 737 * 100%), 21px);
	}
	.top-terms::before {
		background-image: url(../img/terms_bg_top_sp.png);
	}
	.top-terms::after {
		background-image: url(../img/terms_bg_bottom_sp.png);
	}
	.top-terms__inner {
		padding: 10px 0;
		background: url(../img/terms_bg_inner_sp.png) center top / 100% auto;
	}
	.top-terms__title {
		padding: 0;
	}
	.top-terms__title img {
		width: min(64.27%, 214px);
	}
	.top-terms__lead {
		margin: 0 30px;
	}
	.top-terms__block {
		margin: 30px auto 0;
		padding: 0 30px;
	}
	.top-terms__block__title {
		padding: 5px 0 7px;
		font-size: 16px;
	}
	.top-terms__block__title::before {
		position: absolute;
		top: 0;
		display: block;
		content: '';
		right: 25px;
		width: 11px;
		height: 100%;
		background: url(../img/terms_arrow.svg) no-repeat center center / 100% auto;
		transform: rotate(180deg);
		transition: transform 0.3s;
	}
	.top-terms__block__body {
		padding-top: 15px;
	}
	.top-terms__block__body small {
		font-size: 11px;
	}
	.top-faq__close01 {
		top: 25px;
		right: 25px;
		width: 16px;
		height: 16px;
	}
	.top-terms__closebtn {
		margin-top: 35px;
		padding-bottom: 40px;
	}
	.top-terms__closebtn > * {
		max-width: 240px;
	}
	.js-terms-accordion__body {
		margin-top: 25px;
	}
}


.top-caontact {
	display: flex;
	justify-content: center;
	padding: 80px 20px;
	line-height: 0;
	text-align: center;
	background: url(../img/conact_bg.jpg) no-repeat center center / cover;
}
@media only screen and (max-width:767px) {
	.top-caontact {
		padding: 30px 20px;
		background-image: url(../img/conact_bg_sp.jpg);
	}
	.top-caontact > * {
		max-width: 338px;
	}
}


.top-banners {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 50px 0;
	line-height: 0;
	background-color: #fff;
}
.top-banners a {
	display: block;
	margin: 8px 20px;
}
@media only screen and (max-width:767px) {
	.top-banners {
		padding: 25px 0;
		flex-direction: column;
	}
}


/* pagetop
-----------------------------------*/
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	line-height: 0;
	transform: translateY(100px);
	transition: transform 0.5s;
	z-index: 100;
}
#pagetop.on {
	transform: translateY(0);
}
#pagetop a {
	display: block;
}
#pagetop img {
	filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
}
@media only screen and (max-width:767px) {
	#pagetop {
		bottom: 10px;
		right: 10px;
	}
	#pagetop a {
		width: 60px;
	}
}