@charset "utf-8";

body {
	font-size: 15px;
}

/* -------------------------------------------------
	header
------------------------------------------------- */

#header {
	height: 60px;
}
#header .logo {
	margin: 12px 0 0;
	width: 109px;
}
#header .close {
	width: 23px;
	height: 23px;
	margin-right: 0;
	overflow: hidden;
	padding: 0;
	top: 20px;
}
#header .close .text {
	display: none;
}

/* -------------------------------------------------
	contents
------------------------------------------------- */

#main-cont {
	padding: 25px 0 70px;
}

/* flex → block */

.flex-wrapper {
	width: auto;
	display: block;
	margin-left: 4.68%;
	margin-right: 4.68%;
}
.flex-wrapper > div {
	width: auto;
	display: block;
}
.flex-wrapper > div + div,
.flex-wrapper > div:first-child,
.flex-wrapper > div:last-child,
.flex-wrapper > div.fg10 {
	padding-left: 0;
	padding-right: 0;
}

/* step-nav */

#step-nav ol {
	width: auto;
	display: inline-block;
}
#step-nav li {
	width: 94px;
	margin: 0 1px;
	display: inline-block;
}
#step-nav li .txt1:after {
	right: 4px;
	margin-top: -7px;
}
#step-nav li .txt1 .txt {
	font-size: 14px;
}
#step-nav li .txt1 .num {
	margin-left: 2px;
	font-size: 14px;
}
#step-nav li .txt2 {
	padding: 22px 7px 2px;
	text-align: center;
	font-size: 13px;
	line-height: 1.35em;
}

@media screen and (max-width: 481px){
	#step-nav ol {
		width: 289px;
		text-align: left;
	}
	#step-nav ol li:nth-child(4),
	#step-nav ol li:nth-child(5),
	#step-nav ol li:nth-child(6) {
		margin-top: 5px;
	}
}

/* h1-area */

.h1-area {
	padding: 0;
	margin-bottom: 0;
	border-left: none;
}
body.page-thanks .h1-area {
	margin-bottom: 21px;
}
.h1-area h1 {
	margin-bottom: 15px;
}
body.page-thanks .greeting {
	padding: 8px 0 15px;
}
body.page-thanks .greeting {
	font-size: 20px;
}
.h1-area .lead {
	font-size: 15px;
	line-height: 25px;
}

/* h */

.h1-area h1 {
	font-size: 22px;
}
body.EN .h1-area h1 {
	font-size: 24px;
	font-weight: 700;
}

.h-style2 {
	padding: 44px 0 8px;
	font-size: 22px;
}
body.page-thanks .form-inner > section:first-child .h-style2:first-child {
	padding-top: 30px;
}

.h-style3 {
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 15px;
	font-size: 16px;
}
body.page-confirm .h-style3,
body.page-thanks .h-style3 {
	font-weight: bold;
	margin-bottom: 10px;
}
.h-style3.posfix {
	margin-top: 0;
}
.h-style3 .supplement {
	margin-top: 4px;
}

.h-style4.blank {
	display: none;
}

/* form */

body.page-thanks .form-wrapper {
	margin-left: 0;
	margin-right: 0;
}
body.page-thanks .form-inner {
	margin-left: 4.68%;
	margin-right: 4.68%;
}
body.page-thanks .date,
body.page-thanks .notice {
	font-weight: normal;
}
body.page-thanks .date p {
	padding: 12px 0;
	text-align: center;
}
body.page-thanks .notice p {
	padding: 28px 0 23px;
	font-size: 15px;
	text-align: left;
	line-height: 1.7;
}

.form-wrapper .wrap {
	padding-top: 23px;
	padding-bottom: 6px;
}
body.page-confirm .form-wrapper .wrap,
body.page-thanks .form-wrapper .wrap {
	padding: 18px 0 12px;
}
.form-wrapper .l-side,
.form-wrapper .r-side {
	width: auto;
	float: none;
}
.form-wrapper .l-side {
	padding-bottom: 0;
}
.form-wrapper .r-side {
	padding-left: 17px;
	padding-top: 0;
	padding-bottom: 0;
}
body.page-confirm .form-wrapper .r-side,
body.page-thanks .form-wrapper .r-side {
	padding-bottom: 0;
}
body.page-confirm .form-wrapper .r-side li + li,
body.page-thanks .form-wrapper .r-side li + li {
	margin-top: 4px;
}
.form-wrapper .txt-required {
	position: static;
}
body.EN .form-wrapper .txt-required {
	padding-left: 5px;
	top: 0;
}

.form-wrapper input[type="text"],
.form-wrapper input[type="tel"],
.form-wrapper input[type="email"] {
	width: 190px;
}
.form-wrapper input[type="text"].sp-w100per,
.form-wrapper input[type="email"].sp-w100per {
	width: 100%;
}

.form-wrapper .select-all {
	margin-top: 20px;
}
.form-wrapper .sp-mb {
	margin-bottom: 10px !important;
}
.form-wrapper .sp-mr5 {
	margin-right: 5px !important;
}
.form-wrapper .sp-no-mr {
	margin-right: 0 !important;
}
.form-wrapper .reponsive-space1,
.form-wrapper .reponsive-space2 {
	padding-right: 0.3em;
}
.form-wrapper .sp-mb15 {
	margin-bottom: 15px;
}
.form-wrapper .sp-mb20 {
	margin-bottom: 20px !important;
}

.form-wrapper .btn-style1 {
	width: 125px;
	font-size: 13px;
	position: absolute;
	right: 0;
	top: -5px;
}

.form-wrapper .input-group.no-mt-fix {
	margin-top: 0;
}
.form-wrapper .input-group.sp-ws-normal {
	white-space: normal;
}

.form-wrapper .three-col-wrapper {
	width: auto;
}
.form-wrapper .three-col-item {
	width: auto;
	margin-bottom: 25px;
	float: none;
}
.form-wrapper .three-col-item + .three-col-item {
	margin-left: 0;
}
.form-wrapper .three-col-item label img {
	width: 220px;
	display: block;
}

.form-wrapper .border-box-style1 {
	padding: 15px 20px 17px;
	margin-top: 30px;
	background-color: #f9fcfd;
}
.form-wrapper .border-box-style1 .h-style3 {
	padding-right: 0;
	display: block;
	font-size: 15px;
	line-height: 1.8;
}
.form-wrapper .border-box-style1 .label-wrapper {
	text-align: center;
}
.form-wrapper .border-box-style1 label {
	display: inline;
	margin: 0;
	white-space: nowrap;
}
.form-wrapper .border-box-style1 label:first-of-type {
	margin-right: 40px;
}

body.page-confirm .subscription .h-style3,
body.page-confirm .subscription p {
	padding-right: 0;
	display: block;
}

body:not(.page-input) .form-wrapper .border-box-style1 {
	padding: 18px 0 12px;
	margin-top: 0;
	background-color: transparent;
	border: none;
	border-bottom: solid 1px #c2bfb3;
}
body:not(.page-input) .form-wrapper .border-box-style1 .h-style3 {
	padding-right: 0;
	padding-left: 3px;
	font-size: 16px;
	line-height: 1.2;
	position: relative;
}

#text-confirm,
#text-privacy,
#text-security {
	text-align: left;
}
#text-confirm {
	margin-top: 35px;
}
#text-confirm p {
	font-size: 20px;
}

#text-privacy {
	margin-top: 25px;
}
#text-privacy p,
#text-security p {
	font-size: 14px;
	line-height: 1.7;
}

#form-submit {
	margin-top: 50px;
}

#button-submit,
#button-back {
	width: 100%;
	display: block;
	padding: 33px 0 31px;
	margin-left: 0;
	margin-right: 0;
	font-size: 18px;
}
#button-back {
	margin-bottom: 28px;
}

#sitelink {
	margin-top: 37px;
}
#sitelink a {
	width: auto;
	padding: 15px 0;
	margin: 0 4.68%;
	display: block;
	font-size: 14px;
}
#sitelink a span {
	padding-left: 5%;
}
#sitelink a.corporate {
	margin-bottom: 25px;
}

/* form error */

#error-area {
	padding: 15px 4.68%;
	margin: 27px 0 -10px;
	text-align: left;
	background-color: #d51813;
}
#error-area p {
	font-size: 15px;
}

.form-wrapper .error .r-side:after {
	width: 4px;
	left: 0px;
	top: 0px;
}
.form-wrapper .error .error-text {
	margin: -7px 0 12px;
	font-weight: bold;
	display: block;
}

/* -------------------------------------------------
	footer
------------------------------------------------- */

#footer {
	height: 100px;
}
#footer .copyright {
	padding: 15px 0 0;
}

/* -------------------------------------------------
	pagetop
------------------------------------------------- */

#pagetop {
	bottom: 20px;
}
#pagetop a {
	width: 35px;
	height: 35px;
	background-position: center center;
	background-size: 19px auto;
}

/* -------------------------------------------------
	other
------------------------------------------------- */

/* for responsive */

.pc-only,
.pc-only-ib,
.pc-only-i {
	display: none !important;
}
.sp-only {
	display: block !important;
}
.sp-only-ib {
	display: inline-block !important;
}
.sp-only-i {
	display: inline !important;
}

.sp-block {
	display: block !important;
	float: none !important;
}
