@charset "UTF-8";
/* CSS Document */

@media screen and (min-width:751px) {
    .spv {
        display: none!important;
    }
    html{
        height: 100%;
        font-size: 62.5%;/* 10px */
        overflow-y: scroll;
    }

    body {
		background: #fef9e9;
        font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif,'メイリオ',Meiryo;
        font-size: 1.5rem;
        line-height: 1.8;
        min-width: 1230px;
        margin: auto;
        line-break: strict;
        word-break: normal;
        word-wrap: break-word;
        color: #333;
		overflow-x: hidden;

        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;

        text-align: justify;
        text-justify: inter-ideograph;
		
		opacity: 0;
    }
	body.show {
		transition: opacity 0.3s;
		opacity: 1;
	}
	a {
		text-decoration: underline;
		color: #cf4444;
		display: inline-block;
		vertical-align: top;
	}
	a:hover {
		text-decoration: none;
	}
	
	.wrapper {
		margin: auto;
		position: relative;
		max-width: 1230px;
	}
	.wrapper::after {
		content: '';
		clear: both;
		display: block;
	}
	
	section {
		margin: auto;
		position: relative;
		max-width: 930px;
		padding-bottom: 60px;
	}
	section::after {
		content: '';
		clear: both;
		display: block;
	}
	
	#container_form {
		padding-top: 40px;
		padding-bottom: 90px;
		min-height: calc(100vh - 53px);
		position: relative;
	}
	#container_form::before {
		content: '';
		display: block;
		width: 100%;
		height: 180px;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 1;
		background: linear-gradient(#ade5fc,#fef9e9);
	}
	
	#container_form.confirm p {
		font-size: 1.5rem!important;
		line-height: 3.9rem!important;
		margin-top: 0!important;
	}
	#container_form.confirm p span {
		margin-right: 3em;
	}
	#container_form section#heading {
		padding-bottom: 40px;
		position: relative;
		z-index: 2;
	}
	#container_form section#heading h1 {
		width: 402px;
		height: 112px;
	}
	#container_form section#heading h1 img {
		max-width: 100%;
	}
	#container_form section#heading h2 {
		font-size: 2.2rem;
		line-height: 1;
		font-weight: bold;
		color: #562e00;
		margin-top: 40px;
	}
	#container_form section#heading .step {
		width: 360px;
		height: 39px;
		margin-top: 35px;
		margin-bottom: 20px;
	}
	#container_form section#heading .step img {
		max-width: 100%;
	}
	#container_form section#heading p.red {
		color: #d31900;
		font-weight: bold;
	}
	
	.lineTitle {
		background: #053774;
		height: 58px;
		line-height: 58px;
		font-size: 1.8rem;
		font-weight: bold;
		color: #fff;
		padding: 0 30px;
	}
	.lineTitle span {
		font-size: 1.6rem;
		font-weight: normal;
		margin-left: 2em;
	}
	#container_form table {
		width: 100%;
	}
	#container_form tr {
		display: block;
		padding-top: 60px;
	}
	#container_form tr + tr {
		padding-top: 30px;
	}
	#container_form th {
		font-size: 1.6rem;
		line-height: 3.9rem;
		font-weight: bold;
		width: 190px;
		color: #562e00;
		position: relative;
	}
	#container_form th span {
		width: 39px;
		height: 27px;
		position: absolute;
		right: 8px;
		top: 6px;
		font-size: 12px;
		line-height: 27px;
		background: #cf4444;
		border-radius: 5px;
		color: #fff;
		text-align: center;
	}
	#container_form td p {
		font-size: 1.3rem;
		margin-top: 10px;
	}
	
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	input[type="number"] {
		width: 100%;
		height: 39px;
		font-size: 1.5rem;
		line-height: 39px;
		padding:0 10px;
		border: 1px solid #999;
		appearance: none;
		background: #f3f3f3;
		border-radius: 3px;
	}
	input[type="radio"] {
		display: none;
	}
	label {
		display: inline-block;
		min-height: 39px;
		font-size: 1.5rem;
		line-height: 1.2;
		padding-left: 2px;
	}
	input[type="radio"] + span {
		padding-left: 28px;
		position: relative;
		display: inline-block;
		height: 39px;
		line-height: 39px;
		cursor: pointer;
	}
	input[type="radio"] + span::before {
		content: '';
		display: block;
		position: absolute;
		top: 9px;
		left: 0;
		width: 20px;
		height: 20px;
		background: #fff;
		border: 1px solid #999;
		border-radius: 50%;
	}
	input[type="radio"]:checked + span::after {
		content: '';
		display: block;
		position: absolute;
		top: 13px;
		left: 4px;
		width: 12px;
		height: 12px;
		background: #cf4444;
		border-radius: 50%;
	}
	
	input[type="checkbox"] {
		display: none;
	}
	input[type="checkbox"] + span {
		padding: 9px 2px 5px 28px;
		position: relative;
		display: inline-block;
		line-height: 1.3;
		cursor: pointer;
		vertical-align: top;
	}
	input[type="checkbox"] + span::before {
		content: '';
		display: block;
		position: absolute;
		top: 8px;
		left: 0;
		width: 21px;
		height: 21px;
		border: 1px solid #999;
		border-radius: 2px;
		background: #f3f3f3;
	}
	input[type="checkbox"]:checked + span::after {
		content: "";
		display: block;
		position: absolute;
		top: 11px;
		left: 8px;
		width: 6px;
		height: 12px;
		transform: rotate(40deg);
		border-bottom: 2px solid #000;
		border-right: 2px solid #000;
	}
	input[type="checkbox"]:checked + span::before {
		background: #f3f3f3!important;
	}
	
	
	select {
		width: 210px;
		height: 39px;
		cursor: pointer;
		text-indent: 0.01px;
		text-overflow: ellipsis;
		border: none;
		outline: none;
		background: transparent;
		background-image: none;
		box-shadow: none;
		-webkit-appearance: none;
		appearance: none;
		font-size: 1.5rem;
		padding: 0 38px 0 12px;
		color: #333;
	}
	select::-ms-expand {
		display: none;
	}
	.selectBox {
		position: relative;
		border: 1px solid #999;
		border-radius: 3px;
		background: #f3f3f3;
		display: inline-block;
		margin-right: 25px;
	}
	.selectBox::before {
		position: absolute;
		top: 17px;
		right: 12px;
		width: 0;
		height: 0;
		padding: 0;
		content: '';
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		border-top: 6px solid #666666;
		pointer-events: none;
	}
	textArea {
		width: 100%;
		resize: vertical;
		min-height: 200px;
		font-size: 1.5rem;
		line-height: 120%;
		padding: 5px;
		border: 1px solid #999;
		-webkit-appearance: none;
		appearance: none;
		background: #FFF;
		border-radius: 3px;
		display: block;
	}
	
	#container_form section#form_sec1 tr {
		display: block;
	}
	#container_form section#form_sec1 select {
		width: 300px;
	}
	
	#container_form section #form_sec2-1 input {
		width: 210px;
		margin-right: 20px;
	}
	#container_form section #form_sec2-1k input {
		width: 210px;
		margin-right: 20px;
	}
	#container_form section #form_sec2-3 .zipcode {
		display: inline-block;
		margin-right: 25px;
	}
	#container_form section #form_sec2-3 .zipcode input {
		width: 90px;
	}
	#container_form section #form_sec2-3 .zipcode span {
		font-weight: bold;
		margin: 0 5px;
	}
	#container_form section #form_sec2-3 table {
		width: 100%;
	}
	#container_form section #form_sec2-3 table tr {
		padding-top: 20px;
	}
	#container_form section #form_sec2-3 table tr:first-child {
		padding-top: 0;
	}
	#container_form section #form_sec2-3 table th {
		width: 60px;
	}
	#container_form section #form_sec2-3 .address input {
		width: 410px;
	}
	#container_form section #form_sec2-3 .address p {
		display: inline-block;
		margin-left: 10px;
	}
	#container_form section #form_sec2-4 input {
		width: 410px;
	}
	#container_form section #form_sec2-6 input,
	#container_form section #form_sec2-6c input
	{
		width: 410px;
	}
	#container_form section #form_sec3-1 p {
		width: 630px;
	}
	#container_form section #form_sec3-2 input {
		display: inline-block;
		margin-right: 5px;
		width: 210px;
		pointer-events: none;
	}
	#container_form section #form_sec3-2 span {
		display: inline-block;
		font-size: 1.6rem;
		line-height: 3.9rem;
		font-weight: bold;
		color: #562e00;
	}
	#container_form section#form_sec3 {
		padding-bottom: 50px;
	}
	#container_form section #form_sec3-3 td {
		display: block;
		text-align: center;
	}
	#container_form section #form_sec3-3 .wrap {
		display: block;
	}
	#container_form section #form_sec3-3 .errorMessage {
		text-align: left;
		display: inline-block;
	}
	#container_form section #form_sec3-3.error .errorMessage {
		display: inline-block!important;
	}
	#container_form section#formSubmit {
		text-align: center;
		padding-bottom: 0;
	}
	#container_form section#formSubmit p {
		font-size: 1.4rem;
		text-align: center;
		color: #562e00;
	}
	#container_form section#formSubmit input[type="submit"] {
		font-size: 18px;
		font-weight: bold;
		background-color: #053774;
		color: #fff;
		border-style: none;
		width: 233px;
		height: 64px;
		line-height: 64px;
		border-radius: 10px;
		cursor: pointer;
		transition: background-color 0.2s;
		padding: 0 25px 0 0;
	}
	#container_form section#formSubmit input[type="submit"]:hover {
		background-color: #335c8e;
	}
	#container_form section#formSubmit .floatWrap {
		width: 500px;
		margin: auto;
	}
	#container_form section#formSubmit .wrap::after {
		content: '';
		clear: both;
		display: block;
	}
	#container_form section#formSubmit .btn {
		display: inline-block;
		position: relative;
	}
	#container_form section#formSubmit .floatWrap .btn {
		display: block;
		position: relative;
		width: 233px;
		height: 64px;
		float: right;
	}
	#container_form section#formSubmit .btn::after {
		content: '▲';
		transform: rotate(90deg);
		font-size: 18px;
		line-height: 1;
		width: 18px;
		height: 18px;
		position: absolute;
		z-index: 10;
		right: 55px;
		top: -1px;
		bottom: 0;
		margin: auto;
		color: #fff;
	}
	#container_form section#formSubmit .back_btn {
		display: block;
		float: left;
		position: relative;
		font-size: 18px;
		font-weight: bold;
		background-color: #562e00;
		color: #fff;
		border-style: none;
		width: 233px;
		height: 64px;
		line-height: 64px;
		border-radius: 10px;
		cursor: pointer;
		transition: background-color 0.2s;
		padding: 0 0 0 25px;
		text-decoration: none;
		margin-right: 30px;
		vertical-align: middle;
	}
	#container_form section#formSubmit .back_btn:hover {
		background-color: #335c8e;
	}
	#container_form section#formSubmit .back_btn::after {
		content: '▲';
		transform: rotate(-90deg);
		font-size: 18px;
		line-height: 1;
		width: 18px;
		height: 18px;
		position: absolute;
		z-index: 10;
		left: 70px;
		top: -1px;
		bottom: 0;
		margin: auto;
		color: #fff;
	}
	
	section.message {
		margin-top: 10px;
		padding-bottom: 0;
	}
	section.message h3 {
		font-size: 3.0rem;
		line-height: 1.5;
		font-weight: bold;
		color: #562e00;
		margin-bottom: 35px;
	}
	section.message p {
		font-size: 1.6rem;
		line-height: 1.8;
		color: #562e00;
	}
	section.message h4 {
		font-size: 1.8rem;
		line-height: 1.5;
		font-weight: bold;
		margin-top: 20px;
	}
	section.message p.tel {
		margin-bottom: 30px;
	}
	section.message p.tel strong {
		font-size: 3.6rem;
		line-height: 1.5;
		font-weight: bold;
		color: #cf4444;
	}
	section.message p.link {
		font-size: 1.4rem;
		line-height: 1.5;
		font-weight: bold;
	}
	section.message p.link a {
		text-decoration: none;
	}
	
	footer {
		display: block;
		text-align: center;
		position: relative;
		background: #053774;
		color: #fff;
		padding: 45px 0;
	}
	footer p {
		font-size: 1.4rem;
		line-height: 1;
		margin-bottom: 35px;
	}
	footer small {
		display: block;
		font-size: 10px;
		line-height: 1;
		transform: scale(0.8);
	}
	
	.errorMessage {
		color: #d31900;
		font-size: 1.5rem;
		line-height: 16px;
		min-height: 16px;
		font-weight: bold;
		margin: 10px 0;
		padding-left: 20px;
		background: url("../images/error.png") left top/auto 14px no-repeat;
		display: none!important;
	}
	tr.error .errorMessage {
		display: block!important;
	}
	tr.error input[type="text"],
	tr.error input[type="tel"],
	tr.error input[type="email"],
	tr.error input[type="url"],
	tr.error input[type="number"],
	tr.error textarea,
	tr.error select,
	tr.error input[type="radio"] + span::before,
	tr.error input[type="checkbox"] + span::before {
		background: #ffe9e9;
	}
	tr.error .noErr input[type="text"], tr.error input[type="text"].noErr {
		background: #f3f3f3;
	}
	
	#errorAlert {
		height: 58px;
		line-height: 58px;
		font-size: 1.8rem;
		font-weight: bold;
		color: #d01a02;
		padding: 0 20px 0 50px;
		background: #ffe9e9 url("../images/error.png") left 30px center/auto 14px no-repeat;
		display: none;
		margin-top: 40px;
	}
	#errorAlert.error {
		display: block;
	}
	
	#pageTopBtn {
		position: fixed;
		z-index: 102;
		right: 15px;
		bottom: 15px;
		cursor: pointer;
		width: 56px;
		height: 56px;
		background: #053774 url("../images/pagetop.png") center center/23px 18px no-repeat;
		border-radius: 6px;
		opacity: 0;
		transition: background-color 0.3s, opacity 0.2s;
		pointer-events: none;
	}
	#pageTopBtn.show {
		opacity: 1;
		pointer-events: auto;
	}
	#pageTopBtn.show:hover {
		background-color: #335c8e;
	}
	
	
	
	
	
	input[type="text"],
	textarea {
		ime-mode: active;
	}
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	input[type="number"],
	#contact_3 input[type="text"],
	#contact_4 input[type="text"] {
		ime-mode: inactive;
	}
	
	input[type="number"]::-webkit-outer-spin-button,
	input[type="number"]::-webkit-inner-spin-button {
		-webkit-appearance: none;
		margin: 0;
	}
	input[type="number"] {
		-moz-appearance: textfield;
	}
}/*pc*/


















