@charset "utf-8";
/* CSS Document */

/* Reset
---------------------------------------------------------------------------- */
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: 16pt;
	color: #333333;
	line-height: 1.8;
	vertical-align: baseline;
	background: transparent;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
}



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;
	color: #333333;
	vertical-align: baseline;
	background: transparent;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

/* Clearfix
---------------------------------------------------------------------------- */
.clearfix {
	*zoom: 1;
}
.clearfix:before, .clearfix:after {
	display: table;
	content: "";
	line-height: 0;
}
.clearfix:after {
	clear: both;
}

/* Common Setting
---------------------------------------------------------------------------- */
.hidden {
	display: none;
}
.attention li {
	font-size: 9pt;
	color: #999999;
}
.attention li:before {
	content: '※ ';
}
.mb8 {
	margin-bottom: 8px;
}
.mb16 {
	margin-bottom: 16px;
}
.mb24 {
	margin-bottom: 24px;
}
.mb32 {
	margin-bottom: 32px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb48 {
	margin-bottom: 48px;
}
.mb56 {
	margin-bottom: 56px;
}
.mb64 {
	margin-bottom: 64px;
}
.mb72 {
	margin-bottom: 72px;
}
.mb80 {
	margin-bottom: 80px;
}

/* Container
---------------------------------------------------------------------------- */
#container {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

/* Header
---------------------------------------------------------------------------- */
#header {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
#header-content {
	max-width: 1400px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 40px 0;
}
#header-content .logo {
	float: left;
	width: 30%;
	height: auto;
	margin: 8px 0 0;
	padding: 0;
}
#navigation {
}
#navigation-content {
	float: left;
	width: 60%;
	height: auto;
	margin: 0 2.5%;
	padding: 0;
}
#navigation-content ul {
}
#navigation-content li {
	float: left;
	width: 31%;
	margin: 0 1%;
}
#navigation-content li a {
}
#SP-navigation-trigger {
	float: right;
	width: 5%;
	margin: 8px 0 0;
}
#SP-navigation {
	display: none;
}
#SP-navigation-content {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 48px 0 0;
	background: #333333;
	border-top: 24px solid #555555;
	position: relative;
}
#SP-navigation-content .close-trigger {
	width: 8%;
	margin: 0;
	position: absolute;
	right: 8%;
	top: 8px;
	display: block;
}
#SP-navigation-content ul {
}
#SP-navigation-content li {
	text-align: center;
	width: 80%;
	height: auto;
	margin: 0;
	padding: 0 10%;
	border-bottom: 1px solid #555555; 
}
#SP-navigation-content li.SP-sub-menu {
	background: #6699dd;
}
#SP-navigation-content li:first-child {
	border-top: 1px solid #555555; 
}
#SP-navigation-content li a {
	text-decoration: none;
	color: #efefef;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 20px 0;
	display: block;
}

/* Key-visual
---------------------------------------------------------------------------- */
#key-visual {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
.key-visual-content {
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

/* Main
---------------------------------------------------------------------------- */
#main {
	width: 100%;
	height: auto;
	margin: 0 auto 160px;
	padding: 0;
}
#main-content {
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
#main-content .section {
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
#main-content .section-content {
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
#main-content .section-content .caption {
	font-size: 48pt;
	text-align: center;
	margin-bottom: 24px;
}

/* Main Index
---------------------------------------------------------------------------- */
#main-content .section-content {
}
#main-content .section-content-contact {
	position: relative;
}
#main-content .section-content-contact-2 {
	position: relative;
}
#main-content .section-content-contact ul.btn {
	width: 64%;
	position: absolute;
	top: 37%;
	right: 0;
	left: 0;
	margin: auto;
}
#main-content .section-content-contact ul.btn li {
	margin: 2% auto;
}
#main-content .section-content-contact-2 ul.btn {
	width: 64%;
	position: absolute;
	top: 25%;
	right: 0;
	left: 0;
	margin: auto;
}
#main-content .section-content-contact-2 ul.btn li {
	margin: 2% auto;
}
#main-content .section-content-contact ul.btnSP {
	width: 88%;
	position: absolute;
	top: 46%;
	right: 0;
	left: 0;
	margin: auto;
}
#main-content .section-content-contact ul.btnSP li {
	margin: 2% auto;
}
#main-content .section-content-contact-2 ul.btnSP {
	width: 88%;
	position: absolute;
	top: 24%;
	right: 0;
	left: 0;
	margin: auto;
}
#main-content .section-content-contact-2 ul.btnSP li {
	margin: 2% auto;
}
#main-content .section-content-company {
}
#main-content .section-content-company dl {
	width: 72%;
	height: auto;
	margin: 0 auto;
	padding: 16px 2%; 
	border-bottom: 1px solid #999999;
	box-sizing: border-box;
	overflow: hidden;
}
#main-content .section-content-company dl.first {
	border-top: 1px solid #999999;
}
#main-content .section-content-company dt {
	font-weight: bold;
	float: left;
	width: 30%;
	height: auto;
	margin: 0;
	padding: 16px 0; 
}
#main-content .section-content-company dd {
	float: left;
	width: 70%;
	height: auto;
	margin: 0;
	padding: 16px 0; 
}

/* Main FORM
----------------------------------------- */
#form {
	width: 72%;
	height: auto;
	min-height: 500px;
	margin: 0 auto 80px;
}
#form dl {
	width: 100%;
	height: auto;
	margin: 0 auto 16px;
	padding: 0;
}
#form dt {
	margin-bottom: 4px;
}
#form dd {
	margin: 0;
}
#form dd.w100 {
	width: 100%;
}
#form dd.w50 {
	width: 50%;
}
#form .input, #form .select, #form .submit, #form .textarea {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16pt;
	width: 100%;
	height: auto;
	margin: 0 0 4px;
	padding: 16px 8px;
	border: 1px solid #999999;
	border-radius: 4px;
	box-sizing: border-box;
}
#form .submit {
	color: #ffffff;
	border: none;
	background: #d50f4c;
	-webkit-transition: all .4s;
	transition: all .4s;
}
#form .submit:hover {
	background: #9d2047;
}
#form .attention {
	font-size: 14pt;
}
#form .alert {
	font-size: 14pt;
	color: #dd0000;
}
#form .form_alert {
	border: 2px solid #dd0000;
}
#form .required {
	text-align: center;
	color: #ffffff;
	font-size: 14pt;
	width: 48px;
	height: auto;
	margin: 0 0 0 4px;
	padding: 0;
	display: inline-block;
	background: #d50f4c;
	border-radius: 4px;
}
#form .optional {
	background: #00a8eb;
}
#form dl.confirm {
	padding: 4px 1%;
	border-bottom: 1px dotted #666666;
}
#form dl.confirm dt {
	font-size: 14pt;
	font-weight: bold;
}
#form dl.confirm dd {
	font-size: 16pt;
}
#form .notice {
	padding: 40px 4%;
	background: #efefef;
}
#form .notice .info {
	margin-bottom: 40px;
}

/* Other
---------------------------------------------------------------------------- */
#page-top {
	position: fixed;
	bottom: 16px;
	right: 16px;
	z-index: 200;
	display: none;
}
#page-top a {
	color: #FFFFFF;
	font-size: 12pt;
	text-decoration: none;
	text-align: center;
	width: 12em;
	border-radius: 32px;
	background-color: #333333;
	display: block;
}

/* Footer
---------------------------------------------------------------------------- */
#footer {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	background: #333333;
}
#footer-content {
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	padding: 56px 0;
}
#footer-content .copy {
	color: #efefef;
	text-align: center;
}

/* Media Query
---------------------------------------------------------------------------- */
@media (max-width: 900px) {
	#header-content {
		padding: 32px 0;
	}
	#header-content .logo {
		margin: 7px 0 0;
	}
	#SP-navigation-trigger {
		margin: 7px 0 0;
	}
}
@media (max-width: 800px) {
	#header-content {
		padding: 24px 0;
	}
	#header-content .logo {
		margin: 5px 0 0;
	}
	#SP-navigation-trigger {
		margin: 5px 0 0;
	}
}
@media (max-width: 700px) {
	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 {
		font-size: 12pt;
	}
	#header-content {
		padding: 16px 0;
	}
	#header-content .logo {
		margin: 3px 0 0;
	}
	#SP-navigation-trigger {
		margin: 3px 0 0;
	}
	#main-content .section-content .caption {
		font-size: 32pt;
	}
	#main-content .section-content-company dl {
		width: 80%;
	}
	#form {
		width: 80%;
	}
}
@media (max-width: 600px) {
	#header-content {
		padding: 8px 0;
	}
	#header-content .logo {
		float: left;
		width: 56%;
		height: auto;
		margin: 12px 0 0 2%;
		padding: 0;
	}
	#navigation {
		display: none;
	}
	#SP-navigation-trigger {
		float: right;
		width: 10%;
		margin: 5px 2% 0 0;
	}
}
@media (max-width: 500px) {
	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 {
		font-size: 10pt;
	}
	#main-content .section-content .caption {
		font-size: 24pt;
	}
	#main-content .section-content-company dl {
		width: 96%;
	}
	#form {
		width: 96%;
	}
}
