@charset "utf-8";
/*////////////////////////////////////
contact_main_top_section
@media screen and (min-width: 768px)
////////////////////////////////////*/
@media screen and (min-width: 768px){
  #spimg {
    display: none;
  }

#contact_main_top_section{
position:relative;
display:flex;
align-items:center;
aspect-ratio:16 / 5;
min-height:360px;
max-height:440px;
padding:110px 40px 0;
background-image:url("../contact/img/contact_main_top_section.jpg");
background-repeat:no-repeat;
background-position:center right;
background-size:cover;
}
#contact_main_top_section::before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(90deg,rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.4) 44%,rgba(255,255,255,0.18) 100%);
z-index:0;
overflow:hidden;
}

#contact_main_top_section .main_top_section_text{
position:relative;
z-index:1;
width:min(720px,90%);
}

#contact_main_top_section .page_title{
margin:0;
padding-bottom:18px;
font-size:clamp(3.0rem,4vw,5.2rem);
line-height:1.4;
font-weight:700;
color:#00a898;
padding-top: 50px;
}

#contact_main_top_section .page_text{
margin:0;
font-size:1.9rem;
line-height:2;
font-weight:500;
color:#333333;
}
}
/*////////////////////////////////////
contact_main_top_section
@media screen and (min-width: 0px) and (max-width: 767px)
////////////////////////////////////*/
@media screen and (min-width: 0px) and (max-width: 767px){
#pcimg{
	display: none;
}
#contact_main_top_section{
position:relative;
display:flex;
align-items:center;
min-height:300px;
padding:90px 24px 40px;
background-image:url("../contact/img/contact_main_top_section_sp.png");
background-repeat:no-repeat;
background-position:center right;
background-size:cover;
}
#contact_main_top_section::before{
content:"";
position:absolute;
inset:0;
background:rgba(255,255,255,0.6);
z-index:0;
}

#contact_main_top_section .main_top_section_text{
position:relative;
z-index:1;
width:100%;
}

#contact_main_top_section .page_title{
margin:0;
padding-bottom:14px;
font-size:3.0rem;
line-height:1.4;
font-weight:700;
color:#00a898;
padding-top: 40px;
}

#contact_main_top_section .page_text{
margin:0;
font-size:1.8rem;
line-height:1.9;
font-weight:500;
color:#333333;
}
}

/*////////////////////////////////////
contact_list_header_section
@media screen and (min-width: 768px)
////////////////////////////////////*/
@media screen and (min-width:768px){
#contact_list_header_section{
position:relative;
display:block;
}
}


/*////////////////////////////////////
contact_list_header_section
@media screen and (min-width: 0px) and (max-width: 767px)
////////////////////////////////////*/
@media screen and (min-width:0px) and (max-width:767px){
#contact_list_header_section{
position:relative;
display:block;
}
}


/*////////////////////////////////////
contact_area
@media screen and (min-width: 768px){
////////////////////////////////////*/
@media screen and (min-width: 768px){
#contact_area {
	position: relative;
	display: block;
}
#contact_area_note{
	position: relative;
	width: 100%;
	margin-bottom: 70px;
	border: 1px solid rgba(198, 198, 198, 1);
	background: #fefefe;
	padding: 15px 20px;
}
#contact_area_note_title{
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
}
#contact_area_note_title h3{
	font-size: 2rem;
	margin-bottom: 1em;
	font-weight: 700;
	color: #333;
	padding-top: 20px;
}
#contact_area_note_text{
	position: relative;
	display: block;
	width: 100%;
	color: #333;
	font-size: 1.8rem;
	font-weight: 400;
}
#contact_area_note_text span{
	position: relative;
	display:block;
	margin: 5px;
	padding: 10px 15px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.6;
	text-decoration: underline;
	color: #E23538;
}

#contact_place {
	position: relative;
	width: 100%;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
}
.form_area {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items:flex-start;
	margin-bottom: 10px;
}
.form_subtitle1_sp,
.form_subtitle2_sp{
	display: none;
}
.form_title {
	position: relative;
	width: 20%;
	margin-right: 1%;
	font-size: 1.8rem;
	font-weight: 600;
	padding: 10px;
}
.form_subtitle1,
.form_subtitle2 {
	width: 8%;
	height: 46px;
	margin-right: 1%;
	font-size: 1.8rem;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
}
.form_subtitle1 {
	background: rgba(0,168,152,1.00);
	color: #FFF;
}
.form_subtitle2 {
	background: #fefefe;
	color: #333;
}
.form_place {
	position: relative;
	width: 70%;
}

.alert_ng{
	padding: 3px 5px;
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #FFF;
	background: #FF0000;
	border-radius: 5px;
}

.alert_ng::before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border: 5px solid transparent;
	border-top: 5px solid #FF0000;
}

#coution1,
#coution2,
#coution3,
#coution4,
#coution5,
#coution6{
	position: absolute;
	top: -25px;
	left: 0;
}

.formbtn_place{
	position: relative;
	width: 100%;
    height: 50px;
	font-size: 3rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	text-align: center;
}

#privacy_area{
	position: relative;
	width: 100%;
	height: 200px;
	border: 1px solid #EEE;
	margin: 30px 0;
	padding: 15px;
	overflow: scroll;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;	
}
#privacy_area h3{
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: 400;
}
#privacy_check{
	position: relative;
	text-align: center;
	margin-bottom: 50px;
    font-size: 1.8rem;
	font-weight: 300;
	letter-spacing: 0.1em;
}
#contact_type{
cursor:pointer;
padding:0 60px 0 25px;
background:#fff;
color:#444;
appearance:none;
-webkit_appearance:none;
-moz_appearance:none;
}

#contact_type:invalid{
color:#aaa;
}

#contact_type option{
color:#444;
}

.form_select_place{
position:relative;
}

.form_select_place::after{
content:"";
position:absolute;
top:50%;
right:25px;
width:11px;
height:11px;
border-right:2px solid #777;
border-bottom:2px solid #777;
transform:translateY(-70%) rotate(45deg);
pointer-events:none;
}

@media screen and (max-width:768px){
#contact_type{
padding:0 48px 0 18px;
}

.form_select_place::after{
right:18px;
width:9px;
height:9px;
}
}
}
/*////////////////////////////////////
contact_area
@media screen and (min-width: 0px) and (max-width: 767px){
////////////////////////////////////*/
@media screen and (min-width: 0px) and (max-width: 767px){
#contact_area {
	position: relative;
	display: block;
}
#contact_area_note{
	position: relative;
	width: 100%;
	margin-bottom: 70px;
	border: 1px solid rgba(198, 198, 198, 1);
	background: #fefefe;
	padding: 15px 20px;
}
#contact_area_note_title{
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
}
#contact_area_note_title h3{
	padding-top: 15px;
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: 600;
	color: #333;
}
#contact_area_note_text{
	position: relative;
	display: block;
	width: 100%;
	color: #333;
	font-size: 1.8rem;
}
#contact_area_note_text span{
	position: relative;
	display:block;
	margin: 5px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.6;
	color: #E23538;
	text-decoration: underline;
	padding-top: 10px;
}
#contact_place {
	position: relative;
	width: 100%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
#contact_type{
cursor:pointer;
padding:0 60px 0 25px;
background:#fff;
color:#444;
appearance:none;
-webkit_appearance:none;
-moz_appearance:none;
}

#contact_type:invalid{
color:#aaa;
}

#contact_type option{
color:#444;
}

.form_select_place{
position:relative;
}

.form_select_place::after{
content:"";
position:absolute;
top:50%;
right:25px;
width:11px;
height:11px;
border-right:2px solid #777;
border-bottom:2px solid #777;
transform:translateY(-70%) rotate(45deg);
pointer-events:none;
}

@media screen and (max-width:768px){
#contact_type{
padding:0 48px 0 18px;
}

.form_select_place::after{
right:18px;
width:9px;
height:9px;
}
}
.form_area {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items:flex-start;
	margin-bottom: 10px;
}
.form_title {
	position: relative;
	width: 50%;
	margin-right: 1%;
	font-size: 1.8rem;
	font-weight: 600;
	padding: 10px;
}
.form_subtitle1,
.form_subtitle2 {
	display: none;
}
.form_subtitle1_sp,
.form_subtitle2_sp {
	display: inline-block;
	padding: 10px;
	font-size: 1.8rem;
}
.form_subtitle1_sp {
	background:rgba(0,168,152,1.00);
	color: #FFF;
}
.form_subtitle2_sp {
	background: rgba(228,228,228,1.00);
	color: #333;
}
.form_place {
	position: relative;
	width: 100%;
}

.alert_ng{
	padding: 3px 5px;
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #FFF;
	background: #FF0000;
	border-radius: 5px;
}

.alert_ng::before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border: 5px solid transparent;
	border-top: 5px solid #FF0000;
}

#coution1,
#coution2,
#coution3,
#coution4,
#coution5,
#coution6{
	position: absolute;
	top: -25px;
	left: 30%;
}

.formbtn_place{
	position: relative;
	width: 100%;
    height: 50px;
	font-size: 3rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	text-align: center;
}

#privacy_area{
	position: relative;
	width: 100%;
	height: 200px;
	border: 1px solid #EEE;
	margin: 30px 0;
	padding: 15px;
	overflow: scroll;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;	
}

#privacy_area h3{
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: 400;
	
}

#privacy_check{
	position: relative;
	text-align: center;
	margin-bottom: 50px;
    font-size: 1.8rem;
	font-weight: 300;
	letter-spacing: 0.1em;
}
}
/*////////////////////////////////////
thanks_area
@media screen and (min-width: 768px)
////////////////////////////////////*/
@media screen and (min-width: 768px){
#thanks_area {
	position: relative;
	width:calc(100% - 200px);
	margin-left: 200px;
	margin-bottom: 100px;
}
#thanks_word {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	font-size: 1.8rem;
	font-weight: 400;
	text-align: center;
}
#thanks_image {
	position: relative;
	width: 400px;
	margin-left: auto;
	margin-right: auto;
}
#contact_send_word {
	position: relative;
	text-align: center;
	margin-bottom: 50px;
	font-size: 1.8rem;
	font-weight: 300;
}
#contact_send_img {
	position: relative;
	width: 90%;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	
}
}
/*////////////////////////////////////
thanks_area
@media screen and (min-width: 0px) and (max-width: 767px){
////////////////////////////////////*/
@media screen and (min-width: 0px) and (max-width: 767px){
#thanks_area {
	position: relative;
	width:100%;
	margin-bottom: 100px;
}
#thanks_word {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	font-size: 1.8rem;
	font-weight: 400;
	text-align: center;
}
#thanks_image {
	position: relative;
	width: 400px;
	margin-left: auto;
	margin-right: auto;
}
#contact_send_word {
	position: relative;
	text-align: center;
	margin-bottom: 50px;
	font-size: 1.8rem;
	font-weight: 300;
}
#contact_send_img {
	position: relative;
	width: 90%;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	
}
}
/* main_top_section_common_adjust_start */
@media screen and (min-width:768px){
#contact_main_top_section{
position:relative;
display:flex;
align-items:center;
justify-content:flex-start;
aspect-ratio:16 / 5;
min-height:320px;
max-height:440px;
padding:80px 40px 40px;
background-image:url("../contact/img/contact_main_top_section.jpg");
background-repeat:no-repeat;
background-position:center right;
background-size:cover;
}
#contact_main_top_section .main_top_section_text{
position:relative;
z-index:1;
width:min(720px,90%);
text-align:left;
}
#contact_main_top_section .page_title{
margin:0;
padding:0;
font-size:clamp(3.0rem,4vw,5.2rem);
line-height:1.4;
font-weight:700;
color:#00a898;
text-align:left;
}
}

@media screen and (min-width:0px) and (max-width:767px){
#contact_main_top_section{
position:relative;
display:flex;
align-items:center;
justify-content:flex-start;
min-height:300px;
padding:80px 24px 40px;
background-image:url("../contact/img/contact_main_top_section.jpg");
background-repeat:no-repeat;
background-position:center right;
background-size:cover;
}
#contact_main_top_section .main_top_section_text{
position:relative;
z-index:1;
width:100%;
text-align:left;
}
#contact_main_top_section .page_title{
margin:0;
padding:0;
font-size:3.0rem;
line-height:1.4;
font-weight:700;
color:#00a898;
text-align:left;
}
}
/* main_top_section_common_adjust_end */
