/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
*{box-sizing:border-box;margin:0;padding:0;}
html {font-family: sans-serif;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}
body {margin: 0;}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {display: block;margin:0;padding:0;}
audio,
canvas,
progress,
video {display: inline-block;}

audio:not([controls]) {display: none;height: 0;}

progress {vertical-align: baseline;}

template,
[hidden] {display: none;}

a {background-color: transparent;-webkit-text-decoration-skip: objects;}

a:active,
a:hover {outline-width: 0;}

abbr[title] {border-bottom: none;text-decoration: underline;text-decoration: underline dotted;}

b,
strong {font-weight: inherit;font-weight: bolder;}

dfn {font-style: italic;}

h1 {font-size: 200%;}
h2 {font-size: 150%;}
h3 {font-size: 128%;}
h4 {font-size: 114%;}
h5 {font-size: 100%;}
h6 {font-size: 100%;}

mark {background-color: #ff0;color: #000;}

small {font-size: 80%;}

sub,
sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sub {bottom: -0.25em;}
sup {top: -0.5em;}

img {border-style: none; vertical-align:top; }

svg:not(:root) {overflow: hidden;}

code,
kbd,
pre,
samp {font-family: monospace, monospace;font-size: 1em;}

figure {margin:0;}

hr {box-sizing: content-box;height: 0;overflow: visible;}

button,
input,
optgroup,
select,
textarea {font: inherit;margin: 0;}

optgroup {font-weight: bold;}

button,
input {overflow: visible;}

button,
select {text-transform: none;}

button,
html [type="button"],
[type="reset"],
[type="submit"] {-webkit-appearance: button;}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {border-style: none;padding: 0;}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {outline: 1px dotted ButtonText;}

fieldset {border: 1px solid #c0c0c0;margin: 0 2px;padding: 0.35em 0.625em 0.75em;}

legend {box-sizing: border-box;color: inherit;display: table;max-width: 100%;padding: 0;white-space: normal;}

textarea {overflow: auto;}

[type="checkbox"],
[type="radio"] {box-sizing: border-box;padding: 0;}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {height: auto;}

[type="search"] {-webkit-appearance: textfield;outline-offset: -2px;}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}

::-webkit-input-placeholder {color: inherit;opacity: 0.54;}
::-webkit-file-upload-button {-webkit-appearance: button;font: inherit;}

/* style */
html {
	font-size: 16px;
	height: 100vh;
}
@media screen and (max-width:1365px) { html { font-size: 1.1713vw; } }
@media screen and (max-width:768px) { html { font-size: 5vw; } }

body {
	font-family: "游明朝",serif;
	font-weight: 500;
	font-size: 1rem;
	line-height:1.43;
	color:#000;
}
table { border-collapse:collapse; border-spacing:0; }
th,td { empty-cells: show; }
ul,ol { list-style: none; }
li {list-style-type:none;}
a { color:#000; text-decoration:none; }
a:focus,
a:hover {}
address,em,i,q { font-style: normal; }
.wrapper {
	overflow: hidden;
}
#mv {
	background-image: url(../img/slide01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	position: relative;
}
#mv::before {
	content: '';
	display: block;
	position: relative;
	padding: 53.63% 0 0;
}
.image2,
.image4 { background-position: 22% top !important; }
@media screen and (max-width:768px) {
	
	#mv::before {
		padding: 150% 0 0;
	}
}
#main {
	position: absolute;
	top: 24%;
    right: 0;
    bottom: auto;
    left: 62.3%;
	z-index: 1;
	color: #fff;
	text-shadow: 0 0 3rem rgba(0,0,0,0.2);
	padding: 0;
}
@media screen and (max-width:1799px) {
	#main {
		left: 54%;
	}
}
@media screen and (max-width:1439px) {
	#main {
		left: 50%;
	}
}
@media screen and (max-width:768px) {
	#main {
		left: 60%;
	}
}

#siteid {}
#siteid > span {
	display: inline-block;
	font-size: 7.5rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	letter-spacing: -0.4rem;
	line-height: 1;
	position: relative;
	vertical-align: middle;
}
#siteid .alphabet {
	font-size: 1rem;
	font-family: "Segoe UI", Arial, Helvetica, "sans-serif";
	font-weight: normal;
	letter-spacing: 0.4em;
	line-height: 1;
	position: absolute;
	bottom: 0.66em;
	right: 0.75em;
}
#siteid > small {
	font-size: 1.5rem;
	font-weight: normal;
	line-height: 1;
	vertical-align: middle;
	margin: 0 0 0 0.75rem;
}
@media screen and (max-width:768px) {
	#siteid > span {
		font-size: 5rem;
		line-height: 0.81;
		position: relative;
		vertical-align: top;
		text-align: center;
		width: 1em;
	}
	#siteid .alphabet {
		font-size: 0.875rem;
		font-family: "Segoe UI", Arial, Helvetica, "sans-serif";
		font-weight: normal;
		letter-spacing: 0.4em;
		line-height: 1;
		position: absolute;
		bottom: 0.75em;
		right: auto;
		left: 0;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	#siteid > small {
		display: inline-block;
		font-size: 1rem;
		line-height: 1;
		vertical-align: top;
		text-align: center;
		width: 1em;
		margin: 0;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
}

.page_price {
	border-top: solid 1px #fff;
	border-bottom: solid 1px #fff;
	padding: 2rem 0 1.875rem;
	margin: 1rem 0 1.5rem;
	font-size: 1.5rem;
	font-feature-settings: 'palt';
	line-height: 1;
}
.page_price dl{
	margin: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.page_price * + dl {margin-top: 1.375rem;}

.page_price dl > dt,
.page_price dl > dd {}
.page_price dl > dt {
	width: 19.5rem;
	padding: 0 1rem;
	text-align-last: justify;
	text-justify:inter-ideograph;
}
.page_price dl > dd {
	width: calc( 100% - 19.5rem );
	border-left: solid 1px #fff;
	padding: 0 0 0 1rem;
}
.page_notes {
	font-size: 0.875rem;
	font-feature-settings: 'palt';
	line-height: 1.5;
}
.main_box_btn { margin: 1.5rem 0 0 -0.75rem; }
.mv_box_btn {
	position: relative;
	margin: 0 1.5rem;
}
.mv_box_btn .btn {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 1.5rem;
	z-index: 999;
	text-align: center;
}

@media screen and (max-width:768px) {
	
	.page_price { display: none; }
	.page_notes { display: none; }
	.main_box_btn { display: none; }
}

#form {
	padding: 4rem 1rem;
	text-align: center;
}
@media screen and (max-width:768px) {
	#form {
		padding: 2rem 1rem;
	}
}
.box_lp_form { text-align: center; }
.box_lp_form iframe {
		overflow: hidden;
}
@media screen and (max-width: 768px){
	
	.box_lp_form {
		padding: 171.42% 0 0;/* default height */
		position: relative;
	}
	.box_lp_form iframe {
		
		position: absolute;
		left: 0;
		top: 0;
		width: 720px;
		overflow: hidden;
		
		-webkit-transform:scale(0.47);
		-moz-transform:scale(0.47);
		-ms-transform:scale(0.47);
		-o-transform:scale(0.47);
		transform:scale(0.47);
		
		-moz-transform-origin: 0px 0px;
		-webkit-transform-origin: 0px 0px;
		-o-transform-origin: 0px 0px;
		-ms-transform-origin: 0px 0px;
		transform-origin: 0px 0px;
	}
}


.box_form {
	margin: 0 auto;
	max-width: 440px;
	position: relative;
	z-index: 9999;
}
.box_form > div { margin: 0 0 1rem; }

#results {padding: 4rem 0 0;}

.box_results {
	margin: 0 0 4rem;
}
.box_results > ul {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.box_results > * + ul {margin-top: 1rem;}
.box_results > ul > li {
	position: relative;
	width: 100%;
	max-width: 8rem;
	margin: 0 0.5rem;
}
@media (max-width:768px) {
	.box_results > * + ul {margin-top: 1rem;}
	.box_results > ul > li { margin: 0 0.5rem 1rem; }
}
.box_results > ul > li::before {
	content: '';
	display: block;
	padding: 100% 0 0;
	position: relative;
	z-index: 1;
}
.box_results > ul > li > div {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: #fff;
	color: #33352f;
	border: solid 1px #c1c1c1;
	text-align: center;
	border-radius: 2em;
	
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.box_results > ul > li b {
	display: block;
	width: 100%;
	font-size: 2rem;
	line-height: 1;
	padding: 0.5rem 0;
}
.box_results > ul > li span {
	display: block;
	width: 100%;
	font-size: 0.75rem;
	line-height: 1;
}
.box_results > ul > li small {
	display: block;
	width: 100%;
	font-size: 0.75rem;
	line-height: 1;
}

.box_skill {
	margin: 0 0 4rem;
}
.box_skill > ul {
	margin: 0 auto;
	max-width: 440px;
	text-align: center;
}
.box_skill > ul > li {
	display: inline-block;
	line-height: 2;
}
.box_skill > ul > li::after {
	content: '／';
	display: inline-block;
}
.box_skill > ul > li:last-child::after { display: none; }
@media screen and (max-width:768px) {
	.box_skill > ul {
		font-size: 0.75rem;
		padding: 0 1rem;
	}
}

#footer {
	text-align: center;
	font-size: 5rem;
	padding: 4rem 0;
	position: relative;
	background: #33352f;
}
#footer > p {
	position: relative;
	z-index: 99;
	font-size: 1rem;
	color: #fff;
}
#footer a {
	color: inherit;
	text-decoration: underline;
}

/* parts */
.page_head01 {
	font-size: 1.5rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	text-align: center;
	margin: 0 0 2rem;
}
* + .page_head01 {margin-top: 4rem;}
.page_head02 {
	background-color: #000;
	background-image: url(../img/bg_results.jpg);
	background-repeat: repeat-y;
	background-size: 100% auto;
	background-position: center center;
	background-attachment: fixed;
	color: #fff;
	overflow: hidden;
	padding: 1rem;
	
	font-size: 7.5rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1;
	text-align: center;
	margin: 0 0 2rem;
}
@media screen and (max-width:768px) {
	.page_head01 { font-size: 1.25rem; }
	* + .page_head01 {margin-top: 2rem;}
	.page_head02 { font-size: 3rem; background-attachment: scroll; }
}
.page_text {
	font-size: 1rem;
	line-height: 2rem;
	font-feature-settings: 'palt';
	text-align: center;
}
* + .page_text {margin-top: 1rem;}
@media screen and (max-width:768px) {
	.page_text {
		font-size: 0.75rem;
		line-height: 1.75rem;
		padding: 0 1rem;
	}
	* + .page_text {margin-top: 1rem;}
}
.btn {
	display: inline-block;
	background: #33352f;
	color: #fff;
	border: none;
	padding: 1rem;
	line-height: 1;
	width: 100%;
	text-align: left;
	max-width: 20rem;
	transition: all 0.2s ease;
	margin: 0 0 0 0;
	cursor: pointer;
}
.btn:focus,
.btn:hover {
	transition: all 0.33s ease-in;
	opacity: 0.93;
	margin: 0 0 0 0.75rem;
}
.btn_arrow { position: relative; }
.btn_arrow:hover {}
.btn_arrow::before {
	content: '';
	display: block;
	background-image: url(img/btn_arrow.png);
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: right bottom;
	height: 0.5rem;
	width: 2.5rem;
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translate(0,-50%);
	transition: right 0.2s ease;
}
.btn_arrow:hover::before {
	/*right: -1rem;*/
	/*transition: right 0.2s ease-in;*/
}

.input_style {
	border: solid 1px #c1c1c1;
	border-radius: 2rem;
	padding: 1rem 2rem;
	width: 100%;
	outline: none;
	font-family: "游ゴシック", sans-serif;
}
:placeholder-shown { color: #888; }
::-webkit-input-placeholder { color: #888; }
:-moz-placeholder { color: #888; opacity: 1; }
::-moz-placeholder { color: #888; opacity: 1; }
:-ms-input-placeholder { color: #888; }

@media (min-width:769px) {
	
	/* pc view */
	.sp { display: none !important; }
}
@media (max-width:768px) {
	
	/* sp view */
	.pc { display: none !important; }
}