@charset "utf-8";
/*=============================================================
 Layout
=============================================================*/
.osw {
		font-family: "Oswald", sans-serif;
		font-optical-sizing: auto;
}
.note {
	margin: 10px 0 0;
}
/* #mainvisual
-------------------------------------------------------------*/
#mainvisual {
	background: url("../img/main_bg.png") repeat-x 0 0;
	background-size: 100% 100%;
}
#mainvisual h1 {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}
#mainvisual h1.setScMc{
	opacity:0;
	transform:translateY(0px);
}
#mainvisual h1.setScMc.enter{
	opacity:1;
}
/* #oubo
-------------------------------------------------------------*/
.note {
	font-size: 90%;
}
/* .clmArea
-------------------------------------------------------------*/
.clmArea {
	padding: 0.8%;
	background: #fdd000;
}
.clmAreaInner {
	padding: 8% 4%;
	background: #fff;
	color: #000;
}
/* .btn
-------------------------------------------------------------*/
.btnMore {
	max-width: 80%;
	margin: 0 auto;
}
/* #outline
-------------------------------------------------------------*/
#outline {
	position: relative;
	padding-top: clamp(100px, calc(100px + 0.2667 * (100vw - 375px)), 160px);
}
#outline #cat {
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
	z-index: 0;
}
#outline #cat img {
	width: 80%;
}
/* #terms
-------------------------------------------------------------*/
#terms p + p {
	margin: 1em 0 0;
}
/* #entry
-------------------------------------------------------------*/
#entry .box {
	padding: 1.5em 0 0;
}
#entry .box p.fig {
	width: 39%;
	float: right;
	padding: 0 0 1em 1em;
}
#entry .box strong {
	font-size: 105%;
}
/* #conditions
-------------------------------------------------------------*/
#conditions .kiyaku_wrap {
	height: min(48.167vw, 289px);
	overflow-y: auto;
	overflow-x: hidden;
}
#conditions .kiyaku_inner {
	width: 100%;
	padding: 0 20px 0 0;
	font-size: 90%;
}
#conditions #entryBtnBox {
	width: 80%;
	margin: 3em auto 0;
}
#conditions .tableBox {
	width: 100%;
	overflow-x: auto;
}
#conditions table {
	width: 100%;
}
#conditions table th,
#conditions table td{
	padding: 5px;
	border: 1px solid #ddd;
	white-space: nowrap;
}
#conditions table th{
	background-color: #eee;
}


/* #entryBtn
-------------------------------------------------------------*/
#entryBtn p.atn{
	margin: 2em 1em 0;
}
#entryBtn p.atn a{
	color: #fff;
}
/* #faq
-------------------------------------------------------------*/
#faq dt {
	width: 100%;
	display: flex;
	align-items: center
}
#faq dt div.icn {
	width: 10%;
}
#faq dt p {
	width: 90%;
	padding-left: 1em;
	font-weight: 600;
}
#faq dd {
	width: 100%;
	display: flex;
	margin-top: 1em;
}
#faq dd div.icn {
	width: 10%;
}
#faq dd p {
	width: 90%;
	padding-left: 1em;
}
#faq dd + dt {
	margin: 1em 0 0;
	padding: 1.2em 0 0;
	border-top: 2px dotted #000;
}
/* #otoku
-------------------------------------------------------------*/
#otoku {}
#otoku h4 {
	font-weight: 500;
	margin: min(3vw, 18px) 0 min(3vw, 18px);
}
#otoku ul {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	margin: 0 auto min(8.333vw, 50px);
}
#otoku ul li {
	flex-basis: 50%;
	text-align: center;
}
#otoku ul li .howto_img {
	margin: 0 auto min(1.833vw, 11px);
}
#otoku ul li .howto_img img {
	max-height: min(21vw, 180px);
}
#otoku ul li p {
	line-height: 1;
	margin: 0 auto min(1.333vw, 8px);
	text-align: center;
}
#otoku ul li .price {
	font-size: min(5.167vw, 31px);
	font-weight: 700;
	line-height: 1;
	color: #F2344E;
	margin: 0 auto min(1.833vw, 11px);
}
#otoku ul li .price span {
	font-size: min(6.333vw, 38px);
	font-weight: 500;
	display: inline;
	padding-right: 0;
	line-height: 1;
}
#otoku ul li span {
	display: block;
	font-size: min(2.833vw, 17px);
	line-height: 1.9;
	text-align: left;
	padding-right: min(5vw, 30px);
}
#otoku ul li:first-child {
	border-right: 2px dotted #141414;
}
#otoku .howto {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: min(3.833vw, 23px) auto min(9vw, 54px);
}
#otoku .howto .image {
	flex-basis: min(25vw, 180px);
}
#otoku .howto .image img {
	max-width: 100%;
}
#otoku .howto .summary {
	flex-basis: min(50vw, 300px);
}
#otoku .howto .summary .price {
	font-size: min(5.167vw, 31px);
	font-weight: 700;
	line-height: 1;
	color: #F2344E;
}
#otoku .howto .summary .price span {
	font-size: min(6.333vw, 38px);
	font-weight: 500;
}
#otoku .howto .summary .price .small {
	font-size: min(3.5vw, 21px);
}
#otoku .howto .summary h5 {
	line-height: 2.1;
}
#otoku .howto .summary .info {
	font-size: min(2.833vw, 17px);
	font-weight: 400;
}
/* #easy
-------------------------------------------------------------*/
#easy {}
#easy .line {
	margin: 2.5em 0 0;
	padding: 2.7em 0 0;
	border-top: 2px dotted #000;
}
#easy .boxClm {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#easy .boxClm .boxFig{
	width: 37%;
}
#easy .boxClm .boxTxt{
	width: 58%;
}
#easy .boxClm .boxTxt strong{
	font-size: 105%;
}
#easy .boxClm .boxTxt .price{
	font-size: min(5.167vw, 31px);
	font-weight: 700;
	line-height: 1;
	color: #F2344E;
}
#easy .boxClm .boxTxt .price span {
	font-size: min(6.333vw, 38px);
	font-weight: 500;
}















