@charset "utf-8";

/* ------ Body ------ */
#contactus .req{
	color:#d90000;
}

/* select box */
.swrap select::-ms-expand {
	display: none;
}

/* input */
.ccheck input[type="checkbox"]{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display:none;
}
input[type="radio"],
input[type="checkbox"]{
	cursor:pointer;
}
input[type='text'],
input[type='tel'],
input[type='email'],
input[type='password']{
	line-height:1em;
}
textarea{
	line-height:1.4em;
}
textarea:focus,
input[type='text']:focus,
input[type='tel']:focus,
input[type='email']:focus,
input[type='password']:focus{
	border-color: #ccc;
	-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.1);
	box-shadow: 0 0 3px rgba(0,0,0,0.1);
	background-color:#f5f5f5;
}
input[type='text']:focus::-webkit-input-placeholder { color:transparent; }
input[type='text']:focus:-moz-placeholder { color:transparent; }
input[type='text']:focus::-moz-placeholder { color:transparent; }
input[type='tel']:focus::-webkit-input-placeholder { color:transparent; }
input[type='tel']:focus:-moz-placeholder { color:transparent; }
input[type='tel']:focus::-moz-placeholder { color:transparent; }
input[type='email']:focus::-webkit-input-placeholder { color:transparent; }
input[type='email']:focus:-moz-placeholder { color:transparent; }
input[type='email']:focus::-moz-placeholder { color:transparent; }
input[type='password']:focus::-webkit-input-placeholder { color:transparent; }
input[type='password']:focus:-moz-placeholder { color:transparent; }
input[type='password']:focus::-moz-placeholder { color:transparent; }

/* ------------------------------------------------------------------------- *
 *	PC : 641px < Window Size
/* ------------------------------------------------------------------------- */
@media print,screen and (min-width: 641px) {
	/* ------ Header ------ */
	#page-ttl{
		background-image: url(../../img/contactus/page_ttl_pc.jpg);
	}

	/* ------ Body ------ */
	.call_tel h3{
		margin-bottom:15px;
	}
	.call_tel h3 + p{
		text-indent: -1.1em;
		margin-left: 1.1em;
		margin-bottom:35px;
	}
	.call_tel h3 + p span{
		color:#d90000;
	}

	.call_tel h3 .lbl{
		padding-bottom:10px;
	}
	.call_tel .c_tel{
		width:82%;
		margin:0 auto 95px 0;
	}
	.call_tel .c_tel li{
		margin-bottom:15px;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	.call_tel .c_tel li:last-child{
		margin-bottom:0;
	}
	.call_tel .c_tel .ttl_bb{
		font-size:18px;
		margin-bottom:0;
		min-width:7em;
	}
	.call_tel .c_tel .info{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
		margin-left:20px;
	}
	.call_tel .c_tel .info .no .pc img{
		min-width:140px;
	}
	.call_tel .c_tel .info .time{
		margin-left:20px;
		font-size:16px;
	}

	.call_mail h3{
		margin-bottom:15px;
	}
	.call_mail h3 .lbl{
		padding-bottom:10px;
	}

	#contactus table th{
		padding: 1.429em;
	}
	#contactus table td{
		padding: 1.429em;
	}
	#contactus table th .req{
		margin-left:0.36em;
	}
	#contactus .wpcf7{
		margin-bottom:2.5em;
	}
	#contactus .wpcf7 tr.mail td p{
		margin-top:15px;
	}
	#contactus .wpcf7 .addr1{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		margin-bottom:1.43em;
	}
	#contactus .wpcf7 .addr1 span{
		display:block;
	}
	#contactus .wpcf7 .addr1 .zip1,
	#contactus .wpcf7 .addr1 .zip2{
		width:22.7%;
	}
	#contactus .wpcf7 .addr1 .zip1 input,
	#contactus .wpcf7 .addr1 .zip2 input{
		width:100%;
	}
	#contactus .wpcf7 .addr1 .lbl1{
		margin-right:1.43em;
	}
	#contactus .wpcf7 .addr1 .lbl2{
		margin:0 1.29em;
	}
	#contactus .cmsg{
		text-align:center;
		line-height:1.6em;
		margin-bottom:1.07em;
	}
	#contactus .btn{
		margin-top:2.5em;
		display:block;
	}
	#contactus .btn .btn_big{
		width: 100%;
	}
	#contactus .btn .btn_big.disabled{
		cursor:not-allowed;
		opacity:0.6;
	}
	#contactus .wpcf7-not-valid-tip{
		margin-top:0.5em;
	}

	/* select box */
	.swrap{
		position: relative;
		display: inline-block;
		background-color: #fff;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		margin:35px 0 20px;
	}
	.swrap select{
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		padding: 0;
		margin: 0;
		height: 2.72em;
		max-height:38px;
		background: transparent;
		position: relative;
		z-index: 1;
		padding: 0 3.71em 0 0.71em;
		border: none;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		font-size:1em;
	}
	.swrap:before{
		content:"";
		display:block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height:2.72em;
		max-height:38px;
		z-index: 0;
		border: 1px solid #cbcbcb;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.swrap:after{
		content: '\f078';
		font-family: "FontAwesome";
		font-size:1em;
		position: absolute;
		z-index: 0;
		top: 0;
		bottom: 0;
		margin: auto 0;
		right: 0;
		width: 2.71em;
		max-width:38px;
		height: 100%;
		text-align:center;
		color:#fff;
		background-color:#666666;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}

	/* input */
	.ccheck{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.ccheck label{
		display: inline-block;
		position: relative;
		padding-left:2.14em;
		line-height:1.43em;
		height:1.43em;
		cursor:pointer;
	}
	.ccheck label:before{
		background-color: #fff;
		border: 1px solid #cbcbcb;
		-moz-border-radius: 1px;
		-webkit-border-radius: 1px;
		border-radius: 1px;
	}
	.ccheck label:before{
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 1.29em;
		height: 1.29em;
	}
	.ccheck label:after{
		content: '';
		display: block;
		position: absolute;
		top: 0.29em;
		left: 0.21em;
		width: 0.86em;
		height: 0.86em;
	}
	.ccheck input[type="checkbox"]:checked + label:after{
		top:0.21em;
		height:0.5em;
		border-left: 0.21em solid #d90000;
		border-bottom: 0.14em solid #d90000;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	textarea,
	input[type='text'],
	input[type='tel'],
	input[type='email'],
	input[type='password']{
		padding: 0.91em 0.625em;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-border-radius: 0;
		border-radius: 0;
		-moz-appearance: none;
		-webkit-appearance: none;
		-moz-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
		outline: none;
		border:1px solid #cbcbcb;
		font-size:1.14em;
		width:100%;
	}
}

/* ------------------------------------------------------------------------- *
 *	Mobile (Low Res) : 640px > 0
/* ------------------------------------------------------------------------- */
@media only screen and (max-width: 640px) {
	/* ------ Header ------ */
	#page-ttl{
		background-image: url(../../img/contactus/page_ttl_sp.jpg);
	}

	/* ------ Body ------ */
	.call_tel h3{
		margin-bottom:2.344vw;
	}
	.call_tel h3 + p{
		text-indent: -1.1em;
		margin-left: 1.1em;
		margin-bottom:5.469vw;
	}
	.call_tel h3 + p span{
		color:#d90000;
	}
	.call_tel h3 .lbl{
		line-height:1em;
		padding-bottom:2.344vw;
	}
	.call_tel .c_tel{
		width:100%;
		margin-bottom:7.813vw;
	}
	.call_tel .c_tel li{
		margin-bottom:5.469vw;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	.call_tel .c_tel li:last-child{
		margin-bottom:0;
	}
	.call_tel .c_tel .ttl_bb{
		font-size:3.75vw;
		margin-bottom:0;
		width:30%;
	}
	.call_tel .c_tel .info{
		width:70%;
	}
	.call_tel .c_tel > li:nth-child(1) .info .no{
		width:39.063vw;
	}
	.call_tel .c_tel > li:nth-child(2) .info .no{
		width:39.375vw;
	}
	.call_tel .c_tel > li:nth-child(3) .info .no{
		width:39.375vw;
	}
	.call_tel .c_tel .info .time{
		text-indent: -0.5em;
		margin-top:0.67em;
	}

	.call_mail h3{
		margin-bottom:2.344vw;
	}
	.call_mail h3 .lbl{
		line-height:1em;
		padding-bottom:2.344vw;
	}

	#contactus table th{
		padding: 0.893em 0 0.893em 0.893em;
	}
	#contactus table td{
		padding: 0.893em;
	}
	#contactus table th .req{
		margin-left:0.36em;
	}
	#contactus .wpcf7{
		margin-bottom:5.5vw;
	}
	#contactus .wpcf7 .addr1{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		margin-bottom:3.125vw;
	}
	#contactus .wpcf7 .addr1 span{
		display:block;
	}
	#contactus .wpcf7 .addr1 .zip1,
	#contactus .wpcf7 .addr1 .zip2{
		width:37.5%;
	}
	#contactus .wpcf7 .addr1 .zip1 input,
	#contactus .wpcf7 .addr1 .zip2 input{
		width:100%;
	}
	#contactus .wpcf7 .addr1 .lbl1{
		margin-right:0.5em;
	}
	#contactus .wpcf7 .addr1 .lbl2{
		margin:0 0.5em;
	}
	#contactus .wpcf7 tr.mail td p{
		margin-top:0.67em;
	}
	#contactus .cmsg{
		text-align:center;
		letter-spacing: -1px;
		margin-bottom:5.5vw;
	}
	#contactus .btn{
		margin-top:5.5vw;
	}
	#contactus .btn .btn_big.disabled{
		cursor:not-allowed;
		opacity:0.6;
	}
	#contactus .wpcf7-not-valid-tip{
		margin-top:0.5em;
	}

	/* select box */
	.swrap{
		position: relative;
		display: inline-block;
		background-color: #fff;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		margin:5.625vw 0;
		width:100%;
	}
	.swrap select{
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		padding: 0;
		margin: 0;
		height: 9.375vw;
		background: transparent;
		position: relative;
		z-index: 1;
		padding: 0 9.375vw 0 0.71em;
		border: none;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		font-size:1em;
		width:100%;
	}
	.swrap:before{
		content:"";
		display:block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height:9.375vw;
		z-index: 0;
		border: 1px solid #cbcbcb;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.swrap:after{
		content: '\f078';
		font-family: "FontAwesome";
		font-size:3.5vw;
		position: absolute;
		z-index: 0;
		top: 0;
		bottom: 0;
		margin: auto 0;
		right: 0;
		width: 9.375vw;
		height: 9.375vw;
		text-align:center;
		color:#fff;
		background-color:#666666;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}

	/* input */
	.ccheck{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	.ccheck label{
		display: inline-block;
		position: relative;
		padding-left:7.8vw;
		line-height:1.43em;
		height:1.43em;
		cursor:pointer;
	}
	.ccheck label:before{
		background-color: #fff;
		border: 1px solid #cbcbcb;
		-moz-border-radius: 1px;
		-webkit-border-radius: 1px;
		border-radius: 1px;
	}
	.ccheck label:before{
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 5vw;
		height: 5vw;
	}
	.ccheck label:after{
		content: '';
		display: block;
		position: absolute;
		top: 0.29em;
		left: 0.21em;
		width: 5vw;
		height: 5vw;
	}
	.ccheck input[type="checkbox"]:checked + label:after{
		top:0.21em;
		height:0.5em;
		border-left: 0.21em solid #d90000;
		border-bottom: 0.14em solid #d90000;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	textarea,
	input[type='text'],
	input[type='tel'],
	input[type='email'],
	input[type='password']{
		padding: 0.549em;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-border-radius: 0;
		border-radius: 0;
		-moz-appearance: none;
		-webkit-appearance: none;
		-moz-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
		outline: none;
		border:1px solid #cbcbcb;
		font-size:3.5vw;
		width:100%;
	}
}
