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

@media screen and (max-width:750px) {
    .pcv {
        display: none!important;
    }
    html{
        height: 100%;
        font-size: 2.2vw;
        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;
        margin: auto;
        line-break: strict;
        word-break: normal;
        word-wrap: break-word;
        color: #000;

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

        text-align: justify;
        text-justify: inter-ideograph;
		height: 100%;
    }
	a {
		text-decoration: underline;
		color: #cf4444;
		display: inline-block;
		vertical-align: top;
	}
	a:active {
		text-decoration: none;
	}
	
	.wrapper {
		margin: auto;
		position: relative;
		max-width: 1230px;
	}
	.wrapper::after {
		content: '';
		clear: both;
		display: block;
	}
	
	section {
		margin: auto;
		position: relative;
	}
	section::after {
		content: '';
		clear: both;
		display: block;
	}
	
	#container_form {
		padding-top: 20px;
		padding-bottom: 50px;
		min-height: calc(100% - 80px);
		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 td p {
		font-size: 1.8rem!important;
		line-height: 1.8!important;
		margin: 0.5em 0!important;
	}
	#container_form.confirm td p span {
		margin-right: 2.5em;
	}
	
	#container_form section#heading {
		padding: 0 4vw;
		position: relative;
		z-index: 2;
	}
	#container_form section#heading h1 {
		width: 70%;
	}
	#container_form section#heading h1 img {
		max-width: 100%;
	}
	#container_form section#heading h2 {
		font-size: 2.4rem;
		line-height: 1;
		font-weight: bold;
		color: #562e00;
		margin-top: 5px;
	}
	#container_form section#heading .step {
		width: 100%;
		margin-top: 25px;
		margin-bottom: 30px;
	}
	#container_form section#heading .step img {
		max-width: 100%;
	}
	#container_form section#heading p.red {
		color: #d31900;
		font-weight: bold;
		line-height: 1.5;
		margin-bottom: 30px;
	}
	.lineTitle {
		background: #053774;
		font-size: 2.4rem;
		font-weight: bold;
		color: #fff;
		padding: 6px 4vw;
	}
	.lineTitle span {
		font-size: 1.8rem;
		font-weight: normal;
		margin-left: 1em;
	}
	table {
		width: 100%;
		display: block;
		padding: 0 4vw 30px;
	}
	tbody {
		display: block;
	}
	tr {
		display: block;
		padding-top: 25px;
	}
	tr + tr {
		padding-top: 25px;
	}
	th {
		font-size: 2.0rem;
		line-height: 22px;
		height: 22px;
		font-weight: bold;
		color: #562e00;
		position: relative;
		display: block;
		margin-bottom: 5px;
	}
	th span {
		display: inline-block;
		margin-left: 10px;
		font-size: 1.5rem;
		line-height: 22px;
		background: #cf4444;
		border-radius: 5px;
		color: #fff;
		text-align: center;
		padding: 0 8px;
		vertical-align: top;
	}
	td {
		display: block;
	}
	td p {
		font-size: 1.4rem;
		margin-top: 5px;
	}
	
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	input[type="number"] {
		width: 100%;
		height: 30px;
		font-size: 16px;
		line-height: 30px;
		height: 30px;
		padding:0 5px;
		border: 1px solid #999;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		background: #f3f3f3;
		border-radius: 3px;
	}
	input[type="radio"] {
		display: none;
	}
	label {
		display: inline-block;
		min-height: 20px;
		font-size: 1.7rem;
		line-height: 20px;
		padding-left: 2px;
		margin-top: 10px;
	}
	input[type="radio"] + span {
		padding-left: 28px;
		position: relative;
		display: inline-block;
		height: 20px;
		line-height: 20px;
		cursor: pointer;
	}
	input[type="radio"] + span::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		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: 4px;
		left: 4px;
		width: 12px;
		height: 12px;
		background: #cf4444;
		border-radius: 50%;
	}
	
	input[type="checkbox"] {
		display: none;
	}
	input[type="checkbox"] + span {
		padding: 3px 2px 0 26px;
		position: relative;
		display: inline-block;
		line-height: 1.1;
		cursor: pointer;
		vertical-align: top;
	}
	input[type="checkbox"] + span::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		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: 3px;
		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: 100%;
		height: 28px;
		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: 16px;
		padding: 0 20px 0 8px;
		color: #333;
	}
	select::-ms-expand {
		display: none;
	}
	.selectBox {
		position: relative;
		border: 1px solid #999;
		border-radius: 3px;
		background: #f3f3f3;
		display: block;
		margin-bottom: 10px;
	}
	.selectBox::before {
		position: absolute;
		top: 12px;
		right: 8px;
		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: 8em;
		font-size: 16px;
		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_sec2-1 input {
		margin-bottom: 10px;
	}
	#container_form section #form_sec2-1k input {
		margin-bottom: 10px;
	}
	
	#container_form section #form_sec2-3 .zipcode {
		display: inline-block;
		margin-right: 5px;
		margin-bottom: 10px;
	}
	#container_form section #form_sec2-3 .zipcode input {
		width: 4em;
	}
	#container_form section #form_sec2-3 .zipcode span {
		font-weight: bold;
		margin: 0 2px;
	}
	#container_form section #form_sec2-3 .selectBox {
		display: inline-block;
		width: 45%;
		vertical-align: top;
	}
	#container_form section #form_sec2-3 table {
		width: 100%;
		padding: 0;
	}
	#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 {
		display: block;
	}
	#container_form section #form_sec2-3 .address input {
	}
	#container_form section #form_sec2-3 .address p {
	}
	
	#container_form section #form_sec3-2 input {
		display: inline-block;
		margin-right: 5px;
		width: 12em;
		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: 0;
	}
	#container_form section #form_sec3-3 {
		padding-top: 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: 0 0 20px;
	}
	#container_form section#formSubmit p {
		font-size: 1.6rem;
		text-align: center;
		color: #562e00;
		margin-bottom: 20px;
	}
	#container_form section#formSubmit input[type="submit"] {
		font-size: 16px;
		font-weight: bold;
		background-color: #053774;
		color: #fff;
		border-style: none;
		width: 220px;
		height: 60px;
		line-height: 60px;
		border-radius: 10px;
		cursor: pointer;
		transition: background-color 0.2s;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		padding-right: 35px;
	}
	#container_form section#formSubmit .btn {
		display: block;
		width: 220px;
		height: 60px;
		margin: 0 auto;
		position: relative;
	}
	#container_form section#formSubmit .btn::after {
		content: '▲';
		transform: rotate(90deg);
		font-size: 16px;
		line-height: 1;
		width: 16px;
		height: 16px;
		position: absolute;
		z-index: 10;
		right: 60px;
		top: 0;
		bottom: 0;
		margin: auto;
		color: #fff;
	}
	#container_form section#formSubmit input[type="submit"]:active {
		background-color: #335c8e;
	}
	#container_form section#formSubmit .back_btn {
		display: block;
		margin: 30px auto 0;
		position: relative;
		font-size: 16px;
		font-weight: bold;
		background-color: #562e00;
		color: #fff;
		border-style: none;
		width: 220px;
		height: 40px;
		line-height: 40px;
		border-radius: 10px;
		cursor: pointer;
		transition: background-color 0.2s;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		padding-left: 25px;
		text-decoration: none;
	}
	#container_form section#formSubmit .back_btn:active {
		background-color: #335c8e;
	}
	#container_form section#formSubmit .back_btn::after {
		content: '▲';
		transform: rotate(-90deg);
		font-size: 16px;
		line-height: 1;
		width: 16px;
		height: 16px;
		position: absolute;
		z-index: 10;
		left: 70px;
		top: -1px;
		bottom: 0;
		margin: auto;
		color: #fff;
	}
	section.message {
		margin-top: 10px;
		padding: 0 4vw;
	}
	section.message h3 {
		font-size: 2.6rem;
		line-height: 1.5;
		font-weight: bold;
		color: #562e00;
		margin-bottom: 20px;
	}
	section.message p {
		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 {
		display: block;
		font-size: 3.0rem;
		line-height: 1.5;
		font-weight: bold;
		color: #cf4444;
	}
	section.message p.link {
		font-weight: bold;
	}
	section.message p.link a {
		text-decoration: none;
	}
	
	footer {
		display: block;
		text-align: center;
		position: relative;
		background: #053774;
		color: #fff;
		height: 80px;
		padding-top: 20px;
		overflow: hidden;
	}
	footer p {
		font-size: 1.4rem;
		line-height: 1;
	}
	footer small {
		display: block;
		width: 150%;
		font-size: 10px;
		line-height: 1;
		transform: scale(0.8);
		position: absolute;
		left: -50%;
		right: -50%;
		bottom: 20px;
		margin: auto;
	}
	
	.errorMessage {
		color: #d31900;
		font-size: 1.6rem;
		line-height: 1.4;
		min-height: 1.4;
		font-weight: bold;
		margin: 15px 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: 50px;
		line-height: 50px;
		font-size: 1.8rem;
		font-weight: bold;
		color: #d01a02;
		padding: 0 35px;
		background: #ffe9e9 url("../images/error.png") left 15px center/auto 14px no-repeat;
		display: none;
		margin-bottom: 30px;
	}
	#errorAlert.error {
		display: block;
	}
	
	#pageTopBtn {
		position: fixed;
		z-index: 102;
		right: 2vw;
		bottom: 40px;
		cursor: pointer;
		width: 40px;
		height: 40px;
		background: #053774 url("../images/pagetop.png") center center/18px auto 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:active {
		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*/


















