@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input, select {
	vertical-align: middle;
}

html {
	font-size: 62.5%;
}

html,
body {
	width: 100%;
	height: auto;
	font-size: 16px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	word-wrap: break-word;
	text-align: center;
	background-color: #fff;
	line-height: 1;
}

body * {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
body *:focus {
	outline: none;
}

button,
input,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	background-color: #eee;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

[type=checkbox] {
	display: block !important;
	position: relative;
	width: 24px;
	height: 24px;
	margin: 0 8px 0 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	border: 1px solid #000;
	background-color: #fff;
	border-radius: 3px;
	-webkit-transition: 0.2s;
	transition: 0.2s;
	-webkit-transform: translateY(-1px);
	    -ms-transform: translateY(-1px);
	        transform: translateY(-1px);
	cursor: pointer;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
[type=checkbox]::after {
	content: "";
	position: absolute;
	display: block;
	top: 4px;
	left: 2px;
	width: 16px;
	height: 6px;
	border-bottom: 3px solid #fff;
	border-left: 3px solid #fff;
	-webkit-transform: rotate(-45deg) scale(0, 0);
	    -ms-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	-webkit-transition: 0.2s;
	transition: 0.2s;
}
[type=checkbox]:checked {
	background-color: #000;
}
[type=checkbox]:checked::after {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	    -ms-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}

.radio-wrap label + label {
	margin-top: -10px;
}

[type=radio] {
	position: relative;
	width: 24px;
	height: 24px;
	margin: 0 8px 0 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	border: 1px solid #000;
	background-color: #fff;
	border-radius: 12px;
	-webkit-transition: 0.2s;
	transition: 0.2s;
	cursor: pointer;
}
[type=radio]::after {
	content: "";
	position: absolute;
	display: block;
	top: 4px;
	left: 4px;
	width: 14px;
	height: 14px;
	border-radius: 14px;
	background-color: #000;
	-webkit-transform: scale(0, 0);
	    -ms-transform: scale(0, 0);
	        transform: scale(0, 0);
	-webkit-transition: 0.2s;
	transition: 0.2s;
}
[type=radio]:checked::after {
	-webkit-transform: scale(1, 1);
	    -ms-transform: scale(1, 1);
	        transform: scale(1, 1);
}

*:focus {
	outline: none;
}

::-webkit-input-placeholder {
	/* WebKit, Blink, Edge */
	/*color: #ccc;*/
}

:-ms-input-placeholder {
	/* Internet Explorer 10-11 */
	/*color: #ccc;*/
}

::-moz-placeholder {
	/* Others */
	/*color: #ccc;*/
}

::-ms-input-placeholder {
	/* Others */
	/*color: #ccc;*/
}

::placeholder {
	/* Others */
	/*color: #ccc;*/
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

a {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
}

#wrap {
	overflow: hidden;
}

@media screen and (min-width: 1161px) {
	.sp-view {
		display: none;
	}
}
@media screen and (max-width: 1160px) {
	.pc-view {
		display: none;
	}
	.radio-wrap label {
		margin-bottom: 10px;
	}
	.radio-wrap label + label {
		margin-top: 0;
	}
}
/******************************************************************************************************************/
#main {
	width: 1160px;
	max-width: 100%;
	padding: 208px 200px 0;
	margin: 0 auto 108px;
	line-height: 1.4;
	font-weight: bold;
	font-size: 18px;
}
#main h1 {
	font-size: 60px;
	margin-bottom: 40px;
	text-align: center;
}
#main h2 {
	font-size: 30px;
	font-weight: bold;
	color: #fff;
	background-color: #4c4c4c;
	padding: 10px;
	margin-bottom: 60px;
	border-radius: 5px;
	text-align: center;
}
#main h2 small {
	margin-bottom: 0;
}
#main h3 {
	font-size: 30px;
	font-weight: bold;
	padding: 10px;
	margin-top: 80px;
	margin-bottom: 60px;
	border-radius: 5px;
	text-align: center;
	border: 1px solid #000;
}
#main small {
	display: block;
	font-size: 13px;
	margin-bottom: 10px;
	font-weight: normal;
}
#main label {
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	min-height: 52px;
}
#main label span {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin: 0 8px 10px;
}
#main input[type=text],
#main input[type=email],
#main textarea,
#main select {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	font-weight: 600;
	padding: 12px;
	width: 100%;
	height: 52px;
	margin-bottom: 10px;
	border-radius: 3px;
	background: #fff;
	border: #000 solid 1px;
	color: #000;
	line-height: 1.5;
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
}
#main textarea {
	height: 150px;
}
#main select {
	cursor: pointer;
	pointer-events: visible;
}
#main input[name*=startdate] {
	position: relative;
	background: url(../images/order/icon_calendar.svg) right 12px top 14px/24px 24px no-repeat;
}
#main .select-wrap {
	position: relative;
	pointer-events: none;
}
#main .select-wrap::before {
	content: "";
	display: block;
	width: 48px;
	height: 52px;
	background-color: #000;
	position: absolute;
	border-radius: 3px;
	right: 0;
	top: 0;
}
#main .select-wrap::after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	position: absolute;
	right: 17px;
	top: 16px;
}
#main .required {
	position: relative;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 0 8px;
}
#main .required::after {
	content: "必須";
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: #fff;
	background-color: #ff0000;
	font-size: 12px;
	line-height: 1;
	padding: 4px;
	border-radius: 3px;
}
#main .btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 100px 0 0;
	gap: 20px;
}
#main .btn-wrap > * {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-weight: bold;
	font-size: 20px;
	height: 60px;
	width: 240px;
	border-radius: 40px;
	max-width: calc(100% - 40px);
}
#main .btn-wrap > *.next {
	background-color: #000;
	color: #fff;
}
#main .btn-wrap > *.back {
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
}
#main .btn-wrap > *:hover {
	opacity: 0.5;
}
#main .complete {
	padding-top: 20px;
	line-height: 1.6;
}
#main .complete .form-step-done {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 160px;
	height: 160px;
	border-radius: 80px;
	background-color: #000;
	position: relative;
	margin: 0 auto 60px;
}
#main .complete .form-step-done::after {
	content: "";
	width: 64px;
	height: 26px;
	border-left: 10px solid #fff;
	border-bottom: 10px solid #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -70%) rotate(-45deg);
	    -ms-transform: translate(-50%, -70%) rotate(-45deg);
	        transform: translate(-50%, -70%) rotate(-45deg);
}
#main .complete h2 {
	padding: 0;
	background: none;
	color: #000;
	font-size: 48px;
}
#main .complete p {
	margin-bottom: 40px;
}

@media screen and (max-width: 1160px) {
	#main {
		width: 800px;
		padding: 230px 0 20px;
	}
	#main h1 {
		font-size: 36px;
	}
	#main h2 {
		font-size: 20px;
		padding: 8px 10px;
	}
	#main h3 {
		font-size: 20px;
		padding: 8px 10px;
	}
	#main small {
		font-size: 11px;
		margin-bottom: 6px;
	}
	#main label {
		cursor: pointer;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		min-height: auto;
	}
	#main label span {
		margin-bottom: 6px;
	}
	#main input[type=text],
	#main input[type=email],
	#main textarea,
	#main select {
		height: 40px;
		margin-bottom: 6px;
		padding: 8px;
	}
	#main textarea {
		height: 150px;
	}
	#main input[name*=startdate] {
		background-position: right 10px top 8px;
	}
	#main .select-wrap::before {
		width: 36px;
		height: 40px;
	}
	#main .select-wrap::after {
		width: 8px;
		height: 8px;
		right: 13px;
		top: 13px;
	}
	#main .required {
		gap: 0 6px;
	}
	#main .required::after {
		font-size: 10px;
		padding: 3px;
	}
	#main .btn-wrap {
		gap: 10px;
	}
	#main .btn-wrap > * {
		height: 50px;
		max-width: calc((100% - 10px) / 2);
		font-size: 16px;
	}
	#main .complete {
		font-size: 14px;
		padding-top: 0;
	}
	#main .complete .form-step-done {
		width: 120px;
		height: 120px;
		margin: 0 auto 40px;
	}
	#main .complete .form-step-done::after {
		width: 50px;
		height: 20px;
		border-left: 8px solid #fff;
		border-bottom: 8px solid #fff;
	}
	#main .complete h2 {
		font-size: 20px;
	}
	#main .complete p {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 1024px) {
	#main {
		padding: 160px 20px 0;
	}
}
form {
	text-align: left;
}
form .error {
	color: #ff0000;
	margin-bottom: 10px;
	width: 100%;
}
form small + .error {
	margin-top: -5px;
}
form .frame {
	margin-bottom: 100px;
	border-radius: 10px;
}
form .frame.order, form .frame.rental {
	display: none;
}
form .frame .product-wrap:not(.invisible):last-of-type {
	border-bottom: none;
}
form.confirm .row {
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
form.confirm .row small {
	margin-left: calc(35% - 20px + 20px);
	margin-top: -10px;
}
form.confirm .row div .value {
	margin-left: 0;
}
form.confirm .row > p {
	height: auto;
}
form.confirm .row .value {
	min-height: 26px;
	font-size: 24px;
	-webkit-transform: translateY(-4px);
	    -ms-transform: translateY(-4px);
	        transform: translateY(-4px);
}
form.confirm .row .value:not(.w-auto) {
	width: 65%;
}
form.confirm .product-wrap .plan {
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
form.confirm .product-wrap .plan .plan-inner .row {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
form.confirm .product-wrap .plan .plan-inner .row > span {
	width: calc(45% - 20px);
	margin-bottom: 2px;
}
form.confirm .product-wrap input + span {
	display: block;
	font-size: 16px;
	margin-bottom: 5px;
}
form .row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 10px;
}
form .row > *:first-child {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: calc(30% - 20px);
	text-align: left;
	margin-left: 0 !important;
}
form .row > *:last-child {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 70%;
	margin-left: 20px;
}
form .row > label:first-child {
	width: 100% !important;
}
form .row > p {
	margin-bottom: 10px;
	height: 52px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
form .row .value {
	margin-bottom: 10px;
	margin-left: 20px;
	min-height: 52px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
form .row div p {
	margin-bottom: 10px;
}
form .row .row {
	margin-bottom: 0;
}
form .row .row > *:first-child {
	width: 55%;
}
form .row .row > *:last-child {
	width: calc(45% - 20px);
}
form .column-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
form .column-2 > * {
	width: 49%;
}
form .column-2 .value {
	margin-left: 0 !important;
}
form .column-2 .error {
	width: 100%;
}
form .product-select {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 40px 40px;
	margin-bottom: 100px;
	margin-right: -200px;
	margin-left: -200px;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
form .product-select .blank {
	width: 160px;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
form .product-select .error {
	text-align: center;
}
form .product-select .title {
	width: 100%;
	aspect-ratio: 1/1.1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 20px;
}
form .product-select .title p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	padding-top: 20px;
}
form .product-select .title-input {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 160px;
	text-align: right;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 40px;
}
form .product-select .title-input p {
	margin-right: -10px;
	text-align: center;
}
form .product-select .product-option {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 40px;
	width: 160px;
}
form .product-select .product-option [type=checkbox] {
	margin-right: 0;
}
form .product-select .product-option figure {
	margin-bottom: 20px;
}
form .product-select .product-option label {
	min-height: auto !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
}
form .product-select .product-option label span {
	display: none;
	-ms-flex-negative: 1 !important;
	    flex-shrink: 1 !important;
}
form .product-select .product-option label.inactive {
	pointer-events: none;
}
form .product-select .product-option label.inactive [type=checkbox] {
	background-color: #f4f4f4;
	border-color: #ccc;
}
form .product-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 60px;
	border-bottom: 1px solid #000;
	padding-bottom: 60px;
}
form .product-wrap:last-child {
	padding-bottom: 0;
	border-bottom: none;
}
form .product-wrap .product-img {
	text-align: center;
	margin-right: 40px;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 240px;
}
form .product-wrap .product-input {
	width: calc(100% - 220px);
}
form .product-wrap .product-input > *:last-child {
	margin-bottom: -10px;
}
form .product-wrap .row > *:first-child {
	width: calc(35% - 20px);
}
form .product-wrap .row > *:last-child {
	width: 65%;
}
form .product-wrap .plan {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 20px;
}
form .product-wrap .plan .plan-title {
	width: calc(35% - 20px);
	height: 52px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
form .product-wrap .plan .plan-inner {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 65%;
	margin-left: 20px;
	margin-bottom: -20px;
}
form .product-wrap .plan .plan-inner .error {
	margin-top: -10px;
}
form .product-wrap .plan .plan-inner p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
form .product-wrap .plan .plan-inner p span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 20px;
	background-color: #000;
	border-radius: 48px;
	height: 52px;
	width: 90px;
	margin-right: 8px;
	color: #fff;
}
form .product-wrap .plan .plan-inner .row p {
	width: 55%;
}
form .product-wrap .plan .plan-inner .row label {
	width: calc(45% - 20px);
	margin-left: 20px;
}

.accordion-trigger {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	border: 1px solid #000;
	height: 52px;
	width: 88%;
	padding-left: 12px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	border-radius: 3px;
	margin: 0 auto 20px;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	cursor: pointer;
}
.row + .accordion-trigger {
	margin-top: 60px;
}
.accordion-trigger span {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin-left: 10px;
	width: 48px;
	height: 52px;
	background-color: #000;
	position: relative;
	display: block;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}
.accordion-trigger span::before, .accordion-trigger span::after {
	content: "";
	display: block;
	width: 20px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	left: calc(50% - 10px);
	top: calc(50% - 1px);
}
.accordion-trigger span::after {
	-webkit-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	        transform: rotate(90deg);
	-webkit-transition: 0.3s;
	transition: 0.3s;
}
.accordion-trigger.open span::after {
	-webkit-transform: rotate(0deg);
	    -ms-transform: rotate(0deg);
	        transform: rotate(0deg);
	opacity: 0;
}
.accordion-trigger:hover {
	opacity: 0.5;
}
.accordion-content {
	margin-bottom: 60px;
}
.accordion-content + *:not(.accordion-trigger) {
	margin-top: 80px;
}

.form-step {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 100px;
	gap: 40px;
}
.form-step li {
	position: relative;
}
.form-step li span {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 100px;
	width: 100px;
	border-radius: 100px;
	background-color: #f4f4f4;
	border: 2px solid #fff;
	color: #999;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	-webkit-transform: scale(0.67);
	    -ms-transform: scale(0.67);
	        transform: scale(0.67);
}
.form-step li::before {
	content: "";
	display: block;
	width: 140px;
	height: 8px;
	background-color: #e4e4e4;
	position: absolute;
	left: 50%;
	top: calc(50% - 4px);
	z-index: 0;
}
.form-step li.done span {
	background-color: #000;
	color: #fff;
}
.form-step li.done::before {
	background-color: #666;
}
.form-step li.current span {
	background-color: #000;
	color: #fff;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}
.form-step li:last-child::before {
	content: none;
}

@media screen and (max-width: 1160px) {
	form {
		font-size: 14px;
	}
	form br {
		display: none;
	}
	form.confirm .row {
		display: block;
		margin-bottom: 12px;
	}
	form.confirm .row small {
		margin-left: 0;
		margin-top: -5px;
	}
	form.confirm .row .value {
		min-height: auto;
		margin-left: 0;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		font-size: 20px;
		-webkit-transform: none;
		    -ms-transform: none;
		        transform: none;
	}
	form.confirm .row .value:not(.w-auto) {
		width: 100%;
	}
	form.confirm .product-input > .row * {
		display: block;
		width: 100%;
	}
	form.confirm .product-input > .row span:not(.value) {
		margin-bottom: 6px;
	}
	form.confirm .product-wrap .plan .plan-inner .row {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	form.confirm .product-wrap .plan .plan-inner .row > span {
		margin-bottom: 6px;
	}
	form.confirm .product-wrap input + span {
		font-size: 12px;
	}
	form .row {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		margin-bottom: 6px;
	}
	form .row > *:first-child {
		width: 100%;
		height: auto;
	}
	form .row > *:last-child {
		width: 100%;
		margin-left: 0;
	}
	form .row > p {
		height: 40px;
		margin-bottom: 6px;
	}
	form .row .value {
		min-height: 40px;
	}
	form .row div p {
		margin-bottom: 6px;
	}
	form .row .row {
		margin-top: 10px;
		margin-bottom: 6px;
	}
	form .product-select {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin-right: auto;
		margin-left: auto;
	}
	form .product-select .blank {
		display: none;
	}
	form .product-select::after {
		content: none;
	}
	form .product-select .title-input {
		width: 100%;
	}
	form .product-select .title-input > p {
		display: none;
	}
	form .product-select .title {
		aspect-ratio: unset;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin-bottom: 0;
	}
	form .product-select .title p {
		margin-right: 0;
		padding-top: 0;
	}
	form .product-select .product-option {
		max-width: calc((100% - 20px) / 2);
		width: auto;
		gap: 20px;
	}
	form .product-select .product-option figure {
		margin-bottom: 10px;
	}
	form .product-select .product-option label {
		width: 100%;
	}
	form .product-select .product-option label span {
		display: block;
		margin: 0 !important;
	}
	form .product-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	form .product-wrap .product-img {
		padding-right: 0;
		margin: 0 0 40px;
		border-right: none;
		width: 150px;
	}
	form .product-wrap .product-input {
		width: 100%;
	}
	form .product-wrap .plan {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	form .product-wrap .plan .plan-title {
		width: auto;
		height: auto;
		margin-bottom: 6px;
	}
	form .product-wrap .plan .plan-inner {
		width: 100%;
		margin-left: 0;
		margin-bottom: -10px;
	}
	form .product-wrap .plan .plan-inner .error {
		margin-top: -6px;
	}
	form .product-wrap .plan .plan-inner p span {
		height: 40px;
		font-size: 18px;
		width: auto !important;
		padding: 0 15px;
	}
	form .product-wrap .plan .plan-inner .row {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
	}
	form .product-wrap .plan .plan-inner .row p {
		width: 60%;
	}
	form .product-wrap .plan .plan-inner .row label {
		width: calc(40% - 10px);
		margin-left: 10px;
	}
	form .product-wrap .row > *:first-child {
		width: 100%;
	}
	form .product-wrap .row > *:last-child {
		width: 100%;
	}
	.accordion-trigger {
		width: 100%;
		height: 60px;
	}
	.accordion-trigger span {
		width: 36px;
		height: 60px;
	}
	.accordion-trigger span::before, .accordion-trigger span::after {
		width: 16px;
		left: calc(50% - 8px);
	}
	.form-step {
		gap: 20px;
	}
	.form-step li::before {
		width: 100px;
	}
	.form-step li span {
		height: 80px;
		width: 80px;
		border-radius: 80px;
		font-size: 18px;
	}
}
@media screen and (max-width: 640px) {
	form .product-select {
		gap: 40px 20px;
	}
	form .product-select .product-option {
		max-width: calc((100% - 20px) / 2);
	}
}
/*****************************************************************************************************************/
#footer {
	background-color: #4C4C4C;
	position: relative;
}
#footer .container_pagetop {
	position: absolute;
	top: 20px;
	right: 20px;
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	z-index: 1;
	background-color: #4C4C4C;
}
#footer > .inner {
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	font-weight: 600;
	color: #fff;
	margin: 0 auto;
	width: 100%;
	max-width: 1010px;
	padding: 60px 15px 25px;
}
#footer > .inner .container_footer .container_footer_logo > p.logo {
	width: 140px;
}
#footer > .inner .container_footer_address {
	margin-top: 0.5em;
}
#footer > .inner .container_footer_address a {
	color: #fff;
}
#footer > .inner .container_footer_address > p {
	text-align: left;
	font-size: 10px;
	line-height: 2.2;
}
#footer > .inner .container_footer_address > p.content_name {
	font-size: 13px;
}
#footer > .inner > .container_copyright {
	font-size: 9px;
	margin-top: 40px;
}

#header a.button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-width: 120px;
	height: 37px;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 30px;
	padding: 0 18px;
	font-size: 13px;
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
}

#header a.button.bg_wht {
	background-color: #fff;
	color: #000 !important;
}

#header a.button.bg_wht.arrow {
	padding: 0 10px;
}

#header a.button.bg_wht.arrow > span {
	display: block;
	position: relative;
	text-align: center;
	width: 100%;
}

#header a.button.bg_wht.arrow > span:after {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.bg_wht.arrow > span:after {
		width: 2.1333vw;
		height: 2.1333vw;
	}
}
@media (max-width: 1024px) {
	#header a.button.bnr {
		font-weight: 600;
		background-color: #fff;
		color: #000 !important;
	}
}
@media (max-width: 1024px) {
	#header a.button.bnr {
		height: 60px;
		font-size: 20px;
		padding: 0 30px;
		text-align: left;
	}
}
@media (max-width: 768px) {
	#header a.button.bnr {
		height: 44px;
		font-size: 16px;
	}
}
@media (max-width: 1024px) {
	#header a.button.bnr > span {
		width: 100%;
		display: block;
		position: relative;
	}
}
#header a.button.bnr > span:after {
	content: "";
	display: block;
	width: 2.1333vw;
	height: 2.1333vw;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.more {
	margin: 0 auto;
	width: 313px;
	height: 54px;
	border: 1px solid #000;
	color: #000 !important;
	font-size: 20px;
	padding: 0 28px;
}

@media (max-width: 1024px) {
	#header a.button.more {
		width: 67.2vw;
		height: 11.4667vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
		padding: 0 6.9333vw;
	}
}
#header a.button.more > span {
	width: 100%;
	display: block;
	position: relative;
	text-align: center;
}

#header a.button.more > span:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.more.min {
	width: 252px;
	height: 43px;
	font-size: 16px;
}

#header a.button.more.xmin {
	width: 200px;
	height: 35px;
	font-size: 16px;
	padding: 0 20px;
}

#header a.button.back {
	margin: 0 auto;
	width: 313px;
	height: 54px;
	border: 1px solid #000;
	color: #000 !important;
	font-size: 20px;
	padding: 0 28px;
}

@media (max-width: 1024px) {
	#header a.button.back {
		width: 67.2vw;
		height: 11.4667vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
		padding: 0 6.9333vw;
	}
}
#header a.button.back > span {
	width: 100%;
	display: block;
	position: relative;
}

#header a.button.back > span:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-bottom: 1px solid #000;
	border-left: 1px solid #000;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.back.min {
	width: 252px;
	height: 43px;
	font-size: 16px;
}

#header a.button.back.xmin {
	width: 200px;
	height: 35px;
	font-size: 16px;
}

#header a.button.catebtn {
	min-width: 114px;
	height: 34px;
	border: 1px solid #000;
	color: #000 !important;
}

@media (max-width: 1024px) {
	#header a.button.catebtn {
		min-width: 25.8vw;
		height: 7.7333vw;
		padding: 0 3.3333vw;
		font-size: 12px;
		font-size: 3.2vw;
	}
}
#header a.button.catebtn.active {
	background-color: #000;
	color: #fff !important;
}

#header a.button.catebtn:hover {
	background-color: #000;
	color: #fff !important;
}

#header a.button.trial {
	width: 400px;
	height: 103px;
	border-radius: 55px;
	border: 1px solid #000;
	color: #fff !important;
	font-size: 22px;
	font-weight: bold;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	background-color: #000;
	position: relative;
	padding: 0 45px;
	line-height: 1.3636363636;
}

@media (max-width: 1024px) {
	#header a.button.trial {
		width: 86.4vw;
		height: 22.9333vw;
		border-radius: 23vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.trial > span {
	display: block;
	text-align: left;
}

#header a.button.trial > span:after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 45px;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.trial > span:after {
		width: 4vw;
		height: 4vw;
		right: 7.4667vw;
	}
}
#header a.button.trial:hover {
	opacity: 1;
}

#header a.button.trial.ver2 {
	background: none;
	color: #000 !important;
	width: 100%;
	max-width: 397px;
	height: 80px;
	border-width: 2px;
}

#header a.button.trial.ver2 > span:after {
	border-top-color: #000;
	border-right-color: #000;
}

#header a.button.demolarge {
	width: 400px;
	height: 80px;
	border-radius: 40px;
	border: 1px solid #fff;
	color: #000 !important;
	font-size: 18px;
	background-color: #fff;
	position: relative;
	padding: 0 45px;
}

@media (max-width: 1024px) {
	#header a.button.demolarge {
		width: 86.4vw;
		height: 15.4667vw;
		border-radius: 8vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.demolarge > span {
	display: block;
	position: relative;
	width: 100%;
}

#header a.button.demolarge > span:after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.demolarge > span:after {
		width: 2.1333vw;
		height: 2.1333vw;
	}
}
#header a.button.demolarge:hover {
	opacity: 1;
}

#header a.button.order {
	width: 400px;
	height: 80px;
	border-radius: 40px;
	border: 1px solid #000;
	color: #fff !important;
	font-size: 18px;
	background-color: #000;
	position: relative;
	padding: 0 45px;
}

@media (max-width: 1024px) {
	#header a.button.order {
		width: 86.4vw;
		height: 15.4667vw;
		border-radius: 8vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.order > span {
	display: block;
	position: relative;
	width: 100%;
}

#header a.button.order > span:after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.order:hover {
	opacity: 1;
}

#header a.button.download {
	border: 1px solid #000;
	color: #000 !important;
	font-size: 22px;
	font-weight: 600;
	height: 48px;
}

@media (max-width: 1024px) {
	#header a.button.download {
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.download2 {
	border: 1px solid #000;
	font-size: 18px;
	height: 62px;
}

@media (max-width: 1024px) {
	#header a.button.download2 {
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.demo {
	width: 164px;
	height: 60px;
	color: #000;
	background-color: #fff;
	font-size: 20px;
}

@media (max-width: 1024px) {
	#header a.button.demo {
		width: 41.8667vw;
		height: 14.93333vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.demo > span {
	padding: 0 20px 0 0;
	position: relative;
}

@media (max-width: 1024px) {
	#header a.button.demo > span {
		padding: 0 5.3333vw 0 0;
	}
}
#header a.button.demo > span:after {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.demo > span:after {
		width: 1.8667vw;
		height: 1.8667vw;
	}
}
#header a.button.demo.wide {
	width: 225px;
	font-size: 22px;
}

@media (max-width: 1024px) {
	#header a.button.demo.wide {
		width: 54.6666666667vw;
		height: 15.2vw;
		border-radius: 8vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.demo.wide > span {
	width: 90%;
	text-align: center;
	padding-left: 10px;
}

@media (max-width: 1024px) {
	#header a.button.demo.wide > span {
		padding-left: 2.6667vw;
	}
}
#header a.button.demo.wide > span:after {
	width: 10px;
	height: 10px;
}

@media (max-width: 1024px) {
	#header a.button.demo.wide > span:after {
		width: 2.1333333333vw;
		height: 2.1333333333vw;
	}
}
#header a.button.demo2 {
	width: 242px;
	height: 64px;
	font-size: 20px;
	padding: 0 20px;
	color: #000;
	border: 1px solid #000;
}

@media (max-width: 1024px) {
	#header a.button.demo2 {
		width: 41.8667vw;
		height: 14.93333vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.demo2 > span {
	padding: 0 20px 0 0;
	position: relative;
}

@media (max-width: 1024px) {
	#header a.button.demo2 > span {
		padding: 0 5.3333vw 0 0;
	}
}
#header a.button.demo2 > span:after {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.demo2 > span:after {
		width: 1.8667vw;
		height: 1.8667vw;
	}
}
#header a.button.instructions {
	width: 273px;
	height: 50px;
	color: #000;
	border: 1px solid #000;
	font-size: 17px;
}

@media (max-width: 1024px) {
	#header a.button.instructions {
		width: 41.8667vw;
		height: 14.93333vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.instructions > span {
	padding: 0 20px 0 0;
	position: relative;
}

@media (max-width: 1024px) {
	#header a.button.instructions > span {
		padding: 0 5.3333vw 0 0;
	}
}
#header a.button.instructions > span:after {
	content: "";
	display: block;
	width: 17px;
	height: 14px;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background-image: url("../images/common/icon_blank_bk.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#header a.button.instructions.wide {
	width: 100%;
	max-width: 100%;
	height: 66px;
	font-size: 22px;
	border-radius: 35px;
	padding: 0 44px;
}

@media (max-width: 1024px) {
	#header a.button.instructions.wide {
		height: 12vw;
		border-radius: 7vw;
		padding: 0 5.3333vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.instructions.wide > span {
	width: 100%;
}

#header a.button.instructions.wide > span:after {
	background: none;
	width: 12px;
	height: 12px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.list {
	width: 240px;
	height: 64px;
	border-radius: 40px;
	border: 1px solid #000;
	color: #000 !important;
	font-size: 20px;
	background-color: #CDCDCD;
	position: relative;
	padding: 0 45px;
}

@media (max-width: 1024px) {
	#header a.button.list {
		width: 86.4vw;
		height: 15.4667vw;
		border-radius: 8vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.list > span {
	display: block;
	position: relative;
	width: 100%;
}

#header a.button.list > span:after {
	content: none;
}

#header a.button.list:hover {
	opacity: 1;
}

#header a.button.dl {
	width: 400px;
	height: 50px;
	border-radius: 40px;
	border: 1px solid #000;
	color: #000 !important;
	font-size: 20px;
	background-color: #CDCDCD;
	position: relative;
	padding: 0 25px;
}

@media (max-width: 1024px) {
	#header a.button.dl {
		width: 100%;
		height: 15.4667vw;
		border-radius: 8vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.button.dl > span {
	display: block;
	position: relative;
	width: 100%;
}

#header a.button.dl > span:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

#header a.button.dl:hover {
	opacity: 1;
}

#header a.button.kv_rental {
	width: 100%;
	max-width: 390px;
	height: 74px;
	border-radius: 40px;
	border: 4px solid #fff;
	font-size: 28px;
	font-weight: bold;
	background-color: #4C4C4C;
}

@media (max-width: 1024px) {
	#header a.button.kv_rental {
		max-width: 100%;
		border: 2px solid #fff;
		height: 9.8667vw;
		border-radius: 5.3333vw;
		font-size: 18px;
		font-size: 4.8vw;
	}
}
#header a.button.kv_order {
	width: 100%;
	max-width: 390px;
	height: 74px;
	border-radius: 40px;
	border: 4px solid #707070;
	font-size: 28px;
	font-weight: bold;
	color: #000;
	background-color: #fff;
}

#header a.button.manual {
	width: 100%;
	height: 66px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 35px;
	border: 1px solid #000;
	color: #000;
	font-size: 22px;
	font-weight: bold;
	padding: 0 40px;
}

@media (max-width: 1024px) {
	#header a.button.manual {
		height: 12vw;
		border-radius: 6.6667vw;
		font-size: 15px;
		font-size: 4vw;
		padding: 0 18.1333vw;
	}
}
#header a.button.manual > span {
	display: block;
	position: relative;
	padding: 0 15px 0 0;
	width: 100%;
}

@media (max-width: 1024px) {
	#header a.button.manual > span {
		padding: 0 4vw 0 0;
	}
}
#header a.button.manual > span:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header a.button.manual > span:after {
		width: 1.6vw;
		height: 1.6vw;
	}
}
#header a.btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	max-width: 270px;
	min-width: 120px;
	height: 37px;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 30px;
	padding: 0 18px;
	font-size: 13px;
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
}

#header a.btn.download {
	border: 1px solid #000;
	color: #000 !important;
	font-size: 16px;
}

@media (max-width: 1024px) {
	#header a.btn.download {
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header a.top_right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 55px;
	min-height: 110px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.2;
	color: #000;
	background-color: #fff;
	border-radius: 7px 0 0 7px;
	border: 0.25px solid #000;
	padding: 10px 0;
}

@media (max-width: 1024px) {
	#header a.top_right {
		width: 8.5333vw;
		min-height: 24vw;
		font-size: 10px;
		font-size: 2.6666666667vw;
		padding: 3.2vw 0;
	}
}
#header a.top_right > span {
	width: 1em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

@media (max-width: 1024px) {
	#header a.bannerbtn {
		width: 41.0667vw;
		height: 11.2vw;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		color: #fff;
		border: 1px solid #fff;
		border-radius: 6vw;
		font-size: 14px;
		font-size: 3.7333333333vw;
	}
}
@media (max-width: 1024px) {
	#header a.bannerbtn.bg_wht {
		background-color: #fff;
		color: #000 !important;
	}
}
#header a.app {
	width: 100%;
	max-width: 214px;
	height: 53px;
	background-color: #fff;
	border-radius: 30px;
	color: #000;
	font-size: 21px;
	font-weight: 500;
	padding: 0 25px;
}

@media (max-width: 1024px) {
	#header a.app {
		max-width: 48.5333vw;
		height: 12vw;
		border-radius: 7.2vw;
		font-size: 15px;
		font-size: 4vw;
		padding: 0 6.6667vw;
	}
}
#header a.app > span {
	display: block;
	width: 100%;
	position: relative;
	padding: 0 20px 0 0;
	text-align: center;
}

@media (max-width: 1024px) {
	#header a.app > span {
		padding: 0 5.3333vw 0 0;
	}
}
#header a.app > span:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
	position: absolute;
	top: 50%;
	right: 0;
}

@media (max-width: 1024px) {
	#header a.app > span:after {
		width: 1.8667vw;
		height: 1.8667vw;
	}
}
#header a.disabled {
	pointer-events: none;
}

#header input {
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	font-size: 12px;
	/* radio */
}

#header input.pointnone {
	pointer-events: none;
}

#header input[type=text] {
	width: 100%;
	height: 50px;
	padding: 1em;
	border: 1px solid #000;
	border-radius: 0;
	font-size: 14px;
}

@media (max-width: 1024px) {
	#header input[type=text] {
		height: 10.13333vw;
		font-size: 14px;
		font-size: 3.7333333333vw;
	}
}
#header input[type=text].middle {
	width: 50%;
}

#header input[type=text].middle2 {
	width: 230px;
}

@media (max-width: 1024px) {
	#header input[type=text].middle2 {
		width: 50%;
	}
}
#header input[type=text].small {
	width: 180px;
}

#header input[type=text].ssmall {
	width: 140px;
}

@media (max-width: 1024px) {
	#header input[type=text].ssmall {
		width: 30.2667vw;
	}
}
#header input[type=text].xsmall {
	width: 100px;
}

@media (max-width: 1024px) {
	#header input[type=text].xsmall {
		width: 20.2667vw;
	}
}
#header input[type=text].xxsmall {
	width: 100px;
	height: 39px;
	font-size: 11px;
}

@media (max-width: 1024px) {
	#header input[type=text].xxsmall {
		width: 20.2667vw;
	}
}
@media (max-width: 1024px) {
	#header input[type=text].itemnumber {
		width: 21.3333333333vw;
		height: 13.3333vw;
	}
}
#header input[type=checkbox] {
	display: none;
}

#header input[type=checkbox] + label {
	display: inline-block;
	line-height: 1;
	position: relative;
}

@media (max-width: 1024px) {
	#header input[type=checkbox] + label {
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header input[type=checkbox] + label:before {
	line-height: 1;
	content: "";
	display: inline-block;
	width: 19px;
	height: 19px;
	border: 1px solid #000;
	vertical-align: middle;
	margin-right: 0.5em;
	margin-top: -0.1em;
}

@media (max-width: 1024px) {
	#header input[type=checkbox] + label:before {
		width: 5.0667vw;
		height: 5.0667vw;
	}
}
#header input[type=checkbox]:checked + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	left: 0.4em;
	width: 0.35em;
	height: 0.9em;
	border-bottom: 3px solid #000;
	border-right: 3px solid #000;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
}

#header input[type=checkbox]#satori__privacy_policy_agreement + label {
	display: inline-block;
	line-height: 1;
	position: relative;
}

@media (max-width: 1024px) {
	#header input[type=checkbox]#satori__privacy_policy_agreement + label {
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header input[type=checkbox]#satori__privacy_policy_agreement + label:before {
	line-height: 1;
	content: "";
	display: inline-block;
	width: 19px;
	height: 19px;
	border: 1px solid #000;
	vertical-align: middle;
	margin-right: 0.5em;
	margin-top: -0.1em;
}

@media (max-width: 1024px) {
	#header input[type=checkbox]#satori__privacy_policy_agreement + label:before {
		width: 5.0667vw;
		height: 5.0667vw;
	}
}
#header input[type=checkbox]#satori__privacy_policy_agreement:checked + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 45%;
	left: 0.6em;
	width: 0.35em;
	height: 0.9em;
	border-bottom: 3px solid #000;
	border-right: 3px solid #000;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
}

#header input[type=checkbox]#satori__custom_field_fdb5166b2ed97efd2_0 + label {
	display: inline-block;
	line-height: 1;
	position: relative;
}

@media (max-width: 1024px) {
	#header input[type=checkbox]#satori__custom_field_fdb5166b2ed97efd2_0 + label {
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header input[type=checkbox]#satori__custom_field_fdb5166b2ed97efd2_0 + label:before {
	line-height: 1;
	content: "";
	display: inline-block;
	width: 19px;
	height: 19px;
	border: 1px solid #000;
	vertical-align: middle;
	margin-right: 0.5em;
	margin-top: -0.1em;
}

@media (max-width: 1024px) {
	#header input[type=checkbox]#satori__custom_field_fdb5166b2ed97efd2_0 + label:before {
		width: 5.0667vw;
		height: 5.0667vw;
	}
}
#header input[type=checkbox]#satori__custom_field_fdb5166b2ed97efd2_0:checked + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 45%;
	left: 0.6em;
	width: 0.35em;
	height: 0.9em;
	border-bottom: 3px solid #000;
	border-right: 3px solid #000;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
}

#header input[type=radio] {
	display: none;
}

#header input[type=radio] + label {
	display: inline-block;
	line-height: 1;
	position: relative;
}

#header input[type=radio] + label:before {
	line-height: 1;
	content: "";
	display: inline-block;
	width: 19px;
	height: 19px;
	border: 1px solid #000;
	vertical-align: middle;
	margin-right: 0.5em;
	margin-top: -0.1em;
}

@media (max-width: 1024px) {
	#header input[type=radio] + label:before {
		width: 5.0667vw;
		height: 5.0667vw;
	}
}
#header input[type=radio]:checked + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 45%;
	left: 0.4em;
	width: 0.35em;
	height: 0.9em;
	border-bottom: 3px solid #000;
	border-right: 3px solid #000;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
}

#header textarea {
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	width: 100%;
	height: 150px;
	padding: 1em;
	font-size: 12px;
	border: 1px solid #000;
	border-radius: 0;
}

#header button {
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border: 1px solid #000;
	background-color: #000;
	border-radius: 40px;
	font-size: 18px;
	width: 100%;
	max-width: 400px;
	height: 80px;
	color: #fff;
	letter-spacing: 0.05em;
	line-height: 1;
	cursor: pointer;
	padding: 0 65px;
}

@media (max-width: 1024px) {
	#header button {
		height: auto;
		padding: 6vw;
		font-size: 16px;
		font-size: 4.2666666667vw;
	}
}
#header button > span {
	width: 100%;
	display: block;
	position: relative;
}

#header button > span:after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	right: 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	-ms-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 1024px) {
	#header button > span:after {
		width: 3.7vw;
		height: 3.7vw;
	}
}
#header button.none {
	pointer-events: none;
}

#header button.ui-datepicker-close {
	height: auto;
}

.anime {
	opacity: 0;
}

.anime.animated {
	-webkit-animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
	animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
}

.anime2 li {
	opacity: 0;
}

@media (max-width: 1024px) {
	.anime2 li {
		opacity: 1;
	}
}
.anime2.animated li:nth-of-type(1) {
	-webkit-animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s forwards;
	animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s forwards;
}

@media (max-width: 1024px) {
	.anime2.animated li:nth-of-type(1) {
		-webkit-animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s forwards;
		animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s forwards;
	}
}
.anime2.animated li:nth-of-type(2) {
	-webkit-animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s forwards;
	animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s forwards;
}

@media (max-width: 1024px) {
	.anime2.animated li:nth-of-type(2) {
		-webkit-animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s forwards;
		animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s forwards;
	}
}
.anime2.animated li:nth-of-type(3) {
	-webkit-animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s forwards;
	animation: slideTitle 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s forwards;
}

@media (max-width: 1024px) {
	.anime2.animated li:nth-of-type(3) {
		-webkit-animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s forwards;
		animation: resetanime 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s forwards;
	}
}
.anime3 {
	opacity: 0;
}

.anime3.animated {
	-webkit-animation: fadeIn 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
	animation: fadeIn 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
}

.d-demo__list--left {
	-webkit-animation: infinity-scroll-left 50s linear 0s infinite normal;
	animation: infinity-scroll-left 50s linear 0s infinite normal;
}

@media (max-width: 1024px) {
	.d-demo__list--left {
		-webkit-animation: infinity-scroll-left 30s linear 0s infinite normal;
		animation: infinity-scroll-left 30s linear 0s infinite normal;
	}
}
.gif_anime_bar {
	-webkit-animation: infinity-actionbar 5s linear 0s infinite normal;
	animation: infinity-actionbar 5s linear 0s infinite normal;
}

.fadeout {
	-webkit-animation: fadeOut 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0s forwards;
	animation: fadeOut 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0s forwards;
}

@-webkit-keyframes slideTitle {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
@keyframes slideTitle {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
@-webkit-keyframes slideIn {
	0% {
		opacity: 0;
		-webkit-transform: translate(20px, 0);
		transform: translate(20px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
@keyframes slideIn {
	0% {
		opacity: 0;
		-webkit-transform: translate(20px, 0);
		transform: translate(20px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@-webkit-keyframes scaleWide {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.1);
		transform: scale(0.1);
	}
	30% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes scaleWide {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.1);
		transform: scale(0.1);
	}
	30% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes blurInTitle {
	from, to {
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		-webkit-transform: scale(1);
		transform: scale(1);
		-webkit-filter: blur(30px);
		filter: blur(30px);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
		-webkit-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blurInTitle {
	from, to {
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		-webkit-transform: scale(1);
		transform: scale(1);
		-webkit-filter: blur(30px);
		filter: blur(30px);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
		-webkit-filter: blur(0);
		filter: blur(0);
	}
}
@-webkit-keyframes infinity-scroll-left {
	from {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	to {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}
@keyframes infinity-scroll-left {
	from {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	to {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}
@-webkit-keyframes infinity-actionbar {
	from {
		left: 5%;
	}
	to {
		left: 95%;
	}
}
@keyframes infinity-actionbar {
	from {
		left: 5%;
	}
	to {
		left: 95%;
	}
}
@-webkit-keyframes slideXopen {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
		-webkit-transform-origin: right center;
		transform-origin: right center;
	}
	to {
		-webkit-transform: scale3d(0, 1, 1);
		transform: scale3d(0, 1, 1);
		-webkit-transform-origin: right center;
		transform-origin: right center;
	}
}
@keyframes slideXopen {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
		-webkit-transform-origin: right center;
		transform-origin: right center;
	}
	to {
		-webkit-transform: scale3d(0, 1, 1);
		transform: scale3d(0, 1, 1);
		-webkit-transform-origin: right center;
		transform-origin: right center;
	}
}
@-webkit-keyframes resetanime {
	0% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
@keyframes resetanime {
	0% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}
/*
    common
*/
.util_sp {
	display: none !important;
}

@media (max-width: 1024px) {
	.util_sp {
		display: block !important;
	}
}
.util_tb {
	display: none !important;
}

@media (max-width: 1024px) {
	.util_tb {
		display: block !important;
	}
}
.util_pc {
	display: block !important;
}

@media (max-width: 1024px) {
	.util_pc {
		display: none !important;
	}
}
.util_pctb {
	display: block !important;
}

@media (max-width: 1024px) {
	.util_pctb {
		display: none !important;
	}
}
@media print {
	img {
		display: none;
	}
}
/*
    Nav
*/
#nav {
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0 0 0 40px;
	font-weight: 600;
}

@media (max-width: 1024px) {
	#nav {
		display: none;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background-color: #4C4C4C;
		opacity: 0;
		-webkit-transition: opacity 0.3s ease-in-out 0.2s;
		transition: opacity 0.3s ease-in-out 0.2s;
		overflow: auto;
		padding: 21.3333vw 8vw;
	}
}
#nav > .container_header_search_body {
	width: 100%;
}

#nav > .container_header_search_body div {
	position: relative;
}

#nav > .container_header_search_body input[type=text] {
	background-color: #fff !important;
	border-radius: 5.8666666667vw !important;
	height: 11.4666666667vw !important;
	border: none !important;
}

#nav > .container_header_search_body input[type=submit] {
	position: absolute;
	top: 50%;
	right: 5%;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	width: 6.1333333333vw;
	height: 6.1333333333vw;
	background-image: url("../images/common/icon_search2.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#nav > .container_nav_main {
	width: calc(100% - 235px);
	position: relative;
}

@media (max-width: 1024px) {
	#nav > .container_nav_main {
		width: 100%;
	}
}
@media (max-width: 1024px) {
	#nav > .container_nav_main {
		width: auto;
	}
}
#nav > .container_nav_main > .container_nav_solacell {
	position: absolute;
	bottom: 12px;
	right: 6px;
	font-size: 15px;
	margin-right: 15px;
}

@media screen and (max-width: 1239px) {
	#nav > .container_nav_main > .container_nav_solacell {
		margin-top: 0.5em;
		position: static;
	}
}
#nav > .container_nav_main > .container_nav_solacell a {
	color: #fff;
}

#nav > .container_nav_main > .container_nav_solacell ul {
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#nav > .container_nav_main > .container_nav_solacell ul > li {
	padding-left: 1em;
}

#nav > .container_nav_sub {
	width: 218px;
}

@media (max-width: 1024px) {
	#nav > .container_nav_sub {
		display: none;
	}
}
#nav > .container_nav_sub ul.container_navi_list > li {
	padding: 0 0 6px 0;
	width: 100%;
}

#nav > .container_nav_sub ul.container_navi_list > li a.button {
	width: 100%;
	padding: 0 6px;
}

#nav > .container_nav_sub ul.container_navi_list > li:last-of-type {
	padding: 0;
}

#nav ul.container_navi_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 15px;
	list-style: none;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list {
		display: block;
		margin: 0;
		font-size: 18px;
	}
}
@media (max-width: 768px) {
	#nav ul.container_navi_list {
		font-size: 14px;
	}
}
#nav ul.container_navi_list a {
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transition: background-color 0.3s ease-in-out;
	transition: background-color 0.3s ease-in-out;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list a {
		border: none;
		min-width: 10px;
		min-height: 10px;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list a {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
}
#nav ul.container_navi_list a:hover {
	opacity: 1;
	background-color: #fff;
	font-weight: 600;
	color: #000;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list a:hover {
		font-weight: 400;
		background: none;
		color: #fff;
	}
}
#nav ul.container_navi_list > li {
	text-align: left;
	padding: 6px 4px;
	min-width: 120px;
	min-height: 32px;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list > li {
		min-width: 10px;
		min-height: 10px;
		padding: 0.5em;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li {
		padding: 0.5em 0;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li > ul {
		margin-top: 0.5em;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li > ul > li {
		padding: 0.5em 0;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li > ul > li {
		padding: 0.5em 0;
	}
}
#nav ul.container_navi_list > li.list_item a {
	min-width: 120px;
	min-height: 32px;
	border: 1px solid #fff;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.list_item a {
		border: none;
		min-width: 10px;
		min-height: 10px;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.list_item a {
		display: block;
	}
}
#nav ul.container_navi_list > li.list_item a:hover {
	opacity: 1;
	background-color: #fff;
	font-weight: 600;
	color: #000;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.list_item a:hover {
		background: none;
		color: #fff;
	}
}
#nav ul.container_navi_list > li.list_item a.appdl {
	width: 248px;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.specailcontent {
		margin-top: 4.8vw;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.sns {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding: 0.25em 0;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.sns.space {
		margin-top: 0.5em;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.sns a {
		display: block;
		width: 40px;
	}
}
@media (max-width: 1024px) {
	#nav ul.container_navi_list > li.sns a img {
		width: 100%;
	}
}
#nav ul.container_navi_list.wide {
	width: 100%;
}

@media (max-width: 1024px) {
	#nav ul.container_navi_list.wide > li {
		padding: 1.3333vw 0;
	}
}
@media (max-width: 1024px) {
	#nav.active {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 20px 40px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-animation: fadeIn 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
		animation: fadeIn 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
	}
}
@media (max-width: 768px) {
	#nav.active {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		gap: 20px 40px;
	}
}
.ver2 #nav ul.container_navi_list > li.list_item a {
	border-color: #000;
	color: #000;
}

@media (max-width: 1024px) {
	.ver2 #nav ul.container_navi_list > li.list_item a {
		color: #fff;
	}
}
.ver2 #nav ul.container_navi_list > li.list_item a:hover {
	background-color: #000;
	color: #fff;
}

.ver2 #nav ul.container_navi_list > li.list_item a.button.bg_wht {
	background-color: #000;
	color: #fff !important;
}

.ver2 #nav > .container_nav_main > .container_nav_solacell a {
	color: #000;
}

#header {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-color: rgba(86, 86, 86, 0.8);
	width: 100%;
	z-index: 100 !important;
	height: auto !important;
}

@media (max-width: 1024px) {
	#header {
		position: fixed;
		top: 0;
		left: 0;
	}
}
#header * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#header input {
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	font-size: 12px;
}

#header #searchform {
	height: auto !important;
	border: none;
	background-color: transparent;
}

#header #searchform #s {
	width: 100%;
}

@media (max-width: 1024px) {
	#header {
		z-index: 4;
	}
}
#header > .inner {
	margin: 0 auto;
	width: 100%;
	max-width: 1242px;
	padding: 10px 15px 10px 27px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: "Avenir Next", "Segoe UI Variable Display", Arial, "Lato", "Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN W6", "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
}

@media (max-width: 1280px) {
	#header > .inner {
		padding: 10px 15px 10px 27px;
	}
}
@media (max-width: 1024px) {
	#header > .inner {
		height: 64px;
	}
}
@media (max-width: 1024px) {
	#header > .inner {
		height: auto;
		max-height: 100px;
		padding: 4vw 5.3333vw 4vw 8vw;
	}
}
#header > .inner > .logo {
	margin-top: -10px;
	width: 140px;
	position: relative;
	z-index: 1;
}

@media (max-width: 1024px) {
	#header > .inner > .logo {
		margin-top: 0;
	}
}
@media (max-width: 1024px) {
	#header > .inner > .logo {
		margin-top: -1.3333vw;
	}
}
#header > .inner > .logo img {
	width: 100%;
	vertical-align: bottom;
}

@media (max-width: 1024px) {
	#header > .inner > .logo img {
		width: 24vw;
	}
}
@media (max-width: 1024px) {
	#header > .inner > .logo a {
		display: block;
		position: relative;
		text-align: left;
	}
}
#header > .inner > .logo a img.nav_logo {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

#header > .inner > .logo a img.nav_logo.active {
	opacity: 1;
}

#header > .inner > .link_head {
	width: calc(100% - 140px);
}

#header > .inner > .container_header_search {
	position: fixed;
	top: 0;
	right: 0;
	width: 56px;
	height: 110px;
	background-color: #000;
}

#header > .inner > .container_header_search a {
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

#header > .inner > .container_header_search a > span {
	display: block;
	width: 1.1em;
	font-size: 10px;
	padding-bottom: 23px;
	position: relative;
	line-height: 1.1;
}

#header > .inner > .container_header_search a > span:after {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background-image: url("../images/common/icon_search.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#header > .inner > .container_header_search .container_header_search_body {
	position: absolute;
	top: 0;
	right: 0;
	width: 375px;
	height: 100%;
	background-color: #000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	opacity: 0;
	-webkit-transform: translate(100%, 0);
	-ms-transform: translate(100%, 0);
	transform: translate(100%, 0);
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#header > .inner > .container_header_search .container_header_search_body div {
	position: relative;
}

#header > .inner > .container_header_search .container_header_search_body input[type=text] {
	background-color: #fff;
	width: 296px;
	height: 41px;
	border-radius: 25px;
}

#header > .inner > .container_header_search .container_header_search_body #searchsubmit {
	position: absolute;
	top: 50%;
	right: 6%;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	width: 22px;
	height: 22px;
	cursor: pointer;
	background-image: url("../images/common/icon_search2.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#header > .inner > .container_header_search .container_header_search_body.active {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

#header > .inner > .container_humburgermenu {
	display: none;
}

@media (max-width: 1024px) {
	#header > .inner > .container_humburgermenu {
		display: block;
	}
}
@media (max-width: 1024px) {
	#header > .inner > .container_humburgermenu {
		display: block;
	}
}
@media (max-width: 1024px) {
	#header > .inner > .container_humburgermenu a {
		display: block;
		width: 40px;
		height: 40px;
		position: relative;
	}
}
@media (max-width: 1024px) {
	#header > .inner > .container_humburgermenu a {
		width: 6.1333vw;
		height: 6.1333vw;
	}
}
#header > .inner > .container_humburgermenu a > span.bar {
	display: block;
	width: 100%;
	height: 1px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, 0) rotate(0);
	-ms-transform: translate(0, 0) rotate(0);
	transform: translate(0, 0) rotate(0);
	-webkit-transition: transform 0.3s ease-in-out;
	-webkit-transition: -webkit-transform 0.3s ease-in-out;
	transition: -webkit-transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

#header > .inner > .container_humburgermenu a > span.bar:nth-of-type(1) {
	top: 30%;
	width: 80%;
}

#header > .inner > .container_humburgermenu a > span.bar:nth-of-type(2) {
	top: 70%;
}

#header > .inner > .container_humburgermenu a:hover {
	opacity: 1;
}

#header > .inner > .container_humburgermenu a.active > span.bar:nth-of-type(1) {
	top: 50%;
	width: 100%;
	-webkit-transform: translate(0, 0) rotate(45deg);
	-ms-transform: translate(0, 0) rotate(45deg);
	transform: translate(0, 0) rotate(45deg);
}

#header > .inner > .container_humburgermenu a.active > span.bar:nth-of-type(2) {
	top: 50%;
	-webkit-transform: translate(0, 0) rotate(135deg);
	-ms-transform: translate(0, 0) rotate(135deg);
	transform: translate(0, 0) rotate(135deg);
}

#header.ver2 > .inner > .container_header_search, #header .ver3 > .inner > .container_header_search {
	background-color: #4C4C4C;
}

#header {
	background-color: rgba(205, 205, 205, 0.8);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 3;
}

#header > .inner > .container_humburgermenu a > span.bar {
	background-color: #000;
}

#header > .inner > .container_humburgermenu a.active > span.bar {
	background-color: #fff;
}

#header {
	height: auto;
}
/*# sourceMappingURL=style.css.map */