@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

/* body
------------------------------------------------- */
html {
	overflow-x: hidden;
}
body {
font-family: 'Noto Sans JP', sans-serif;
font-weight: 400;
font-size: 16px;
line-height: 1.75;
color: #000;
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
overflow-x: hidden;
position: relative;
}

@media screen and (max-width:750px) {
  html {
  font-size: 62.5%;
  }
  body { font-size: 1.4rem; }
  p,div,span,li,i,td,th,em,dt,dd {
    font-size:1.4rem;
  }
}

/* common
-------------------------------------------------*/
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, button,
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: 100%;
    vertical-align: baseline;
    background: transparent;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,main {
    display: block;
}
ul {
    list-style: none;
}
img {
    width: 100%;
    max-width: 100%;
    height: auto;
	border: none;
	vertical-align: bottom;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
address, em, code, cite, dfn, var, optgroup, i {
    font-style: normal;
}
sup {
    font-size: 80%;
    vertical-align: super;
}
sub {
    font-size: 80%;
    vertical-align: sub;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
input, select {
    vertical-align: middle;
}
input[type="button"],input[type="text"],input[type="submit"],input[type="reset"],textarea {
	-webkit-appearance: none;
	border-radius: 0;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
	font-size: 15px;
	line-height: 1.75;
    outline: 0;
}
input[type=radio],
input[type=checkbox] {
    appearance: none;
    display: none;
}
input[type=checkbox] + span,
input[type=radio] + span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0.3em 0 0.3em 2.65em;
    position: relative;
    width: auto;
}
input[type=checkbox] + span::before,
input[type=radio] + span::before {
    background: #F2F2F2;
    content: '';
    display: block;
    height: 1.5em;
    left: 0.5em;
    margin-top: -0.65em;
    position: absolute;
    top: 50%;
    width: 1.5em;
	border-radius: 0.2em;
}
input[type=checkbox] + span::after,
input[type=radio] + span::after {
    border-right: 0.133em solid #408BB3;
    border-bottom: 0.133em solid #408BB3;
    content: '';
    display: block;
    height: 1.333em;
    left: 0.88em;
    margin-top: -0.85em;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg) translate3d(0,2px,0) scale3d(.7,.7,1);
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    width: 0.6em;
}
input[type=checkbox]:checked + span::before,
input[type=radio]:checked + span::before {
    border-color: #408BB3;
}
input[type=checkbox]:checked + span::after,
input[type=radio]:checked + span::after {
    opacity: 1;
    transform: rotate(45deg) scale3d(1,1,1);
}

select {
	display: block;
	height: 2.4em;
 	padding: 0 2.5em 0 0.5em;
	margin: 2em 0 0;
  	cursor: pointer;
  	text-indent: 0.01px;
  	text-overflow: ellipsis;
  	border: 1px solid #BFBFBF;
	border-radius: 0.2em;
  	outline: none;
  	background-image: none;
  	box-shadow: none;
  	-webkit-appearance: none;
  	appearance: none;
  	background: url("../img/icon5.png") 88% center no-repeat #fff;
  	background-size: 0.8em auto;
  	box-sizing: border-box;
	color: #000;
}

.pcon { display: block; }
.spon { display: none; }
@media only screen and (max-width:750px){
.pcon { display: none; }
.spon { display: block; }
}

/* a
------------------------------------------------- */
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
	text-decoration: none;
	outline: none;
    color: #000;
}
@media only screen and (min-width:751px){
a {
    transition: 0.4s;
}
a:hover {
	text-decoration: underline;
}
a.al:hover {
    color: #000;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	text-decoration: none;
}
.telLink {
	pointer-events: none;
}
}


/* layout
------------------------------------------------- */
.d-flex {
    display: flex;
}
.f-wrap {
    flex-wrap: wrap;
}
.f-rev {
    flex-direction: row-reverse;
}
.just-center {
    justify-content: center;
}
.just-between {
    justify-content: space-between;
}
.just-end {
    justify-content: flex-end;
}
.align-center {
    align-items: center;
}
.align-end {
    align-items: flex-end;
}
@media only screen and (max-width:750px){
.d-flex {
    display: block;
}
}

/* btnst
------------------------------------------------- */
.btnst1 a,
a .btnst1 {
	display: block;
	width: 15.7em;
	line-height: 2.9;
	margin: 0 auto;
	background-color: #fff;
	color: #1E5078;
	font-weight: 700;
	text-align: center;
	border: 1px solid #1E5078;
	border-radius: 2em;
	text-decoration: none;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
	z-index: 1;
	transition: 0.4s;
}
.btnst1 a::before,
a .btnst1::before {
	content: '';
	display: block;
	width: 120%;
	height: 120%;
	background-color: #1E5078;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -60% 0 0 -60%;
	padding-top: 98%;
	border-radius: 9999px;
	transform: scale(0);
	transition: transform .4s, opacity .4s;
	z-index: 1;
}
.btnst1 a span,
a .btnst1 span {
	color: #1E5078;
	font-weight: 700;
	position: relative;
	z-index: 2;
}
.btnst2 a {
	display: block;
	width: 22em;
	line-height: 3;
	margin: 0 auto;
	background-color: #408BB3;
	color: #fff;
	border: 0.1em solid #408BB3;
	font-weight: 500;
	text-align: center;
	border-radius: 0.375em;
	text-decoration: none;
	box-sizing: border-box;
}
@media only screen and (min-width:751px){
.btnst1 a:hover,
a:hover .btnst1 {
	background-color: #1E5078;
}
.btnst1 a:hover::before,
a:hover .btnst1::before {
	opacity:1;
	transform:scale(1.1)
}
.btnst1 a:hover span,
a:hover .btnst1 span {
	color: #fff;
}
.btnst2 a:hover {
	background-color: #fff;
	color: #408BB3;
}
}
@media only screen and (max-width:750px){
.btnst1 a {
	font-size: 4vw;
	width: 60vw;
	line-height: 2.75;
	border: 0.3vw solid #1E5078;
}
.btnst2 a {
	font-size: 3.733vw;
	width: 80vw;
	line-height: 2.875;
}
}


/* footer
------------------------------------------------- */
#footer {
	max-width: 1200px;
	width:95%;
	margin: 0 auto;
	border-top: 1px solid #818181;
	padding: 1.5em 0;
	margin-top: 3.875em;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#footer .info {
	width: 50%;
	position: relative;
}
#footer .info h4 {
	width: 20em;
}
#footer .info p {
	margin-left:2em;
}
#footer ul {
    display: flex;
    justify-content: flex-end;
}
#footer ul li {
    width: 4.3125em;
    margin-left: 1em;
}
#footer ul li:last-child {
    width: 8.5em;
}
#footer ul li:last-child {
    width: 8.5em;
}
#footer .info .subinfo{
	display:flex;
	position: absolute;
	left: 20em;
	bottom: 0.2em;
}
@media only screen and (min-width: 751px) {
	#footer .privacy {
		width: 50%;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 1em;
	}
	#footer .privacy ul {
		order: 2;
		display: flex;
		justify-content: flex-end;
	}
	#footer .privacy .f-sns {
    order: 1;
    }
	#footer .privacy .f-sns img {
    width: 3rem;
    }
}
@media only screen and (max-width: 750px) {
    #footer .privacy {
        width: 42%;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }
	#footer .privacy .f-sns {
        width: 100%;
        display: flex;
        justify-content: center;
        margin-bottom: 3vw;
        padding-right: 0;
        padding-left: 0;
    }
	#footer .privacy ul {
        display: flex;
        justify-content: flex-end;
        align-items: flex-end;
        align-self: flex-end;
    }
	#footer .privacy ul li {
        width: 15vw;
        margin-left: 2vw;
    }
	#footer .privacy .f-sns img {
    width: 40px;
    }
}


@media only screen and (max-width:750px){
#footer {
	width: 89%;
	padding: 3.5vw 0;
	margin-top: 17.5vw;
}
#footer .info {
	width: auto;
	height: 5em;
}
#footer .info h4 {
	width: 45vw;
}
#footer .info p {
	position: static;
}
#footer .info small {
	font-size: 2.133vw;
	white-space: nowrap;
}
#footer .info p {
	font-size: 2.266vw;
	padding-left: 0;
}
#footer ul {
    display: flex;
    justify-content: flex-end;
}
#footer ul li {
    width: 9.6vw;
    margin-left: 1.85vw;
}
#footer ul li:last-child {
    width: 18vw;
}
#footer .info .subinfo{
	display:flex;
	left: -1em;

}
}

/* font
------------------------------------------------- */
.fo10 { font-size: 10px; }
.fo11 { font-size: 11px; }
.fo12 { font-size: 12px; }
.fo20 { font-size: 20px; }

@media only screen and (min-width:751px){
}

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

@media only screen and (min-width:751px){
	#header {
	  width: 100%;
	  height: 5em;
	}
	#header .logo {
		width: 9.25em;
		position: absolute;
		left: 2.25em;
		top: 2em;
	}
	#mv {
		max-width:1200px;
		margin:0 auto;
	}
}

@media only screen and (max-width:750px){
#header {
  height: 21vw;
	display: flex;
	justify-content: center;
	align-items: center;
}
#header .logo {
	width: 20vw;
	margin-bottom:1.2em;
}
}

/* lp
------------------------------------------------- */
.container {
	max-width:1000px;
	width:90%;
	margin:0 auto;
	position: relative;
}
.worries {
	margin: 2.2em auto 1em;
}
.worries p {
}
.txt-area.mb {
	margin-bottom:2.5em;
}
.txt-area * {
	font-weight: 500;
}

.service {
	margin-bottom:1.5em;
}

.service-box {
	display: flex;
	justify-content: space-between;
	margin:0 -2.5%;
}
.service-box li {
	width:24%;
	max-width:290px;
	border:3px solid #025893;
	border-radius: 20px;
	padding:1.5rem 1.5rem 2rem;
	margin:0 2.5%;
}
.service-img {
	max-width:182px;
	margin:0.5em auto 1.3em;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
.service-box dt {
	text-align:center;
	margin:0 auto 0.4em;
	font-size: 26px;
	font-weight: bold;
}
.service-box dd {
	text-align: left;
	line-height: 1.7;
}
.voice {
	position: relative;
	text-align: center;
	padding-bottom:2.5em;
}
.voice:before {
	content:"";
	position: absolute;
	top:5em;
	left:0;
	background: #fffbdc;
	width:100vw;
	height:calc(100% - 4em);
	z-index: -1;
}
.ttl-voice {
	max-width:220px;
	width:30%;
	text-align: center;
	margin:0 auto;
}
.voice-area {
	margin:0 auto;
}
.form .read-area {
	padding:2em 0 0;
}
.table-ttl {
	font-size: 20px;
	text-align: center;
	padding:1em 0 0;
}


@media only screen and (min-width:751px){
	.txt-area {
		max-width:820px;
		width:95%;
		margin:0 auto;
	}
	.cta {
		margin:0 auto;
		background: url(../img/cta.png)no-repeat center top;
		background-size:contain;
		max-width:800px;
		width:100%;
		height:295px;
		position: relative;
	}
	.cta-btn {
		width: 55%;
		max-width: 439px;
		height: 82px;
		margin: 0 auto;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 2.5em;
	}
	.result {
		max-width:674px;
		width:90%;
		margin:0 auto 2.7em;
	}
	.ttl-img {
		margin: 6em auto 2.8em;
	  text-align: center;
		max-width:614px;
	}
}

@media only screen and (max-width:900px){
	.cta {
		height: calc(295/1000*100vw);
	}
	.cta-btn {
		bottom:2.5vw;
	}
}

@media only screen and (max-width:750px){
	.ttl-img {
		margin: 3em auto 2em;
	  text-align: center;
	}
	.service-box {
		flex-wrap:wrap;
		margin:0;
	}
	.service-box li {
		width:100%;
		max-width:100%;
		display: flex;
		justify-content: space-between;
		margin:0 0 4vw;
		padding:1rem;
	}
	.service-box .service-img {
		width:34%;
		max-width:100%;
		padding:0 1rem 0 0;
		margin:0;
	}
	.service-box dl {
		width:60%;
		text-align: left;
	}
	.service-box dt {
		text-align: left;
		font-size: 4vw;
	}
	.service-box dd {
		padding:0;
	}
	.ttl-voice {
		margin:0;
		text-align: left;
		width:40%;
		max-width:100%;
	}
	.voice {
		padding-bottom:2em;
		margin-bottom:20vw;
	}
	.voice-area {
		margin-top:-2.8em;
	}
	.cta {
		margin:0 auto;
		background: url(../img/cta-sp.png)no-repeat center top;
		background-size:contain;
		width:100%;
		height:calc(267/656*100vw);
		position: relative;
	}
	.cta-btn {
		width: 80%;
		max-width: 528px;
		height: calc(98/528*100vw);
		margin: 0 auto;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 4vw;
	}
	.result {
		margin: -1em auto 2em;
	}

}


/* .confirm
------------------------------------------------- */
.confirm-txt {
	display: none;
}
.confirm .confirm-txt {
	display: block;
}
.agree-txt {
	text-align: center;
	padding:1.2em 0;
}

.confirm label,
.confirm input[type="checkbox"],
.confirm input[type="radio"],
.confirm input[type="text"],
.confirm select,
.confirm textarea,
.confirm .error,
.confirm i,
.confirm .contact .cont2 table td.td7 i,
.confirm .privacy,
.confirm .txt2 {
	display: none;
}
.backbtn,
.submitbtn {
	display: none;
}
.confirm .backbtn,
.confirm .submitbtn {
	display: block;
}
.confirm .confirmbtn {
	display: none;
}

.form-btn {
	margin: 1em auto;
	max-width:600px;
}
.form-btn li {
	display: flex;
	align-items: center;
	justify-content: center;
}
.form-btn input {
	margin:0 1.5%;
}

/* .thanks
------------------------------------------------- */
.thanks-area {
	min-height:calc(85vh - 20em);
	text-align:center;
	margin:8em auto;
}
.ttl01 {
	width:100%;
	text-align: center;
	font-weight: bold;
	font-size:2.5rem;
	margin:0 auto 1em;
}
.btn-area {
	margin:4em auto;
	text-align: center;
	max-width:17em;
}
.btn-area li {
	text-align: center;
	margin:auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.btn-area a {
	display: flex;
	justify-content: center;
	align-items: center;
}
.btn-area a:hover {
	text-decoration: none;
}


/*------------------------------------------------
 content.css
------------------------------------------------- */
/* contact
------------------------------------------------- */
/*  #path  */
.contact #path {
	margin-bottom: 2.5em;
}

/*  inner  */
.form .inner {
	width: 95%;
	max-width:820px;
	margin:0 auto;
}

@media only screen and (max-width:750px){
	body,html {
	    font-size: 3.33vw;
	}
	.contact * {
		font-size: 3.33vw;
	}
	.thanks-area * {
		font-size: 3.33vw;
	}
	.thanks .thanks-area .ttl01 {
		font-size: 6vw;
	}
	.form-btn input {
		margin:0 2.5%;
	}
	.btn-area {
		max-width:45vw;
	}
}

.td-flex {
	display: flex;
	align-items: center;
}

/*  .cont1  */
.contact .cont1 {
	padding:1em 0 0;
}
.contact.confirm .cont1 {
	display: none;
}
.contact .cont1 .sec h3 {
	color: #408BB3;
	font-weight: 700;
	margin-right: 1em;
}
.contact .cont1 .sec dl {
	width: 19.5em;
}
.contact .cont1 .sec dl dd {
	color: #408BB3;
	padding-top: 0.5em;
	white-space: nowrap;
	text-align: center;
}

.error {
	font-size: 93%;
	color: #B70000;
	display: block;
}

@media only screen and (min-width:751px){
	.contact .cont1 .sec {
		padding: 2em 0;
		margin-bottom: 2em;
	}
}

@media only screen and (max-width:750px){
.contact .cont1 {
	padding: 6.5vw 0 9vw;
}
.contact .cont1 .sec {
}
.contact .cont1 .sec h3 {
	font-size: 4.533vw;
	margin: 0 0 3vw;
	text-align: center;
}
.contact .cont1 .sec dl {
	width: 100%;
}
.contact .cont1 .sec dl dt {
	width: 66vw;
	margin: 0 auto;
}
.contact .cont1 .sec dl dd {
	font-size: 2.8vw;
}
.contact .cont1 .txt1 {
	font-size: 3.33vw;
}
.td-flex {
	margin-bottom:0.5em;
}
.contact .table-ttl {
	font-weight: bold;
	font-size: 4vw;
	padding:0;
}
}

/*  .cont2  */
.contact .cont2 {
	padding-bottom: 4.5em;
}
.contact .cont2 table {
	width: 100%;
}
.contact .cont2 table th,
.contact .cont2 table td {
	text-align: left;
	vertical-align: middle;
	font-weight: 500;
	padding: 1.2em 1em;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}
.contact .cont2 table tr:last-child th,
.contact .cont2 table tr:last-child td {
	border-bottom: none;
}
.contact .cont2 table th {
	width: 18em;
	padding: 2.5em 3em 2.5em 1em;
}
.contact .cont2 table th span {
	display: inline-block;
	width: 4em;
	line-height: 2;
	background-color: #F28959;
	color: #fff;
	text-align: center;
	font-weight: 500;
	border-radius: 0.2em;
	margin-left: 1em;
}
.contact .cont2 table td input[type="text"],
.contact .cont2 table td textarea {
	width: 100%;
	height: 1.8em;
	background-color: #F2F2F2;
	border-radius: 0.2em;
	padding: 0 0.5em;
	box-sizing: border-box;
	border: none;
}
.contact .cont2 table td textarea {
	height: 13em;
	padding: 0.5em;
}
.contact .cont2 table td input.text1 {
	width: 10em;
	margin-right: 1em;
}
.contact .cont2 table td input.text2,
.contact .cont2 table td input.text3 {
	width: 6em;
	margin: 0 0.5em;
}
.contact .cont2 table td.td1 span.mwform-radio-field {
	margin-right: 1em;
}
.contact .cont2 table td.td6 input[name="add"] {
	margin-top: 1.6em;
}
.contact .cont2 table td.td7 i {
	display: block;
	padding: 2em 0 0.5em;
}
.contact .cont2 table td.td9 span.mwform-checkbox-field {
	display: inline-block;
	width: 50%;
	box-sizing: border-box;
	margin: 0 !important;
}
.contact .cont2 table td.td9 span:nth-of-type(3) {
	width: 100%;
}
.contact.confirm .cont2 table td.td6 i,
.contact.confirm .cont2 table td.td7 .connon,
.contact.confirm .cont2 table td.td8 i {
	display: none;
}

.contact .cont2 .btn li {
	text-align: center;
	margin-bottom: 0.75em;
}
.contact .cont2 .btn li input,
.btn-area a {
	font-size: 20px;
	width: 22em;
	height: 3em;
	text-align: center;
	background-color: #408BB3;
	color: #fff;
	font-weight: 500;
	border-radius: 0.5em;
	border: none;
	cursor: pointer;
	transition: 0.4s;
}
.contact .btn li input.backbtn {
	color: #408BB3;
	background-color: #fff;
	border:2px solid #408BB3
}

.contact .cont2 .btn li:nth-child(2) input {
	font-size: 16px;
	background-color: #EDEDED;
	color: #000;
}
.contact .cont2 .privacy {
	border: 1px solid #969696;
	padding: 1em;
	margin: 1em 0 3em;
	box-sizing: border-box;
}
.contact.confirm .cont2 .privacy {
	display: none;
}
.contact .cont2 .privacy .privacybox {
	width: 100%;
	height: 18em;
	overflow: auto;
	padding: 1em 1em 0;
	box-sizing: border-box;
}
.contact .cont2 .privacy .privacybox h4 {
	font-weight: 700;
	border-bottom: 1px solid #000;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
}
.contact .cont2 .privacy .privacybox p {
	padding-bottom: 1.5em;
}
.contact .cont2 .privacy .privacybox p a {
	text-decoration: underline;
}
.contact .cont2 .txt2 {
	text-align: center;
}
.contact.confirm .cont2 .txt2 {
	display: none;
}
.contact .cont2 .agree i {
	display: none;
}
.contact.confirm .cont2 .agree i {
	display: inline;
}
.contact .cont2 .agree input[type=checkbox] + span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0.3em 0 0.3em 2em;
    position: relative;
    width: auto;
}
.contact .cont2 .agree input[type=checkbox] + span::before {
    background: #fff;
    border: 1px solid #000;
	border-radius: 0;
    content: '';
    display: block;
    height: 1em;
    left: 0em;
    margin-top: -0.5em;
    position: absolute;
    top: 50%;
    width: 1em;
}
.contact .cont2 .agree input[type=checkbox] + span::after {
    border-right: 0.133em solid #000;
    border-bottom: 0.133em solid #000;
    content: '';
    display: block;
    height: 1em;
    left: 0.35em;
	margin-top: -0.6em;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg) translate3d(0,2px,0) scale3d(.7,.7,1);
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    width: 0.3em;
}
.contact .cont2 .agree input[type=checkbox]:checked + span::before {
    border-color: #707070;
}
.contact .cont2 .agree input[type=checkbox]:checked + span::after {
    opacity: 1;
    transform: rotate(45deg) scale3d(1,1,1);
}
@media only screen and (min-width:751px) and (max-width:1280px){
.contact .cont2 .btn li input {
	font-size: 1.5625vw;
}
.contact .cont2 .btn li:nth-child(2) input {
	font-size: 1.25vw;
}
}
@media only screen and (min-width:751px){
.contact .cont2 .btn li input:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
.contact .cont2 .privacy .privacybox p a:hover {
	text-decoration: none;
}
.contact .cont2 .agree {
	text-align: center;
	padding: 2em 0;
}

}
@media only screen and (max-width:750px){
.contact .cont2 {
	padding-bottom:0;
}
.contact .cont2 table th,
.contact .cont2 table td {
	display: block;
	padding: 0;
	border-bottom: none;
}
.contact .cont2 table th {
	width: 100%;
	padding: 5vw 0 4vw;
}
.contact .cont2 table th span {
	font-size: 2.2vw;
}
.contact .cont2 table td {
	border-bottom: 1px solid #CCC;
	padding-bottom: 6vw;
}
.contact .cont2 table td input[type="text"],
.contact .cont2 table td textarea {
	height: 10.5vw;
}
.contact .cont2 table td textarea {
	height: 22vw;
}
.contact .cont2 table td input.text1 {
	width: 42vw;
	margin-right: 2vw;
}
.contact .cont2 table td input.text2 {
	width: 37vw;
	margin: 0 1vw;
}
.contact .cont2 table td input.text3 {
	width: 26vw;
	margin: 0 1vw;
}
.contact .cont2 table td.td1 span.mwform-radio-field {
	margin-right: 2em;
}
.contact .cont2 table td.td7 i {
	padding: 1.5em 0 0.5em;
}
.contact .cont2 table td.td9 span.mwform-checkbox-field {
	width: 100%;
	margin-bottom: 1vw;
}
.contact .cont2 table td select {
	font-size: 3.466vw;
	margin: 1em 0;
}

.contact .cont2 .btn li input,
.btn-area a {
	font-size: 3.733vw;
	width: 80vw;
}
.contact .cont2 .btn li:nth-child(2) input {
	font-size: 3.2vw;
	width: 65vw;
}

.contact .cont2 .privacy .privacybox {
	height: 50vw;
	padding: 0.5em 0.5em 0;
}
.contact .cont2 .privacy .privacybox h4 {
	font-size: 3.066vw;
}
.contact .cont2 .privacy .privacybox p {
	font-size: 3.066vw;
}
.contact .cont2 .txt2 {
	padding: 0 1.5em;
}
.contact .cont2 .agree {
	text-align: center;
  padding: 2em 0 0;
}
}


/* contact/confirm/
------------------------------------------------- */
/*  .cont3  */
.contact .cont3 {
	display: none;
	padding: 3em 0 2em;
	text-align: center;
}
.contact.confirm .cont3 {
	display: block;
}
.contact .cont3 .sec {
	height: 8.5em;
	margin-bottom: 1.25em;
}
.contact .cont3 .sec h3 {
	color: #408BB3;
	font-weight: 700;
}
@media only screen and (max-width:750px){
.contact .cont3 {
	padding: 6.5vw 0 10vw;
}
.contact .cont3 .sec {
	width: 80vw;
	height: auto;
	padding: 4vw 0;
	margin: 0 auto 4.5vw;
}
.contact .cont3 .sec h3 {
	font-size: 4.533vw;
}
}


/* contact/thanks/
------------------------------------------------- */
/*  .cont5  */
.contact .cont5 {
	padding: 3em 0 8.75em;
	text-align: center;
}
.contact .cont5 .sec {
	height: 8.5em;
	margin-bottom: 1.25em;
}
.contact .cont5 .sec h3 {
	color: #408BB3;
	font-weight: 700;
}
.contact .cont5 .btn a {
	display: block;
	width: 22em;
	line-height: 3;
	text-align: center;
	background-color: #408BB3;
	color: #fff;
	font-weight: 500;
	border-radius: 0.5em;
	margin: 5.25em auto 0;
}
@media only screen and (max-width:750px){
.contact .cont5 {
	padding: 6.5vw 0 17.5vw;
}
.contact .cont5 .sec {
	width: 80vw;
	height: auto;
	padding: 4vw 0;
	margin: 0 auto 4.5vw;
}
.contact .cont5 .sec h3 {
	font-size: 4.533vw;
}
.contact .cont5 .btn a {
	font-size: 3.733vw;
	width: 80vw;
	margin: 12vw auto 0;
}
.contact .cont1 {
	padding: 1vw 0 5vw;
	width:95%;
	margin:0 auto;
}
}
