@charset "UTF-8";
/*===============================================
●画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px){
#main_img {
	background-image: url(../img/contact/main_img.jpg);
}
#conts_01 {
	padding-top: 113px;
    margin-bottom: 33px;
}
#conts_01 .auto {
	width: 848px;
}
#conts_01 .tel_box {
	width: 100%;
	display: table;
	background-image: url(../img/business/ptn_bg_01.jpg);
	background-repeat: repeat;
	background-position: left top;
	background-size: 4px;
	position: relative;
	font-size: 15px;
	line-height: 25px;
	text-align: center;
    padding: 52px 40px 36px;
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#conts_01 .tel_box::before {
	content: "";
	width: calc(100% + 16px);
	height: calc(100% + 16px);
	position: absolute;
	display: block;
	top: -12px;
	left: -12px;
	border: 4px solid #445c43;
    pointer-events: none;
}
#conts_01 .tel_box .left_box {
	width: 396px;
    display: table-cell;
	vertical-align: middle;
}
#conts_01 .tel_box .left_box .title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
}
#conts_01 .tel_box .left_box .tel_number {
	display: inline-block;
	font-size: 42px;
	font-weight: bold;
	line-height: 1.3;
	padding-left: 31px;
	background-image: url(../img/share/icon_06.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 21px;
	
}
#conts_01 .tel_box .left_box .time {
	font-size: 13px;
	line-height: 1.5;
	text-align: right;
    padding-right: 56px;
}
#conts_01 .tel_box .right_text {
	display: table-cell;
	vertical-align: middle;
	text-align: left;
}

#conts_form .auto {
	width: 848px;
}
#conts_form .caution_list {
	width: 100%;
	padding-left: 115px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    margin-bottom: 62px;
}
#conts_form .form_box {
	width: 100%;
	border-bottom: 2px dotted #597158;
}
#conts_form .form_box:last-of-type {
	border-bottom: none;
}
#conts_form .form_box tr {
	width: 100%;
    display: table;
	margin-bottom: 25px;
}
#conts_form .form_box tr:last-of-type {
	margin-bottom: 50px;
}
#conts_form .form_box tr th {
	width: 220px;
	padding: 0 58px 0 0;
	text-align: right;
    vertical-align: top;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    vertical-align: middle;
}
#conts_form .form_box tr th.required {
	background: none;
	position: relative;
}
#conts_form .form_box tr th.required::after {
	content: "必須";
	font-size: 11px;
	line-height: 1.3;
	padding: 1px 3px 1px;
	background-color: none;
	background-color: #ed4219;
    position: absolute;
    right: 24px;
    top: calc(50% - 8px);
}
#conts_form .form_box tr th.icon_top {
	vertical-align: top;
    position: relative;
}
#conts_form .form_box tr .top {
	vertical-align: top !important;
}
#conts_form .form_box tr th.icon_top::after  {
	content: "必須";
	font-size: 11px;
	line-height: 1.3;
	padding: 1px 3px 1px;
	background-color: none;
	background-color: #ed4219;
    position: absolute;
    right: 24px;
    top: 8px;
}
#conts_form .form_box tr td {
	
}
#conts_form .form_box .trigger td li:nth-child(2) {
    width: 400px!important;
}
#conts_form .form_box .trigger td li:nth-child(3) {
    width: 184px!important;
}
#conts_form .form_box tr td.form_check ul li {
	line-height: 30px;
    margin-bottom: 8px;
    display: inline-block;
    width: 184px;
}
#conts_form .form_box tr td.form_check ul li:nth-child(2),
#conts_form .form_box tr td.form_check ul li:nth-child(5),
#conts_form .form_box tr td.form_check ul li:nth-child(8){
    width: 204px;}
#conts_form .form_box tr td.form_check ul li:nth-child(3),
#conts_form .form_box tr td.form_check ul li:nth-child(6),
#conts_form .form_box tr td.form_check ul li:nth-child(9){
    width: 208px;}
#conts_form .form_box tr td.form_check ul li.checked {
	background-image: url(../img/contact/icon_on.png);
}
#conts_form .form_box tr td input[type="text"] {
	padding: 13px 16px 11px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    background-color: #597158;
    color: #fff;
    width: 628px;
    font-size: 15px;
    line-height: 26px;
    outline: 0;
}
#conts_form .form_box tr td input[name="introducer"] {
	padding: 8px 16px 6px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    background-color: #597158;
    color: #fff;
    width: 274px;
    font-size: 15px;
    line-height: 26px;
    outline: 0;
}
#conts_form .form_box tr td textarea {
    width: 628px;
	height: 340px;
    padding: 13px 16px 11px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #597158;
    color: #fff;
    font-size: 15px;
    line-height: 26px;
    outline: 0;
}
#conts_form .form_box tr td input[type="checkbox"] {
    display: none;
}
#conts_form .form_box tr td label {
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    padding: 0 0 0 21px;
    vertical-align: middle;
    cursor: pointer;
}
#conts_form .form_box tr td label:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    z-index: 99;
    top: 52%;
    left: 0px;
    display: block;
    margin-top: -10px;
    width: 11px;
    height: 11px;
    border: 2.5px solid #597158;
    border-radius: 4px;
    content: '';
}
#conts_form .form_box tr td label:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    z-index: 9999;
    top: 40%;
    left: 5px;
    display: block;
    margin-top: -7px;
    width: 5px;
    height: 9px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    content: '';
    opacity: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}  
#conts_form .form_box tr td input[type="checkbox"]:checked +  label:before {
    opacity: 1;
}   
#conts_form .title_box {
	text-align: center;
	padding-top: 46px;
	margin-bottom: 40px;
    font-size: 15px;
}
#conts_form .title_box h4 {
	font-size: 23px;
    line-height: 1.3;
	font-weight: bold;
    margin-bottom: 15px;
}
#conts_form button {
	width: 285px;
	margin: 0 auto;
	font-size: 14px;
	display: block;
	color: #ffffff;
	text-decoration: none;
    padding: 16px 0 14px;
	border: 2px solid #ffffff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-image: url(../img/share/icon_05.png);
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 8px;
    transition-duration: .3s;
    background-color: transparent;
}
#conts_form button:hover {
	background-color: #ffffff;
	color: #384c37;
	background-image: url(../img/share/icon_05_g.png);
}
}
/*===============================================
●画面の横幅が769pxまで（iPhone6 横向きまで）
===============================================*/
@media screen and (max-width:769px){
#main_img {
	background-image: url(../img/contact/main_img.jpg);
}

#conts_01 {
	padding-top: 74px;
    margin-bottom: 25px;
}
#conts_01 .tel_box {
	width: 100%;
	background-image: url(../img/business/ptn_bg_01.jpg);
	background-repeat: repeat;
	background-position: left top;
	background-size: 4px;
	position: relative;
	font-size: 15px;
	line-height: 25px;
	text-align: center;
    padding: 32px 5% 26px;
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#conts_01 .tel_box::before {
	content: "";
	width: calc(100% + 8px);
	height: calc(100% + 8px);
	position: absolute;
	display: block;
	top: -7px;
	left: -7px;
	border: 3px solid #445c43;
    pointer-events: none;
}
#conts_01 .tel_box .left_box {
	width: 100%;
    margin-bottom: 10px;
}
#conts_01 .tel_box .left_box .title {
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.5;
}
#conts_01 .tel_box .left_box a {
	color: #ffffff;
    font-weight: bold;
    text-decoration: none;
}
#conts_01 .tel_box .left_box .tel_number {
	display: inline-block;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.3;
	padding-left: 23px;
	background-image: url(../img/share/icon_06.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 16px;
}
#conts_01 .tel_box .left_box .time {
	font-size: 1.2rem;
	line-height: 1.5;
	text-align: center;
    padding-left: 97px;
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#conts_01 .tel_box .right_text {
	text-align: center;
}

#conts_form .caution_list {
	width: 100%;
    margin-bottom: 48px;
}
#conts_form .form_box {
	width: 100%;
    display: block;
	border-bottom: 2px dotted #597158;
}
#conts_form .form_box tbody {
    display: block;
}
#conts_form .form_box:last-of-type {
	border-bottom: none;
}
#conts_form .form_box tr {
	width: 100%;
    display: block;
	margin-bottom: 15px;
    font-size: 1.4rem;
    line-height: 1.3;
}
#conts_form .form_box .trigger li:nth-child(2) {
    width: 100%;
}
#conts_form .form_box tr th {
	width: 100%;
    display: block;
    padding: 0;
    font-weight: bold;
	margin-bottom: 6px;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#conts_form .form_box tr th.required {
	background: none;
    font-size: 1.5rem;
    line-height: 1.3;
}
#conts_form .form_box tr th.required::after {
	content: "必須";
    display: inline-block;
	font-size: 1rem;
	line-height: 1.3;
	padding: 1px 3px 1px;
	position: relative;
	background-color: none;
	background-color: #ed4219;
    margin-left: 8px;
}
#conts_form .form_box tr th.icon_top {
	position: relative;
}
#conts_form .form_box tr th.icon_top::after  {
	content: "必須";
    display: inline-block;
	font-size: 1rem;
	line-height: 1.3;
	padding: 1px 3px 1px;
	position: relative;
	background-color: none;
	background-color: #ed4219;
    margin-left: 8px;
}
#conts_form .form_box tr td {
	display: block;
    padding-bottom: 8px;
}
#conts_form .form_box tr td.form_check ul li {
    margin-bottom: 4px;
    line-height: 1.9;
}
#conts_form .form_box tr td.form_check ul lii:nth-child(even) {
    margin-right: 0;
}
#conts_form .form_box tr td.form_check ul li.checked {
	background-image: url(../img/contact/icon_on.png);
}
#conts_form .form_box tr td input[type="text"] {
	padding: 19px 13px 17px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    background-color: #597158;
    color: #fff;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.3;
    outline: 0;
}
#conts_form .form_box tr td input[name="introducer"] {
	padding: 15px 13px 13px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    background-color: #597158;
    color: #fff;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.3;
    outline: 0;
}
#conts_form .form_box tr td textarea {
    width: 100%;
	height: 340px;
    padding: 19px 13px 17px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #597158;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.3;
    outline: 0;
}
#conts_form .title_box {
	text-align: center;
	padding-top: 38px;
	margin-bottom: 28px;
    font-size: 15px;
}
#conts_form .title_box h4 {
	font-size: 1.8rem;
    line-height: 1.3;
	font-weight: bold;
    margin-bottom: 10px;
}
#conts_form button {
	width: 285px;
	margin: 0 auto;
	font-size: 14px;
	display: block;
	color: #ffffff;
	text-decoration: none;
    padding: 16px 0 14px;
	border: 2px solid #ffffff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-image: url(../img/share/icon_05.png);
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 8px;
    transition-duration: .3s;
    background-color: transparent;
}
#conts_form button:hover {
	background-color: #ffffff;
	color: #384c37;
	background-image: url(../img/share/icon_05_g.png);
}
#conts_form .form_box tr td input[type="checkbox"] {
    display: none;
}
#conts_form .form_box tr td label {
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    padding: 0 0 0 21px;
    vertical-align: middle;
    cursor: pointer;
}
#conts_form .form_box tr td label:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    z-index: 99;
    top: 50%;
    left: 0px;
    display: block;
    margin-top: -10px;
    width: 11.5px;
    height: 11.5px;
    border: 2.5px solid #597158;
    border-radius: 4px;
    content: '';
}
#conts_form .form_box tr td label:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    z-index: 9999;
    top: 40%;
    left: 5px;
    display: block;
    margin-top: -7px;
    width: 5px;
    height: 9px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    content: '';
    opacity: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}  
#conts_form .form_box tr td input[type="checkbox"]:checked +  label:before {
    opacity: 1;
}   
}
/* プライバシーポリシー同意チェック */
#conts_form .privacy_agree {
    margin: 30px 0 0;
    text-align: center;
}
#conts_form .privacy_agree label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    cursor: pointer;
}
#conts_form .privacy_agree input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 6px;
}
#conts_form .privacy_agree a {
    text-decoration: underline;
}
#conts_form .privacy_agree .error {
    display: block;
    margin-bottom: 8px;
}
