@charset "UTF-8";

/*-----------------------------------------------------
sub
-------------------------------------------------------*/

#sub_content{
    padding: 100px 0 100px 0;
}

/*-----------------------------------------------------
global_sub
-------------------------------------------------------*/

.g_sub_t1{
	text-align: left;
}

.g_sub_t1 h2{
	font-size: var(--s28);
	line-height: var(--lh14);
	font-weight: bold;
}

.g_sub_t2{
	text-align: left;
}

.g_sub_t2 h3{
	font-size: var(--s22);
	line-height: var(--lh14);
	color: var(--color1);
	font-weight: bold;
	text-align: left;
}

.g_sub_text{
	padding: 0px 0 30px;
	line-height: var(--lh18);
	font-weight: bold;
}

.g_sub_text a{
	display: inline-block;
}

.g_sub_box{
	padding: 50px 0 0px;
}

/*-----------------------------------------------------
sub_table
-------------------------------------------------------*/

.sub_table{
	padding: 0 0 0 0;
}

.sub_table dl{
    padding: 30px 0px;
    border-bottom: solid 1px #ccc;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    -o-display: flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    line-height: var(--lh18);
}

.sub_table dl dt{
    padding-left: 20px;
    width: 25%;
    font-weight: bold;
}

.sub_table dl dd{
    padding-left: 20px;
    width: 75%;
}

/*-----------------------------------------------------
service
-------------------------------------------------------*/
.service_box{
	padding: 50px 0 100px;
}

.service_img{
	width: 100%;
	margin: 0 auto 36px auto;
}

.service_text{
	line-height: var(--lh20);
	font-weight: bold;
}

.service_list{
	padding: 50px 0 0;
  	display:-webkit-box;
	display: -webkit-flex;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	gap: 30px 0;
}

.service_list ul{
	width: 46%;
  	display:-webkit-box;
	display: -webkit-flex;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}

.service_list ul li{
  	display:-webkit-box;
	display: -webkit-flex;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	gap: 10px 0;
	border-bottom: 1px solid #ccc;
	font-weight: bold;
	padding: 0 0 30px;
	margin-bottom: 30px;
}

.service_list ul li.t{
	font-size: var(--s22);
	margin-bottom: 30px;
	padding: 0 0 0;
	border-bottom: 0;
	text-align: center;
}
/*-----------------------------------------------------
faq
-------------------------------------------------------*/
.faq_box{
	padding: 40px 0 0 0;
}


.faq_box ul{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	gap: 30px;

}

.faq_box ul li{
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
}

.faq_box ul li .q{
	font-size: var(--s20);
	margin-bottom: 10px;
	font-weight: bold;
}

.faq_box ul li .a{
	margin-left: 30px;
	line-height: var(--lh18);
}


/*-----------------------------------------------------
flow
-------------------------------------------------------*/

.flow_box ul {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.flow_box ul li {
	display: flex;
	border: 1px solid #ccc;
	align-items: stretch;
}

.flow_box ul li .ic {
	width: 13%;
	background: var(--color3);
	color: #fff;
	font-size: var(--s26);
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}

.flow_box ul li .ic span {
	font-size: var(--s14);
	margin-bottom: 2px;
}

.flow_box ul li .t {
	width: 28%;
	font-size: var(--s18);
	line-height: var(--lh16);
	font-weight: bold;
	border-right: 1px solid #ccc;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 0 10px;
}

.flow_box ul li .text {
	flex: 1;
	line-height: var(--lh18);
	padding: 30px 30px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}
/*-----------------------------------------------------
mail
-------------------------------------------------------*/
.mail_box .g_t1{
	margin-bottom: 60px;
}

.mail_tb{
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	padding: 0 0 0;
}

.mail_tb th,
.mail_tb td{
	padding: 50px 0 0 0;
	line-height: var(--lh16);
	text-align: left;
}

.mail_tb th{
	width: 28%;
	background: #fff;
	font-weight: bold;
}

.mail_tb td{
	width: 72%;
	background: #fff;
}

.mail_tb td input{
}

.mw_wp_form .error{
	font-size: 14px!important;
}


.mail_tb span.hissu{
	display: inline-block;
	margin: 0 0 0 8px;
	font-size: var(--s12);
	color: #ff0000;
	border-radius: 30px;
}

.mail_tb td input[type=text],[type=email],[type=tel]{
	width: 100%;
    height: 48px;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 6px;
}

.mail_tb td span.input_s input[type=text]{
	width: 60%;
}

.mail_tb td span.input_ss input[type=text]{
	width: 20%;
}

.mail_tb td input[type="text"]:focus, textarea:focus{
    border: 2px solid #eaeaea !important;
    outline: 0;
    box-sizing: border-box;
    transition: all 0.1s ease-out;
}

input:focus::-webkit-input-placeholder {
	color: transparent;
}
input:focus::-moz-placeholder {
	color: transparent;
}
input:focus::-ms-input-placeholder {
	color: transparent;
}
input:focus::placeholder {
	color: transparent;
}

.mail_tb ::placeholder {
    color:#9f9e9f;
}

.mail_tb td label{
	display: inline-block;
	margin: 0 20px 0 0;
}

.mw_wp_form .horizontal-item + .horizontal-item{
	margin: 0!important;
}

.mail_tb select{
	border: 1px solid #ccc;
	padding: 8px 18px;
	border-radius: 6px;

}

.mail_tb input[type=radio]{
	display: inline-block;
	position: relative;
	top:1px;
	margin: 6px 0;
}

.mail_tb input[type=checkbox]{
	display: inline-block;
	position: relative;
	top:1px;
	margin: 0 5px 0 0;
}

.mail_tb td input[type=file]{
	display: block;
	margin: 0 0 10px;
}

.mail_tb td span.txt{
	display: inline-block;
	margin: 0 16px 0 0;
}


.mail_tb td span.txt2{
	display: inline-block;
	margin: 0 16px 0 10px;
}


.mail_tb td textarea{
	width: 100%;
    height: 200px;
    padding: 15px;
    border: 1px solid #ccc;
    box-sizing: border-box;
    border-radius: 6px;
}

.mail_privacy{
	text-align: center;
}

.mail_privacy a{
	display: inline-block;
	text-decoration: underline!important;
	color: var(--color1);
}

.mail_tb .mail_submit{
	text-align: center;
}

.mail_tb input[type=submit]{
	padding: 20px 66px 20px 66px;
	border-radius: 100px;
	position: relative;
	display: inline-block;
	text-align: center;
	font-size: var(--s15);
	border: 1px solid #333;
	font-weight: bold;
	cursor: pointer;
	background: #fff;
	color: #000;
    -webkit-appearance: none;
    appearance: none;
}


.mail_bt input[type=submit]:hover{
	text-decoration: none;
    opacity: 0.8;
	cursor: pointer;
}

.trigger_other{
    height: 60px !important;
    margin-top: 15px;
}

.wpcf7-not-valid-tip{
	font-size: var(--s15);
	font-weight: bold;
	color: #FF0000;
}

.wpcf7-spinner {
    display: block!important;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border: none;
    padding: 20px 20px;
	font-size: var(--s15);
	text-align: center;
	color: #FF0000;
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
    padding: 20px 20px;
	font-size: var(--s15);
	text-align: center;
	color: #FF0000;
}

.wpcf7-list-item {
    margin: 0 0 0 0!important;
}
/*-----------------------------------------------------
privacy
-------------------------------------------------------*/

.privacy_box{
	padding: 0px 0 0 0;
}

.privacy_box .g_t1{
	margin-bottom: 60px;
}

.privacy_box a{
	display: inline-block;
	color: var(--color1);
}

.privacy_box .text{
    line-height: var(--lh18);
    margin-bottom: 40px;
}

.privacy_box .list .row:first-child{
    border-top: 1px solid #ccc;
}

.privacy_box .list .row{
    padding: 35px 0px;
    border-top: 1px solid #ccc;
}

.privacy_box .list .row h3{
    display: block;
    font-weight: bold;
    padding-bottom: 16px;
}

.privacy_box .list .row p{
    line-height: var(--lh18);
}


/*-----------------------------------------------------
pagenation
-------------------------------------------------------*/

.pagenation{
	width: auto;
	text-align: center;
	margin: 0 auto;
  	display:-webkit-box;
	display: -webkit-flex;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
	gap: 6px 10px;
}

a.page-numbers,
.pagination .current{
    color: #000;
	text-align: center;
	line-height: 1;
	padding: 14px 16px;
	display: inline-block;
	background: #fff;
	border: 1px solid #ccc;
	text-decoration: none;
	border-radius: 6px;
}

.current {
    color: #fff;
	background: var(--bg1);
	text-align: center;
	line-height: 1;
	padding: 14px 16px;
	display: inline-block;
	text-decoration: none;
	border-radius: 6px;
}

a.page-numbers:hover,
.pagination a:hover .current a:hover {
	color: #fff;
	background: var(--bg1);
	border: 1px solid var(--bg1);
	text-decoration: none;
}

/*-----------------------------------------------------
breadcrumb
-------------------------------------------------------*/

#breadcrumb{
}

#breadcrumb ul{
    display: flex;
}

#breadcrumb ul li{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    -o-display: flex;
    display: flex;
    font-size: var(--s13);
    white-space: nowrap;
}

#breadcrumb ul li a{
}

#breadcrumb ul li::after {
    content: '>';
    padding: 0px 8px;
}


#breadcrumb ul li:last-child::after {
    content: none;
    padding: 0px;
}
