@charset "utf-8";

/* お問い合わせの前に（top_navi）
---------------------------------------- */
#top_navi{
  width: 850px;
  margin: auto;
}
.top_navi-list{
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap:20px 25px;
  margin-bottom:60px;
}
.top_navi-item{
  width:calc(100% / 2 - 25px);
}
.top_navi-item a{
  display: block;
  width: 100%;
  height: 56px;
  line-height: 58px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  border: 1px solid #eee;
  box-shadow:0px 0px 10px rgb(0 0 0 / 16%);
  text-decoration:none;
  border-radius: 5px;
}
/* よくあるご質問ボタン（faq_link）*/
.faq_link {
  width: 500px;
  margin:0 auto 54px;
}
.faq_link a {
  position:relative;
  background: #FFF;
  display: block;
  border: var(--color-main) solid 1px;
  box-sizing: border-box;
  color: var(--color-main);
  cursor: pointer;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  text-decoration: none;
  transition-duration: .3s;
  width: 100%;
  height: 56px;
  border-radius: 40px;
  line-height: 58px;
  letter-spacing: 0.05em;
}
.faq_link a:hover {
  background:var(--color-hover-bg);
  color:var(--color-main);
}
.faq_link a span{
  position: relative;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--color-main);
  top: 2px;
  left: 15px;
  display: inline-block;
}
.faq_link a span::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 11px;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 10px;
  background-color: #fff;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.faq_link a:hover span::after{
  background: var(--color-hover-bg);
}



/* お問い合わせフォーム（top_navi）
---------------------------------------- */
/* エラー表示 */
p.error-message {
  font-size: 0.8em;
  font-weight: bold;
  color: #F36960;
  letter-spacing: 0;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 35%;
  line-height: 1.6;
  word-break: auto-phrase;
}

#error {
  background-color:#FFE6E6;
  padding:10px 10px 10px 30px;
  color:#FF0000;
  margin-bottom: 30px;
}

/* reception_info ---------- */
.reception_inner{
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #D70C18;
  margin-bottom: 22px;
  width: 628px;
  height: 67px;
}
.reception_inner .time{
margin-right: 25px;
}
.caution_gr{
  background: #efefef;
  padding: 1.5em 30px;
}
.caution_gr p{
font-size: 14px;
}
.red_caution{
color: #FF3300;
letter-spacing: 0.07em;
font-size: 15px;
}

/* テーブル基本設定 */
#main table {
  background: #CCCCCC;
  width: 100%;
  border-collapse: separate;
  border-spacing: 1px;
}
#main table,#main th,#main td{
  box-sizing: border-box;
}
#main th {
  font-weight: bold;
  width: 260px;
  padding: 30px 20px;
  background: #F5F5F5;
  color: #444444;
  position: relative;
}
#main .must{
  color: #fff;
  background: #F36960;
  font-size: 14px;
  font-weight: bold;
  border-radius: 3px;
  line-height: 1;
  display: inline-block;
  width: 50px;
  padding: 5px 0;
  text-align: center;
  position: absolute;
  right: 30px;
}
#main td {
  padding: 0 0 0 40px;
  background: #FFFFFF;
  position: relative;
}
#main input[type=text], #main select{
  height: 49px;
}
#main input[type=text], #main textarea, #main select {
  padding: 10px 15px;
  width: 60%;
  border: 1px solid #ddd;
  border-radius: 3px;
  box-sizing: border-box;
}
#main textarea {
  margin-top: 25px;
}
input, textarea, select,option{
  line-height: 1.75;
}
/*　個人情報の取扱いについて　*/
#kjoho {
  margin:20px 0;
  border:#CCC solid 1px;
}
#kjoho h3 {
  height:30px;
  margin:0;
  padding:0;
  background:#CCC;
  border:0;
  color:#333;
  font-size:100%;
  font-weight:bold;
  line-height:30px;
  text-align:center;
  border-radius:0;
}

#kjoho iframe {
  width:100%;
  height:200px;
}

/* ---------- */
#main button[type=button],
#main button[type=submit],
#main input[type=button],
#main input[type=reset],
#main input[type=submit] {
  width: 310px;
  height: 50px;
  line-height: 44px;
  color: #fff;
  text-align: center;
  background: var(--color-main);
  margin: auto;
  border: 0;
  border-radius: 60px;
  font-weight: bold;
  font-size: 18px;
  cursor: pointer;
  letter-spacing: 0.07em;
}

#send-box{
  margin:0 auto 70px;
  padding:20px;
  background:#FFFFCC;
}

#send-box p{
  text-align:center;
}

/*　送信ボタン　*/
#send_box{
  margin:0 auto 70px;
  padding:20px;
  position: relative;
}
#send_box p{
  text-align:center;
  font-size: 18px;
}
#send_box .error-message{
  font-size: 16px;
  width: 100%;
  position: static;
  margin: 20px auto 0;
}
#send_box .label_group {
  display: -webkit-box;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  gap: 0 25px;
}
#send_box input:hover{
  opacity: .8;
}
#send_box .error{
  position: static;
}
/* リセットするボタン */
input#reset{
  display:none;
}
/* 確認ページ */

div.btn {
  text-align: center;
  margin: 60px auto 0;
}
.btn #to_entry,
.btn #to_exec{
padding:5px 10px;
}

#main #to_entry:last-child, #main #to_exec {
  margin-left: 50px;
}

/*　送信完了　*/

#send_ok{
  margin:50px 20px 50px;
  padding:30px 20px;
}
#send_ok dt{
  font-weight:bold;
  font-size:24px;
  color:#333;
  margin-bottom:30px;
}

#send_ok dd{
  font-size:16px;
}

#finish {
  margin: 40px 0 100px 40px;
}

#finish strong {
  font-size: 150%;
  margin-bottom: 10px;
}

#finish p {
  margin-bottom: 20px;
}

/* サイドメニューの自身の子以外を非表示 */
.g_order_children,
.g_address_children,
.g_procedure_children,
.g_item_children,
.content_children{
  display:none;
}


/* ----------contact_box----------*/
.contact_box{
  border-radius: 10px;
  box-sizing: border-box;
  margin: 0 auto 60px;
  position: relative;
  width: 625px;
}
.contact_box::before {
  content: "";
  display: block;
  background: url("https://nenga.aisatsujo.jp/group_common/images/contact/contact_info-icon.webp") no-repeat 0 0 / contain;
  width: 214px;
  height: 200px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.contact_area {
  padding: 30px 0 20px 220px;
  background: var(--color-base);
  border-radius: 5px;
}
.contact_text{
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
  line-height: 1.5;
}

.contact_tell{
  font-family: 'korolev', sans-serif;
  font-size: 40px;
  letter-spacing: 0.05em;
  display: flex;
  align-items: flex-end;
  font-weight: 700;
}
.contact_tell::before {
  content: "";
  display: inline-block;
  background: url("https://nenga.aisatsujo.jp/group_common/images/tel/ico_tel.svg") no-repeat 0 0 / contain;
  width: 22px;
  height: 30px;
  margin-right: 8px;
}
.contact_time{
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  font-feature-settings: "palt" 1;
}

.privacymark {
  text-align: center;
  margin: 40px 0 0;
}


/*reCAPTCHA 左へ*/
/* .grecaptcha-badge {
  left:0 !important;
  bottom: 0 !important;
} */
.page_top{
  bottom: 90px;
}
 #bnr_f_discount{
  bottom: 155px;
 }

/* 注釈ボックス */
.kjoho_cautioun {
  margin: 20px auto;
  padding: 20px 36px;
  width: 88%;
  font-weight: bold;
  line-height: 1.75;
  background: #FFEEEE;
  color: #ff0000;
}
.kjoho_cautioun a {
  text-decoration: none;
  color: #ff0000;
}
.kjoho_cautioun a:hover {
  text-decoration: underline;
}