@charset "UTF-8";
body {
  background-color: #fff;
  color: #333;
}

a,
a:link,
button {
  color: #EF7B1C;
  text-decoration: underline;
}
.c {text-align:center;}
.r {text-align:right;}
.l {text-align: left!important;}
.text_indent{ padding-left: 1em; text-indent: -1em;}




a:hover,
button:hover {
  color: #0058b4;
  transition: all 0.3s;
  text-decoration: none;
  cursor: pointer;
}

a.hover_underline,
button.hover_underline {
  text-decoration: none;
}

a.hover_underline:hover,
button.hover_underline:hover {
  text-decoration: underline;
}

#no_script {
  position: relative;
  width: 100%;
  background: #f00;
  color: #fff;
  text-align: center;
  padding: 5px 10px;
  margin: 0;
  font-size: 0.875rem;
  z-index: 100;
}

/*スマホ・PC振り分け*/
.sp,
.sp-only {
  display: none !important;
}
.sp_inline,
.sp_tab_inline {
  display: none !important;
}

.tb_off {
  display: none !important;
}

/* structure
====================================================================================================================================== */
html,
body {
  width: 100%;
}

body {
  overflow-y: scroll;
  min-width: 1200px;
}

#container {
  width: 100%;
  font-size:  1rem;
  line-height:1.75rem;
  overflow: hidden;
}

.wrapper {
  margin: 0 auto;
  width: 960px;
}

.wrapper:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.inner_width {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

.narrow_width {
  width: 100%;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
#page_title_wrap {
border-top:1px #f2f2f2 solid;
border-bottom:1px #f2f2f2 solid;
background-color:#FFF7EC;
margin-bottom: 36px; padding: 0; }
#page_title_wrap .wrapper{
position:relative;
padding:3em 0;
}
#page_title_wrap .wrapper::after {
}



h1 .main_title {
    display: block;
    font-size: 40px;
    font-weight: bold;
    padding: 5px 5px;
    color: #4E3627;
}
h1 .small_title {  padding: 5px 10px;}
#page_title_wrap { position: relative;}


.wrapper_waku01{position: relative; z-index: 0; 
padding-top: 20px;
padding-bottom: 0px;
}
.wrapper_waku01::before{
  content: '';
  position: absolute;
  left:0;
  top: 0;
  
  /*四角形を傾けます*/
  transform: skewY(2deg);
  transform-origin: top right;
  
  z-index: -1;
  width:100%;
  height:100%;
  background:#FFEAC5;
}












/* ↓タイトル部 ページバック記述 ↓====================================== */
.wrapper_waku01 .wrapper{
margin: 0 auto 50px auto;
    width: 960px;
    padding-bottom: 10px;
}

.wrapper_waku01 .wrapper .rounded_box{
border-radius: 10px;
margin-top: 40px;
margin-bottom: 90px;
}

.wrapper_waku01 .wrapper .rounded_box .rounded_box_title{
    background-color: #FBF6E8;
    border: 2px #553800 solid;
    color: #553800;
    font-size: 1.35rem;
    text-align: center;
    padding: 8px 15px;
    margin: 0 auto ;    
    border-radius: 3px;
    width: calc(100% - 50px);
}

.wrapper_waku01 .wrapper .rounded_box .rounded_box_title_area{
    margin: -25px auto 30px auto;
    width: 100%;
    border-radius: 0px;
    position: absolute;
    padding: 0;
}
.wrapper_waku01 .wrapper .rounded_box.type02 .detail_area{
padding-top: 60px;
}

.wrapper_waku01 .rounded_box{
background-color: #fff;
font-size: 16px;
position: relative;
overflow: inherit;
}


#page_title_wrap .main_title{
display: inline-block;
float: left;
}

#page_title_wrap a.main_title_pageback{
  text-align: left;
  font-size: 14px;
  line-height:1.5em;
  font-weight: 600;
  display: inline-block;
  padding: 8px 16px 8px 36px;
  margin: 16px 10px 0px 5px ;
  border-radius: 3px;
  box-sizing: border-box;
  text-decoration: none;
  float: right;


}
#page_title_wrap a.main_title_pageback::after,
.clearfix::after {
   content: "";
   display: block;
   clear: both;
}

#page_title_wrap a.main_title_pageback:link,
#page_title_wrap a.main_title_pageback:visited{
  background-image: url(../images/document_icon_return.svg);
  background-repeat: no-repeat;
  background-position: top 7px left 8px;
  background-size: 22px 22px;
background-color: #fff; border: 1px #348536 solid; color:#1F5F44;}
#page_title_wrap a.main_title_pageback:hover,
#page_title_wrap a.main_title_pageback:active{
background-color: #348536; border: 1px #348536 solid; color:#fff;
background-image: url(../images/document_icon_return_white.svg);
    background-repeat: no-repeat;
  background-position: top 7px left 8px;
  background-size: 22px 22px;
}
/* ↑タイトル部 ページバック記述 ↑====================================== */
















.wrapper_waku02{position: relative; z-index: 0; 
padding-top: 20px;
padding-bottom: 0px;
}
.wrapper_waku02::before{
  content: '';
  position: absolute;
  left:0;
  top: 0;
  
  /*四角形を傾けます*/
  transform: skewY(2deg);
  transform-origin: top right;
  
  z-index: -1;
  width:100%;
  height:100%;
  background:#F9F9F9;
}



.wrapper_waku02 .wrapper{
margin: 0 auto 50px auto;
    width: 960px;
    padding-bottom: 10px;
}

.wrapper_waku02 .wrapper .rounded_box{
border-radius: 10px;
margin-top: 40px;
}

.wrapper_waku02 .wrapper .rounded_box .rounded_box_title{
    background-color: #FFFAEE;
    border: 2px #FA863E solid;
    color: #553800;
    font-size: 1.25rem;
    text-align: center;
    display: inline-block;
    padding: 8px 15px;
    margin: 0 auto;
    border-radius: 3px;
}
.wrapper_waku02 .rounded_box {
    background-color: #fff;
    font-size: 16px;
    position: relative;
    overflow: inherit;
    border-radius: 3px;
    border:4px #F49E00 solid;
}
.wrapper_waku02 .wrapper .rounded_box .rounded_box_title_area{
    margin: -25px auto 30px auto;
    width: 100%;
    border-radius: 0px;
    position: absolute;
    padding: 0;
}
.wrapper_waku02 .wrapper .rounded_box .detail_area{
padding-top: 60px;
}
















.step_content{
    padding: 0 0 10px 60px;
    margin: 0 0 30px 0;
    position: relative;
    box-sizing: border-box;
}
.step_content::before{

}
.step_content::after {
    content: "";
    display: block;
    height: calc(100% - 35px);
    border-left: solid 10px #EFEFEF;
    position: absolute;
    top: 0px;
    left: 10px;
    z-index: 500;
}
.l-entry-form .step_content h2.shop-title,
.step_content h2.shop-title{
margin-left: -50px;
    z-index: 600;
    font-size: 42px;
    position: inherit;
    border-left: solid 10px #FDAC74;
    padding: 3px 20px 3px 40px;
    font-weight: bold;
    color: #333;
    margin-bottom: 40px;
}



#navibar {
  padding-top: 0em;
  margin-bottom: 3em;
}

#navibar p {
  font-size: 0.875rem;
  font-weight: bold;
  text-align: left;
  margin-bottom: 0;
  color: #19A78E;
}

#navibar a {
  text-decoration: none;
  color: #19A78E;
}

#navibar a:hover {
  text-decoration: underline;
  color: #19A78E;
}





/* ==↓ ステップ パンくず ↓=============================== */

#navibar_step .navibar_step_ol li::after,
#navibar_step .navibar_step_ol li::before { box-sizing: border-box}


#navibar_step .navibar_step_ol {
 width:100%;
  font-family: source sans pro,sans-serif;
 min-width: 900px;
 padding: .5em 1em;
 margin: 1em auto;
 background-color: #F7F8FC;
 border-radius: .25em;
 display: flex;
 justify-content: space-between;
}

#navibar_step .navibar_step_ol::after {
 clear: both;
 content: "";
 display: table
}

#navibar_step .navibar_step_ol li {
 display: inline-block;
 float: left;
 margin: .25em 0
}

#navibar_step .navibar_step_ol li::after {
 display: inline-block;
 content: '\00bb';
 margin: 0 .6em;
 color: #959fa5
}
#navibar_step .navibar_step_ol li:last-of-type::after { display: none}
#navibar_step .navibar_step_ol li>* {
 display: inline-block;
 font-size: 1.4rem;
 color: #aaa;
}
#navibar_step .navibar_step_ol li.current>* { color: #FF9A2B;}
#navibar_step .navibar_step_ol li.visited>* { color: #2c3f4c;}

@media only screen and (max-width: 800px) {
#navibar_step .navibar_step_ol{display: inline-block; min-width: inherit}
.step_pc_only{ display: none; visibility: hidden;}
#navibar_step .navibar_step_ol li.current>* { font-weight: bold;}
#conts #navibar_step ol > li{ text-indent:0 ; padding: 0;}


#navibar_step .navibar_step_ol li::before {  color: #aaa;}
#navibar_step .navibar_step_ol li.current::before {  color: #AA411A;}
#navibar_step .navibar_step_ol li.visited::before {  color: #EEA98E;}

}

@media only screen and (min-width: 770px) {
/* =↓ ステップ パンくず ↓== */
#navibar_step .navibar_step_ol{padding:0 1.2em;;}
#navibar_step .navibar_step_ol li {  margin: 1.2em 0 }
#navibar_step .navibar_step_ol li::after {  margin: 0 1em }
#navibar_step .navibar_step_ol li>* {  font-size: 1.6rem }
#navibar_step .navibar_step_ol li.current>* { color: #477C6D;}
#navibar_step .navibar_step_ol li.visited>* { color: #2c3f4c;}


  #navibar_step .navibar_step_ol {
    background-color:transparent;
    padding: 0;
    text-align: center
   }

  #navibar_step .navibar_step_ol li {
    position: relative;
    float: none;
    margin: .4em 40px .4em 0
   }

  #navibar_step .navibar_step_ol li:last-of-type {  margin-right: 0 }
  #navibar_step .navibar_step_ol li::after {
    position: absolute;
    content: '';
    height: 4px;
    background: #edeff0;
    margin: 0
   }

  #navibar_step .navibar_step_ol li.visited::after { background-color: #FAD166;}
  #navibar_step .navibar_step_ol li>*,
  #navibar_step .navibar_step_ol li.current>* {
    position: relative;
    color: #2c3f4c
   }

  #navibar_step .navibar_step_ol.text-bottom li {
    width: 140px;
    text-align: center
   }
  #navibar_step .navibar_step_ol.text-bottom li::after {
    position: absolute;
    left: 50%;
    width: calc(100% + 50px)
   }
  #conts #navibar_step .navibar_step_ol > li:before { display: none;}
  #navibar_step .navibar_step_ol.text-bottom li>*::before {
    content: '';
    position: absolute;
    z-index: 1;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 12px;
    width: 12px;
    border-radius: 50%;
    background-color: #ddd;
   }

  #navibar_step .navibar_step_ol.text-bottom li::after {top: 3px }
  #navibar_step .navibar_step_ol.text-bottom li>* { padding-top: 20px }

  #navibar_step .navibar_step_ol.text-bottom li>*::before { top: 0 }
  #navibar_step .navibar_step_ol.count li { counter-increment: steps}
  #navibar_step .navibar_step_ol.count li>*::before { content: counter(steps) " - "}

  #navibar_step .navibar_step_ol.text-bottom.count li>*::before {
    content:counter(steps);
    height:30px;
    width: 30px;
    line-height: 31px;
    border: 4px #edeff0 solid;
    font-size: 20px;
    color: #fff
   }
  #navibar_step .navibar_step_ol.text-bottom li.visited>*::before{
    background-color: #F8B200; border: 4px #FAD166 solid;
  }
  #navibar_step .navibar_step_ol.text-bottom li.current>*::before{
    background-color: #FF8042; border: 4px #FEAB83 solid;
  }
  #navibar_step .navibar_step_ol.text-bottom.count li.current::after{background: #FEAB83;}
  #navibar_step .navibar_step_ol.text-bottom.count li::after { top: 16px ;}
  #navibar_step .navibar_step_ol.text-bottom.count li>* { padding-top:46px; }

}/*  /min-width: 770px  */


#navibar_step .navibar_step_ol span{ font-size: 14px; line-height: 1.25em;  }

/* ==↑ ステップ パンくず ↑=============================== */














/* ===================================================================================== */
/*  header   */
/* ===================================================================================== */

#header{ display: block; margin: 0 auto; max-width: 950px;}
#header .header_inner{
 display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.header_child{}

#header .header_inner .site_title{
margin: 6px 0px;

}
#header .header_inner .site_title img{
width: 100%; max-width:480px; 
}
#header .header_inner .kankocho_logo img{
width: 95%; max-width:120px; 
margin:10px 5px ;
}



#header .maintenance_area {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  background-color: #ffdf7c;
  color: #333;
  padding: 0.3em 20px;
  margin-bottom: 40px;
}


#header.in {
  padding: 0;
  margin-bottom: 0;
  height: 64px;
}
@font-face {
  font-family: "M PLUS Rounded 1c";
   src: url('../font/MPLUSRounded1c-Regular.ttf') format("truetype");
}

.site_title {
  margin-bottom: 40px;
  font-size: 18px;
  font-weight:bold;
  text-align: center;
  font-family: "M PLUS Rounded 1c";
}




#site_title span {
  display: block;
}

#site_title .logo {
  margin-bottom: 25px;
}

/* ===================================================================================== */
/*  メニュー   */
/* ===================================================================================== */
#fixed_contents {
  position:;
  top: 0;
  left: 0;
  z-index: 999999;
  width: 100vw;
  height: 64px;
  background-color: #19A78E;
  padding: 0 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: .3s;
}

#fixed_contents.top {
  height: 90px;
}

#fixed_contents.top.scroll {
  height: 64px;
}

#fixed_contents.top.scroll .header_logo {
  width: 137px;
}

#fixed_contents .header_logo,
#fixed_contents #site_title {
  margin: 0;
  font-size: 1rem;
}

#fixed_contents .header_logo {
  width: 193px;
  transition: .3s;
}

#fixed_contents #site_title {
  width: 137px;
}

#fixed_contents #site_title a:hover {
  opacity: 0.7;
}

#fixed_contents #header_menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

#fixed_contents .nav_list {
  margin-bottom: 0;
}

#fixed_contents .nav_list ul {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0;
}

#fixed_contents .nav_list ul li + li {
  margin-left: 40px;
}

#fixed_contents .nav_list ul li a {
  font-size: 0.875rem;
  font-weight: bold;
  letter-spacing: 0.08em;
}

#fixed_contents .nav_list ul li a, #fixed_contents .nav_list ul li a:link {
  color: #fff;
  text-decoration: none;
}

#fixed_contents .nav_list ul li a:hover {
  text-decoration: underline;
  opacity: 0.7;
}

#fixed_contents .link_buttons_area {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-left: 40px;
}

#fixed_contents .link_buttons_area li {
  line-height: 1;
  margin-bottom: 0;
}

#fixed_contents .link_buttons_area li + li {
  margin-left: 0.9em;
}

#fixed_contents .link_buttons_area li a {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  text-align: center;
  border: 1px solid #fff;
  border-radius: 2.5em;
  padding: 0.6em 2em;
}

#fixed_contents .link_buttons_area li a, #fixed_contents .link_buttons_area li a:link {
  color: #fff;
  text-decoration: none;
}

#fixed_contents .link_buttons_area li a:hover {
  background-color: #fff;
  color: #19A78E;
}

#sp_menu_back {
  display: none;
}

/* ===================================================================================== */
/*  globalnavi   */
/* ===================================================================================== */
#globalnavi {
  position: absolute;
  bottom: -95px;
  left: 0;
  width: 100%;
}

#globalnavi ul {
  margin-bottom: 0;
  display: flex;
  justify-content: center;
}

#globalnavi ul li {
  width: 155px;
}

#globalnavi ul li img {
  width: 100%;
}

#globalnavi ul li + li {
  margin-left: 17px;
}

#globalnavi ul li a:hover {
  opacity: 0.7;
}


/* ===================================================================================== */
/*  contents   */
/* ===================================================================================== */
.link_to__conts {
  height: 0;
  text-indent: -9999px;
}

#conts {
  padding: 0;
}

#conts.in {
  padding-bottom: 160px;
}

/* トップページ共通 */
.top_section {
  padding: 80px 0;
}

.top_section.bg_gray {
  background-color: #e8f7fb;
}

.top_section.bg_gray .section_title .title_inner {
  background-color: #fff;
}

.top_section .section_title {
  padding-top: 60px;
  padding-bottom: 0;
  margin-bottom: 80px;
  text-align: left;
  position: relative;
  font-size: 2rem;
}

.top_section .section_title:after {
  display: none;
}

.top_section .section_title .title_inner {
  display: inline-block;
  background-color: #e8f7fb;
  margin-left: -3000px;
  padding-left: 3000px;
  padding-top: 0.35em;
  padding-right: 45px;
  padding-bottom: 0.35em;
  border-top-right-radius: 2em;
  border-bottom-right-radius: 2em;
}

.top_section .section_title .title_en {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.top_section .section_title .title_ja {
  margin-left: 40px;
}

.top_section h3 {
  text-align: left;
  margin-bottom: 40px;
}

/* お知らせ */
#news .section_title {
  margin-bottom: 40px;
}

#news .news_detail {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

#news .news_list {
  margin-bottom: 80px;
}

#news .news_list .to_list {
  text-align: right;
  line-height: 1;
}

#news .news_list .to_list a {
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  color: #19A78E;
  text-decoration: none;
}

#news .news_list .to_list a:hover {
  text-decoration: underline;
}

#news .online_meeting {
  text-align: left;
}

#news .online_meeting .inner {
  padding: 1.3em;
  border-radius: 15px;
  overflow: hidden;
  position: relative;
}

#news .online_meeting p {
  line-height: 1;
}

#news .online_meeting .online_meeting_title {
  margin-bottom: 15px;
}

#news .online_meeting .online_meeting_period {
  margin-bottom: 25px;
}

#news .online_meeting .button_area {
  text-align: left;
  margin-bottom: 0;
}

#news .online_meeting .button_area a {
  max-width: 370px;
  line-height: 1;
  vertical-align: middle;
  padding: 0.8em 0;
}

#news .online_meeting .button_area a img {
  vertical-align: middle;
}

#news .online_meeting .illust {
  position: absolute;
  bottom: 0;
  right: -30px;
}

/* 制度概要 */
#summary .wrapper {
  position: relative;
}

#summary .illust01 {
  position: absolute;
  top: -32px;
  right: -35px;
}

#summary .flex_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 75px;
}

#summary .flex_box.even {
  flex-direction: row-reverse;
}

#summary .flex_box .text_area {
  width: 49%;
}

#summary .flex_box .text_area p {
  margin-bottom: 0;
}

#summary .flex_box .illust_area {
  width: 49%;
}

#summary .gainen {
  margin-bottom: 80px;
}

#summary .gainen h3 {
  margin-bottom: 40px;
}

#summary .gainen .gainen_box {
  padding: 30px 60px;
  background-color: #fff;
  border-radius: 15px;
}

#summary .gainen .price_explain {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #19A78E;
  margin-bottom: 8px;
}

#summary .gainen .price_explain .larger {
  font-size: 1.6em;
}

#summary .gainen .range_image img {
  width: 100%;
}

#summary .gainen .price_all {
  margin-bottom: 14px;
}

#summary .gainen .price_half {
  margin-top: 14px;
}

#summary .gainen .price_half .price_explain {
  font-size: 1.25rem;
  margin: 10px 0 0;
}

#summary .gainen .price_wrap {
  display: flex;
  justify-content: space-between;
}

#summary .gainen .price_box {
  padding: 1.3em 0;
  border-radius: 17px;
  text-align: center;
}

#summary .gainen .price_box p {
  margin-bottom: 0;
  line-height: 1;
  font-weight: bold;
}

#summary .gainen .price_box .price {
  font-size: 1.5rem;
  margin-bottom: 0.4em;
}

#summary .gainen .price_box .price .larger {
  font-size: 1.6em;
  margin-right: 0.1em;
}

#summary .gainen .price_box .use {
  font-size: 1.25rem;
}

#summary .gainen .payment {
  width: 410px;
}

#summary .gainen .payment .price_box {
  background-color: #19A78E;
  color: #fff;
}

#summary .gainen .copayment {
  width: 410px;
}

#summary .gainen .copayment .copayment_price {
  display: flex;
  justify-content: space-between;
}

#summary .gainen .copayment .price_box {
  background-color: #e8f7fb;
  color: #19A78E;
}

#summary .gainen .copayment .price_box.stay {
  width: 225px;
}

#summary .gainen .copayment .price_box.gift {
  width: 165px;
}

#summary .period {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

#summary .period.application {
  margin-bottom: 56px;
}

#summary .period h3 {
  margin: 20px 0 0;
}

#summary .period .period_box {
  width: 715px;
  background-color: #fff;
  border-radius: 20px;
  padding: 24px 24px 24px 0;
}

#summary .period .period_box dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.25rem;
  line-height: 1.5;
  margin-left: -15px;
}

#summary .period .period_box dl:first-of-type {
  margin-bottom: 16px;
}

#summary .period .period_box dl dt {
  width: 6.5em;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background-color: #19A78E;
  padding: 0.3em 0;
  border-top-right-radius: 1.5em;
  border-bottom-right-radius: 1.5em;
}

#summary .period .period_box dl dd {
  width: calc(100% - 6.5em - 1.3em);
  font-weight: 500;
}

/* 申請 */
#application .wrapper {
  position: relative;
}

#application .illust {
  position: absolute;
  top: 35px;
  right: 16px;
}

#application .application_lead {
  margin-bottom: 35px;
}

#application .application_link_box {
  background-color: #e8f7fb;
  border-radius: 20px;
  padding: 40px 90px;
  margin-bottom: 40px;
  position: relative;
  z-index: 1;
}

#application .application_link_box .explain {
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 30px;
}

#application .application_link_box ul {
  display: flex;
  justify-content: space-between;
}

#application .application_link_box ul li {
  width: 32%;
}

#application .application_link_box a {
  display: block;
}

#application .application_link_box a:hover {
  opacity: 0.7;
}

#application .application_link_box .blue_link_box {
  background-color: #19A78E;
  text-align: center;
  padding: 20px 0;
  border-radius: 25px;
}

#application .application_link_box .blue_link_box .icon {
  margin-bottom: 10px;
}

#application .application_link_box .blue_link_box .link_text {
  line-height: 1;
  margin-bottom: 0;
}

#application .application_link_box .blue_link_box.link_kameiten {
  display: flex;
  justify-content: center;
  align-items: center;
}

#application .application_link_box .blue_link_box.link_kameiten .icon {
  margin-bottom: 0;
  margin-right: 25px;
}

/* よくある質問 */
#faq {
  padding-top: 0;
}

#faq .section_title {
  margin-bottom: 60px;
}

#faq dl {
  background-color: #e8f7fb;
  border-radius: 20px;
  margin-bottom: 24px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.9;
}

#faq dl .qa {
  display: block;
  position: absolute;
  top: 13px;
  left: 30px;
  font-size: 2.25rem;
  font-weight: bold;
  line-height: 1;
}

#faq dl .qa.q {
  color: #19A78E;
}

#faq dl .qa.a {
  color: #fb6a6d;
}

#faq dl dt a,
#faq dl dd {
  position: relative;
  padding-left: 90px;
  padding-right: 75px;
}

#faq dl dd {
  display: none;
  padding-top: 15px;
  padding-bottom: 15px;
}

#faq dl dd p {
  margin-bottom: 0;
}

#faq dl .acc_t a {
  display: block;
  padding-top: 20px;
  padding-bottom: 20px;
  text-decoration: none;
  color: #333;
  /* background: url(../images/icon_faq_closed.png) no-repeat right 23px center; */
}

#faq dl .acc_t a:hover {
  opacity: 0.7;
}

#faq dl .acc_t.opened a {
 /*  background-image: url(../images/icon_faq_opened.png); */
}



/* ===================================================================================== */
/*  footer   */
/* ===================================================================================== */

#footer{
background-color: #483C34;
color: #fff;
}

#footer .link_faq {
  border-top: 1px solid #d4e5fb;
  padding-top: 40px;
  margin-bottom: 0;
}

#footer .footer_illust {
  padding-top: 60px;
  text-align: center;
}

#footer #offfice_info {
  padding: 56px 0;
  background-color: #e8f7fb;
}

#footer #offfice_info h2 {
  line-height: 1;
  letter-spacing: 0.1em;
  padding-bottom: 0;
  margin-bottom: 36px;
}

#footer #offfice_info h2:after {
  display: none;
}

#footer #offfice_info .office_lead {
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 40px;
}

#footer #offfice_info .contact_box {
  width: 100%;
  max-width: 800px;
  background-color: #fff;
  border-radius: 15px;
  padding: 40px 1.2em;
  margin: 0 auto;
  text-align: center;
  line-height: 1;
}

#footer #offfice_info .contact_box .address {
  line-height: 1;
  margin-bottom: 24px;
  letter-spacing: -.4em;
}

#footer #offfice_info .contact_box .address span {
  display: inline-block;
  vertical-align: middle;
}

#footer #offfice_info .contact_box .address .way {
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  background-color: #19A78E;
  width: 5.8em;
  padding: 0.4em 0;
  border-radius: 2em;
  margin-right: 1.5em;
}

#footer #offfice_info .contact_box .address .contact_detail {
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}

#footer #offfice_info .contact_box .address.hours .contact_detail {
  font-size: 2rem;
}

#footer #offfice_info .contact_box .contact_wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  padding-left: 10.5em;
  margin-bottom: 0.2em;
}

#footer #offfice_info .contact_box .contact_way {
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  background-color: #19A78E;
  width: 5.8em;
  height: 1.8em;
  line-height: 1.8em;
  border-radius: 2em;
  margin: 0.3em 1em 0 0;
}

#footer #offfice_info .contact_box .tel_period {
  text-align: center;
  font-size: 1.3125rem;
  font-weight: bold;
  line-height: 1.5;
  color: #fb6a6d;
  margin-bottom: 0.8em;
}

#footer #offfice_info .contact_box .tel_period span {
  display: inline-block;
}

#footer #offfice_info .contact_box .address_detail {
  margin-bottom: 2.2em;
}

#footer #offfice_info .contact_box .address_detail:last-of-type {
  margin-bottom: 0;
}

#footer #offfice_info .contact_box .contact_detail {
  text-align: left;
  display: block;
  font-size: 2.375rem;
  font-weight: bold;
  margin-bottom: 0.3em;
}

#footer #offfice_info .contact_box .contact_detail .tel {
  margin-bottom: 0.4em;
}

#footer #offfice_info .contact_box .contact_detail .tel span {
  display: block;
}

#footer #offfice_info .contact_box .contact_detail .tel .telno {
  margin-bottom: 0.2em;
}

#footer #offfice_info .contact_box .contact_detail .tel .smaller {
  font-size: 0.37em;
  font-weight: 500;
  margin-top: 0.4em;
}

#footer #offfice_info .contact_box .open_hours .title {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1;
  color: #19A78E;
  margin-bottom: 0.5em;
}

#footer #offfice_info .contact_box .open_hours .hours {
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0;
}

#footer #offfice_info .contact_box .open_hours .hours .smaller {
  font-size: 0.8em;
  font-weight: 500;
  margin-left: 0.2em;
}

#footer #offfice_info .contact_box .note {
  margin-top: 0.5em;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.7;
}

#footer #offfice_info .contact_box .note p {
  margin-bottom: 0;
}

#footer .footer_links {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5em 0;
}

#footer .footer_links li + li {
  border-left: 1px solid #fff;
}

#footer .footer_links li a {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  line-height: 1;
  padding: 0.1em 1.4em;
}

#footer .footer_links li a:hover {
  text-decoration: underline;
}

#footer .footer_bottom {
  padding: 16px 0;
  text-align: center;
  line-height: 1;
}

#footer small {
  display: block;
  text-align: center;
  font-size: 0.7rem;
}


/* ===================================================================================== */
/*  side_fixed_box   */
/* ===================================================================================== */

.top_page {
  display: block;
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 60px;
  z-index: 9999;
}

.top_page:hover {
  opacity: 0.8;
}


/* ===================================================================================== */
/*  中ページ   */
/* ===================================================================================== */

/* 説明会 */
.pref_select {
  margin-bottom: 3.5em;
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid #19A78E;
  font-size: 1.125rem;
  font-weight: bold;
  color: #19A78E;
  position: relative;
}

.pref_select > input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0;
}

.pref_select .acc_t a {
  display: block;
  padding: 0.7em 0;
  position: relative;
  text-decoration: none;
  text-align: center;
}

.pref_select .acc_t a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 7.5px 0 7.5px;
  border-color: #19A78E transparent transparent transparent;
}

.pref_select .acc_t.opened a:after {
  border-width: 0 7.5px 11px 7.5px;
  border-color: transparent transparent #19A78E transparent;
}

.pref_select .acc_m {
  display: none;
  border-top: 1px solid #19A78E;
}

.pref_select .acc_m .option {
  position: relative;
  text-align: left;
  padding: 0.2em 0.2em 0.2em 2.5em;
}

.pref_select .acc_m .option:hover {
  background-color: #e8f7fb;
}

.pref_select .acc_m .option.selected {
  background-color: #e8f7fb;
}

.pref_select .acc_m .option a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pref_select .acc_m .option input[type="radio"] {
  display: none;
}

.pref_select .acc_m .option label {
  margin: 0;
}

/* 説明会テーブル */
table.briefing_table {
  border-top: 1px solid #d4e5fb;
  border-bottom: 1px solid #d4e5fb;
  margin-bottom: 3.5em;
}

table.briefing_table caption {
  text-align: center;
  margin-bottom: 0.6em;
}

table.briefing_table thead th {
  background-color: #e8f7fb;
  color: #2B8269;
  font-weight: bold;
  padding: 0.6em 0;
  font-size: 1.125rem;
}

table.briefing_table thead th:last-child {
  border-right: none;
}

table.briefing_table th,
table.briefing_table td {
  border-color: #d4e5fb;
  text-align: center;
}

table.briefing_table td {
  padding: 1em;
}

table.briefing_table td .button_area {
  margin: 0;
}

table.briefing_table td .button_area a {
  font-size: 1rem;
  padding: 0.6em 2.8em;
}

table.briefing_table td .button_area a:after {
  width: 0.4em;
  height: 0.4em;
  right: 1.5em;
}

/*同意書*/
.section_consent_form {
  margin-bottom: 80px;
}
.section_consent_form::after {
   content: "";
   display: block;
   clear: both;
}



.section_consent_form .consent_form_lead {
  font-size: 1.125rem;
  line-height: 2em;
  font-weight: 500;
  text-align: center;
  margin-bottom: 2rem;
}
.section_consent_form .consent_form_lead h3{
font-size:1.65rem;
    font-weight: 500;
    text-align: center;
    color: #317f63;
    font-weight: bold;

}
.form_setumei_s{
padding-left: 1em; text-indent: -1em; line-height: 1.75em;
font-size: 15px;
margin-bottom: 0.5em;
font-weight: normal!important;}

.section_consent_form .consent_form_link_area {
margin-bottom: 1.25em;
text-align: left;
}
.section_consent_form .consent_form_link_area span,
.section_consent_form .consent_form_link_area a{
display: inline-block;
}
.section_consent_form .consent_form_link_area span:after {
  content: '、';
  text-decoration: none;
}
.section_consent_form .consent_form_link_area span:last-child:after{
  content: '';
}
.section_consent_form fieldset {
  margin-bottom: 2em;
}


.section_consent_form fieldset:last-of-type {
  margin-bottom: 0;
}

.section_consent_form fieldset legend {
  display: block;
  width: 100%;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: left;
  color: #2B8269;
  margin-bottom: 0.7em;
}

.section_consent_form .other_comment label {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 0.3em;
}

.section_consent_form .other_comment textarea {
  border-color: #2B8269;
  height: 11em;
}

#conts ul.consent_form_list input[type="checkbox"],
#conts ul.consent_form_list label {
  vertical-align: middle;
}

#conts ul.consent_form_list input[type="checkbox"] {
  transform: scale(1.3);
}
#conts ul.consent_form_list .entry_checkbox_l input[type="checkbox"] {
  transform: scale(2.2);
  margin: 0 3px 0 0;
}
#conts ul.consent_form_list .entry_checkbox_l {

}
#conts ul.consent_form_list .entry_checkbox_l label{
  font-size:1.5em; line-height: 30px;
  font-weight: bold;
}





/* 元々のチェックボックス（非表示） */
.entry_checkbox_l input[type="checkbox"],
.form_entry_mail_checkbox input[type="checkbox"]{
    display: none;
}
/* チェックボックスの代わりを成すラベル */
.entry_checkbox_l input[type="checkbox"]+label,
.form_entry_mail_checkbox input[type="checkbox"]+label{
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-left:0px;
    padding-right: 10px;
    margin-left:26px;
}
.form_entry_mail_checkbox input[type="checkbox"]+label{
  font-size: 1.25em;
}
/* ラベルの左に表示させる正方形のボックス□ */
.entry_checkbox_l input[type="checkbox"]+label::before,
.form_entry_mail_checkbox input[type="checkbox"]+label::before{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 32px;
    height: 32px;
    border-radius: 4px;
    margin-top: -16px;
    margin-left: -26px;
    left: -16px;
    top: 50%;
    border:3px solid;
    border-color:  #585753; /* 枠の色変更 お好きな色を */
    background-color: #FFF; /* 背景の色変更 お好きな色を */
}
.entry_checkbox_l input[type="checkbox"]:checked+label::before{
    border-color:#FF9955; 
    background-color: #FFEEE3;
}




/* チェックが入った時のレ点 */
.entry_checkbox_l input[type="checkbox"]+label::after,
.form_entry_mail_checkbox input[type="checkbox"]+label::after{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 36px;
    height: 18px;
    margin-top: -17px;
    margin-left: -26px;
    top: 50%;
    left:-18px;
    transform: rotate(-45deg);
    border-bottom: 6px solid;
    border-left: 6px solid;
    border-color:  #aaa; /* チェックの色変更 お好きな色を */
    opacity: 0.3;
}
/* チェックが入った時のレ点 */
.entry_checkbox_l input[type="checkbox"]:checked+label::after,
.form_entry_mail_checkbox input[type="checkbox"]:checked+label::after{
    border-color:  #EE6600; /* チェックの色変更 お好きな色を */
    opacity: 1;
}



/* チェックが入った時のレ点 */
#conts ul.consent_form_list .entry_checkbox_l label:hover,
.form_entry_mail_checkbox label:hover{ color: #FF7B24; text-decoration: none;}
.entry_checkbox_l input[type="checkbox"]+label:hover::before,
.form_entry_mail_checkbox input[type="checkbox"]+label:hover::before{
    background-color: #FCEBEB;
    border-color:  #FF954F;
   
}
.entry_checkbox_l input[type="checkbox"]:checked+label:hover:after,
.form_entry_mail_checkbox input[type="checkbox"]:checked+label:hover:after{
    border-color: #EE6600;
    opacity: 1;
}
.entry_checkbox_l input[type="checkbox"]+label:hover:after,
.form_entry_mail_checkbox input[type="checkbox"]+label:hover:after{
    border-color: #EE6600;
}





#conts ul.consent_form_list .entry_checkbox_l label{
background:linear-gradient(transparent 60%, #FDDB9B 0%);
}








table.input-form .row_data.row_data_hantei_select{ padding: 0 0.25em}
#conts .row_data_hanteiselect ul > li{padding-left: 0.5em;}
#conts .row_data_hanteiselect ul > li:before{content: "";}

.row_data_hanteiselect ul li{
  color: #AAAAAA;
  display: block;
  position: relative;
  float: left;
  width:calc(50% - 5px);;
  margin:1px 5px 0 0;
  list-style: none;
  box-sizing: border-box;
}

.row_data_hanteiselect ul li input[type=radio]{
  position: absolute;
  opacity: 0;
  top: 6px;
  left: 26px;
}

.row_data_hanteiselect ul li label{
    display: block;
    position: relative;
    line-height: 1.25em;
    box-sizing: border-box;
    font-weight: 300;
    font-size: 1.25em;
    padding: 6px 5px 7px 32px;
    margin: 0px auto;
    z-index: 9;
    cursor: pointer;
    -webkit-transition: all 0.25s linear;
    border: 2px #ccc solid;
    border-radius: 5px;
    color: #888;
}



.row_data_hanteiselect ul li .check{
  display: block;
  position: absolute;
  border: 3px solid #AAAAAA;
  border-radius: 100%;
    height: 20px;
    width: 20px;
    top: 9px;
    left: 16px;
  z-index: 5;
  transition: border .25s linear;
  -webkit-transition: border .25s linear;
}



.row_data_hanteiselect ul li .check::before {
  display: block;
  position: absolute;
  content: '';
  border-radius: 100%;
  height: 10px;
  width: 10px;
  top: 2px;
  left: 2px;
  margin: auto;
  transition: background 0.25s linear;
  -webkit-transition: background 0.25s linear;
  z-index: 666;
}

.row_data_hanteiselect input[type=radio]:checked ~ .check {
  border: 3px solid #31936A;
}

.row_data_hanteiselect input[type=radio]:checked ~ .check::before{
  background: #328535;
}

.row_data_hanteiselect input[type=radio]:checked ~ label{
  color: #333;
  border-color: #328535;
}


.row_data_hanteiselect ul li:hover label{  color: #333;}
.row_data_hanteiselect ul li label:hover{  border-color: #FBBC04;}
.row_data_hanteiselect ul li label:hover .sp_inline{opacity:1;}
.row_data_hanteiselect ul li:hover .check {
  border: 3px solid #FBBC05;
  background-color: #FEEFC3;
}

.row_data_hanteiselect li:hover input[type=radio]:checked ~ label {border-color: #C7E021;}
.row_data_hanteiselect li:hover input[type=radio]:checked ~ .check {
    border: 3px solid #C7E021;
    background-color: #03A546;
}
.row_data_hanteiselect li:hover input[type=radio]:checked ~ .check::before{
  background: #03A546;
}



























#conts ul.consent_form_list input[type="checkbox"] + label {
  margin-right: 0;
}

#conts ul.consent_form_list li {
  padding-left: 1.5em;
  text-indent: -1.5em;
  line-height: 1.8;
  margin-bottom: 0.8em;
}
#conts ul.consent_form_list01 li {
  padding-left: 1em;
  text-indent: -1em;
  margin-left:3em;

  margin-bottom: 0.35em;
  font-size: 17px;
  line-height: 1.5em;
}

/* 入力進捗 */
.application_step {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  padding: 0;
  margin-bottom: 75px !important;
  overflow: hidden;
}

.application_step.small {
  margin-bottom: 0 !important;
}

.application_step.small li {
  width: 140px;
  height: 80px;
}

.application_step.small li + li {
  margin-left: 0;
}

.application_step.small li .step_box .step {
  font-size: 0.75rem;
  margin-bottom: 0.3em;
}

.application_step.small li .step_box .step .larger {
  font-size: 1.4em;
}

.application_step.small li .step_box .step_explain {
  font-size: 0.8rem;
  line-height: 1.4em;
  height: 2.8em;
}

.application_step li {
  position: relative;
  width: 194px;
  height: 100px;
  margin-bottom: 0 !important;
}

.application_step li + li {
  margin-left: -4px;
}

.application_step li:first-child .step_box {
  background-image: url(../images/step_bg_first.svg);
}

.application_step li:first-child.current .step_box {
  background-image: url(../images/step_bg_first_current.svg);
}

.application_step li:last-child .step_box {
  background-image: url(../images/step_bg_last.svg);
}

.application_step li:last-child.current .step_box {
  background-image: url(../images/step_bg_last_current.svg);
}

.application_step li.current .step_box {
  background-image: url(../images/step_bg_current.svg);
  color: #fff;
}

.application_step li.current .step_box .step {
  color: #fff;
}

.application_step li .step_box {
  border-radius: 4px;
  background-image: url(../images/step_bg.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  color: #1f2121;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.application_step li .step_box .step {
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  color: #317160;
  margin-bottom: 0.5em;
}

.application_step li .step_box .step .larger {
  font-size: 1.25rem;
  margin-left: 0.1em;
}

.application_step li .step_box .step_explain {
  font-size: 1rem;
  line-height: 1.5em;
  height: 3em;
  display: flex;
  justify-content: center;
  align-items: center;
}

.application_step li p {
  margin-bottom: 0;
}


/* ===================================================================================== */
/*  メールアドレス認証   */
/* ===================================================================================== */

#agreement .agreement_detail {
  height: 19em;
  overflow: auto;
}

.check_agree {
  margin-bottom: 3em;
}

.check_agree fieldset {
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1;
}

.check_agree fieldset legend {
  display: none;
}

.check_agree fieldset input[type="checkbox"] {
  transform: scale(1.6);
  vertical-align: middle;
}

.mail_input_box {
  text-align: center;
  margin-bottom: 3em;
}

.mail_input_box .label {
  display: block;
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 0.5em;
}


.online_meeting .button_area a {
  max-width: 370px;
  line-height: 1;
  vertical-align: middle;
  padding: 0.8em 0;
}

.form_entry_mail_file_link a.blue_border {
    background-color: #328535;
    border-color: #328535;
    color: #fff;
    max-width: 300px;
    padding-top: 0.8em;
    padding-bottom: 0.8em;
    border-radius: 3px;
    margin-bottom: 26px;
    position: relative;
}
.button_area a.blue_border:link,
.button_area a.blue_border:visited{
  color: #fff;
}

.cookie_setumei{ margin:0 0 1em 0;}

.cookie_setumei_link { 
font-size:20px;
color: #E84858;
font-weight: bold;
margin-bottom: 36px;
}
.cookie_setumei_link a:before {
    content: "";
    display: inline-block;
    width:  26px;
    height: 26px;
    vertical-align: middle;

    line-height: 1em;
    margin-top: -4px;
    margin-right: 3px;
    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_question_orange.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}
.cookie_setumei_link a:after {
    content: "";
    display: inline-block;
    width:  24px;
    height: 24px;
    vertical-align: middle;
    
    line-height: 1em;
    margin-top: -5px;
    margin-left: 3px;
    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_link02_orange.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}
.mail_input_box_subtitle {
font-size:22px; color: #333; font-weight: bold;
text-align: left;
margin-bottom:2px;
}

.mail_input_box_subtitle:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 26px;
    height:26px;
    line-height: 1em;
    margin-top: -4px;
    margin-right:4px;
    margin-left: 2px;
    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_mail_orange.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}


.cookie_subtitle { font-size:22px; color: #E84858; font-weight: bold;
margin-bottom: 6px;}

.cookie_subtitle:before {
    content: "";
    display: inline-block;
    width: 28px;
    vertical-align: middle;
    height: 28px;
    line-height: 1em;
    margin-top: -8px;
    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_lock.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}

.wrapper_waku01 h3.h3_title.h3_title_doui{
position: relative;
display: block; margin: auto; width: 95%;
margin-bottom: 0px;
}
.wrapper_waku01 h3.h3_title.h3_title_doui::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: 3px #F88000 dotted;
}
.wrapper_waku01 h3.h3_title.h3_title_doui span {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 2.5em;
    padding: 7px 2em;
    background-color: #F88000;
    text-align: left;
    border-radius: 2px;
}
.wrapper_waku01 h3.h3_title.h3_title_doui span:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 26px;
    height:26px;

    line-height: 1em;
    margin-top: -2px;
    margin-right:4px;

    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_doui_check.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}

.entry_form_title_area { padding-bottom: 60px;}

h3.h3_subtitle {
    position: relative;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 26px;
    line-height: 1.5em;
}
h3.h3_subtitle::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: 2px #999 dotted;
}
h3.h3_subtitle label,
h3.h3_subtitle span {
    color: #666;
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 2.5em;
    padding: 2px 25px;
    background-color: #fff;
    text-align: left;
    border-radius: 16px;
    border: 1px #999 solid;
    font-size: 20px;
    line-height: 1.5em;
    width: 98%;
    max-width: 450px;
    text-align: center;
    
}


/* ===================================================================================== */
/*  フォーム   */
/* ===================================================================================== */

#form_agree {
  background-color: #e8f7fb;
  border-radius: 17px;
  padding: 54px 2em 60px;
  line-height: 1.8;
  margin-bottom: 24px;
}

#form_agree .form_agree_h3 {
  color: #333;
}

#form_agree .l-policy-section {
  text-align: center;
  margin-bottom: 2em;
}

#form_agree .l-policy-section a.entry-pdf-button {
  display: inline-block;
  background-color: #fff;
  border-radius: 17px;
  width: 100%;
  max-width: 440px;
  padding: 1.3em 0;
  text-decoration: none;
}

#form_agree .l-policy-section a.entry-pdf-button:hover {
  opacity: 0.7;
}

#form_agree .l-policy-section a.entry-pdf-button:hover .entry-pdf-button__text {
  text-decoration: none;
}

#form_agree .l-policy-section a.entry-pdf-button span {
  display: block;
}

#form_agree .l-policy-section a.entry-pdf-button .entry-pdf-button__title {
  color: #4f0f0f;
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 0.1em;
}

#form_agree .l-policy-section a.entry-pdf-button .entry-pdf-button__text {
  font-size: 1.25rem;
  font-weight: bold;
  color: #19A78E;
}

#form_agree .l-policy-section a.entry-pdf-button .entry-pdf-button__text strong {
  text-decoration: underline;
}

#form_agree .form_agree_before_comment {
  font-size: 0.8125rem;
  text-align: center;
  margin-bottom: 2em;
}

#form_agree .l-agree-section {
  text-align: center;
}

#form_agree .l-agree-section input[type="checkbox"] {
  transform: scale(1.5);
  vertical-align: middle;
}

#form_agree .l-agree-section .form_agree_kiyaku_label {
  font-size: 1.25rem;
  vertical-align: middle;
  margin-left: 0.5em;
}

#conts .l-form-attention {
  margin-bottom: 1rem;
}

#conts .l-form-attention ul {
  margin-bottom: 0;
}

#conts .l-form-attention ul li {
  font-size: 0.875rem;
  font-weight: normal;
}

#conts .l-form-attention ul li:last-child {
  margin-bottom: 0;
}

.l-entry-form .entry-form-note {
  font-size: 1rem;
  font-weight: 500;
  color: #ff0000;
  text-align: left;
  margin-bottom: 20px;
}

.l-entry-form .shop-title {
  font-size: 1.25rem;
  text-align: left;
  color: #00735F;
  padding-bottom: 0;
  position: static;
  margin-bottom: 1rem;
}

.l-entry-form .shop-title:after {
  display: none;
}

a.button_blue,
span.button_blue,
button.button_blue,
input[type="button"].button_blue {
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  color: #fff;
  background-color: #553800;
  display: inline-block;
  border-radius: 4px;
  padding: 0.3em 1.3em;
  text-decoration: none;
  cursor: pointer;
}

a.button_blue:hover,
span.button_blue:hover,
button.button_blue:hover,
input[type="button"].button_blue:hover {
  opacity: 0.7;
}

a.button_gray,
span.button_gray,
button.button_gray,
input[type="button"].button_gray {
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  color: #fff;
  background-color: #bfbfbf;
  display: inline-block;
  border-radius: 2em;
  padding: 0.3em 1.3em;
  text-decoration: none;
  cursor: pointer;
}

a.button_gray:hover,
span.button_gray:hover,
button.button_gray:hover,
input[type="button"].button_gray:hover {
  opacity: 0.7;
}

.l-entry-form.confirm table.input-form {
  border: none;
  border-bottom: 1px solid #d2d2d2;
}

.l-entry-form.confirm table.input-form th,
.l-entry-form.confirm table.input-form td {
  display: block;
  width: 100%;
  border-bottom: none;
}

table.input-form {
  margin-bottom: 4rem;
  table-layout: fixed;
}

table.input-form,
table.input-form .row_header,
table.input-form .row_data {
  border: none;
  border: 1px solid #d2d2d2;
}

table.input-form .row_header,
table.input-form .row_data {
  padding:0.75em 1em;
}

table.input-form .row_header {
  width: 305px;
  background-color: #ebebeb;
}

table.input-form .row_header .input-form__require {
  margin-left: 0.2em;
  font-size: 0.7rem;
  color: #f00;
  vertical-align: super;
}
table.input-form .input_require{ position: relative;}
.input_require_sample:before,
table.input-form .input_require:before {
    display: inline-block;
    content: "必須";
    background-color: #EA6253;
    float: right;
    color: #fff;
    font-size: 11px;
    font-weight: normal;
    text-align: left;
    line-height: 1.25em;
    border-radius: 3px;
    margin:3px 0 0 0;
    padding:2px 5px;
    font-family: "メイリオ", Meiryo,Hiragino Kaku Gothic Pro, "ヒラギノ角ゴ Pro W3", Osaka, "ＭＳ Ｐゴシック", sans-serif;
}
.input_require_sample:before{ 
    float: none;
    vertical-align: middle;
    margin-top: -3px;
    margin-right: 3px;
}


table.input-form .row_data {
  font-size: 0.875rem;
  line-height: 1.5;
}
table.input-form .row_data.td_plan_input_p0,
table.input-form .td_plan_input_p0{
padding-left: 0.5em!important;
padding-right:0.5em!important;
}
table.input-form .row_data.td_plan_input_p0 .form-inline__item{
margin-right: 0!important;
margin-left: 3px;
}

table.input-form .row_data fieldset legend {
  display: none;
}

table.input-form #map_canvas {
  width: 100% !important;
  max-width: 500px;
}

input[type="text"],
input[type="number"],
input[type="email"],
input[type="time"],
input[type="password"],
input[type="tel"] {
  width: 100%;
  padding: 0.7em;
  font-size: 0.875rem;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 3px;
}

input[type="text"][required],
input[type="number"][required],
input[type="email"][required],
input[type="time"][required],
input[type="password"][required],
input[type="tel"][required] {
  background-color: #FFF0F0;

}

input[type="text"].login_input,
input[type="number"].login_input,
input[type="email"].login_input,
input[type="time"].login_input,
input[type="password"].login_input,
input[type="tel"].login_input {
  border: none;
}

input[type="text"][readonly],
input[type="number"][readonly],
input[type="email"][readonly],
input[type="time"][readonly],
input[type="password"][readonly],
input[type="tel"][readonly] {
  background-color: #f8f9fa;
}

input[type="text"]:focus.is-empty,
input[type="number"].is-empty:focus,
input[type="email"].is-empty:focus,
input[type="password"].is-empty:focus,
input[type="time"].is-empty:focus,
input[type="tel"].is-empty:focus {
  background-color: #FFFDFD;
  border-color: #F7675B;
}

textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  height: 4em;
  padding: .3em .5em;
  font-size: 1rem;
  border: 1px solid #19A78E;
  border-radius: 3px;
  background-color: #fff;
  resize: none;
}

.form-select {
  position: relative;
  display: inline-block;
}

input[type="checkbox"]{
  vertical-align: middle;
  transform: scale(1.3);
}
input[type="radio"] {
  vertical-align: middle;
  transform: scale(1.4);
}

input[type="checkbox"] + label,
input[type="radio"] + label {
  margin-left: 0.5em;
  margin-right: 1.2em;
  vertical-align: middle;
}
input[type="checkbox"]:hover,
input[type="radio"]:hover,
input[type="checkbox"] + label:hover,
input[type="radio"] + label:hover { cursor:pointer;}



.form-inline {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.f_align_items_end{align-items:end;}
.cfm_area .f_align_items_end{align-items:end; justify-content: flex-end;}
.cfm_input_kingaku{ width:8em; margin: auto;}
.cfm_input_kingaku .form-input--large{ width:auto;}

.cfm_area table.input-form thead .row_header { width:inherit;}

.form-inline__item--radio {
  margin-right: 1em;
}

.form-inline__item--check {
  margin-right: 1em;
}

.form-inline__item--radio input[type="radio"] {
  transform: scale(1.4);
  vertical-align: middle;
}

.form-inline__item--check input[type="checkbox"] {
  transform: scale(1.4);
  vertical-align: middle;
}

.form-inline__item--radio label,
.form-inline__item--check label {
  font-size: 1rem;
  vertical-align: middle;
}

.form-inline__item {
  margin-right: 1em;
}

.form-inline__item--text {
  font-size: 0.875rem;
  line-height: 1.4em;
  color: #a8a8a8;
}

.form-inline__item--name {
  width: 2em;
  text-align: right;
}

.input-form__note {
  margin-top: 0.5rem;
  color: #a8a8a8;
  line-height: 1.5em;
}

.form-input--xlarge {
  width: 370px;
}

.form-input--mlarge {
  width: 245px;
}

.form-input--large {
  width: 180px;
}

.form-input--large01 {
  min-width: 180px;
}

.form-input--medium {
  width: 140px;
}

.form-select--xlarge {
  width: 370px;
}

.form-select--large {
  width: 180px;
}

.form-select--medium {
  width: 140px;
}

.form-select:before,
.form-select:after {
  display: block;
  position: absolute;
  top: 50%;
  right: .8em;
  font-size: 0.625rem;
  pointer-events: none;
}

.form-select:before {
  content: '▼';
  margin-top: -2px;
}

.form-select:after {
  content: '▲';
  margin-top: -12px;
}
.doui_hantei_area{ display: block;}

.doui_hantei_area input[type="checkbox"]:disabled {}
.doui_hantei_area input[type="checkbox"]:after {}

a.js_document_pdf{
  background-image: url(../images/document_icon.svg);
  background-repeat: no-repeat;
  background-position: left 0px center;
  padding-left:22px;
  font-size: 14px; line-height: 18px;
}
.js_document_file_size{font-size:13px; line-height: 24px; margin-top: -4px; margin-left:2px; margin-bottom:0px;}
















.tooltip { /* 補足説明するテキストのスタイル */
  position: relative;
  cursor: pointer;
}
 
.description_top { /* ツールチップのスタイル */
width: 280px;
    position: absolute;
    left: -60px;
    /* bottom: 80%; */
    transform: translateX(40px);
    margin-bottom: 30px;
    padding: 8px;
    border-radius: 5px;
    background-color: #444A4F;
    border: 3px #fff solid;
    font-size: 13px;
    line-height: 18px;
    color: #fff;
    text-align: left;
    visibility: hidden;
    opacity: 0;
    z-index: 9999;
}



.description_top:before {
    content: "";
    position: absolute;
    top: 100%;
    left:25px;
    border: 10px solid transparent;
    border-top: 10px solid #444A4F;
    margin-left: -10px;
}
.tooltip_right .description_top {  left: -120px;}
.tooltip_right .description_top:before {  left:85px;}
 
 
.input_enabled_doui .tooltip:hover .description_top { /* マウスオーバー時のスタイル */
  bottom: 100%; /* Y軸の位置 */
  visibility: visible; /* ツールチップを表示 */
  opacity: 1; /* 不透明度を100％に */
}
.tooltip_icon{
display: none; visibility: hidden;
padding:2px; 
font-size: 11px; line-height: 1em;
background-color: #aaa;
color: #fff;
margin-left: 3px;
border-radius: 2px;
}

.input_enabled_doui .tooltip_icon{ display: inline-block; visibility: inherit;}





@media all and (-ms-high-contrast: none) {
  .form-select:before, .form-select:after {
    display: none;
  }
}

.form-select select {
  width: 100%;
  padding: .35em .5em;
  font-size: 1rem; line-height: 1.5rem;
  border: 1px solid #999;
  border-radius: 3px;
  background-color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-select select[required] {
  background-color: #FFEBEB;
}

.form-select select.is-empty {
  background-color: #FFEBEB;
}

.form-radio input[type="radio"] {
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: absolute;
}

.form-radio label {
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 5px 5px 5px 30px;
  border-radius: 8px;
  vertical-align: middle;
  cursor: pointer;
}

.form-input input[type="time"] {
  font-size: 1rem;
  padding: .3em .5em;
}

.add_tenpo_header {
  margin-bottom: 20px;
}

.add_tenpo_header .shop-title {
  margin-bottom: 0;
}

.add_tenpo_header .form-inline__item {
  margin-left: 15px;
}

.add_tenpo_header .form-inline__item--text {
  font-size: 0.75rem;
  color: #19A78E;
}

.l-submit-section {
  overflow: hidden;
  margin: 100px auto 0;
  text-align: center;
}

.l-submit-section.form_entry_mail_submit{
border-top: 2px #999 dotted;
margin-top: 50px;
padding: 50px 0 100px 0;
}



.button_login,
.submit-button,
.historyback-button {
  position: relative;
  text-align: center;
  padding: 0.5em 3em;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.4;
  background-color: #EE7F00;
  border: 1px solid #fff;
  border-radius: 50px;
  text-decoration: none;
  color: #fff;
  width: 100%;
  max-width: 500px;
  cursor: pointer;
}
.button_login.submit_button_reverse_end,
.submit-button.submit_button_reverse_end{
background-color: #EE7F00;
}
.form_cfm_submit.l-submit-section{ text-align: inherit; width: 95%;}
.form_cfm_submit .button_login,
.form_cfm_submit .submit-button,
.form_cfm_submit .historyback-button {
max-width: 400px;
}

.form_cfm_submit.form_entry_mail_submit .submit-button,
.form_cfm_submit.form_entry_mail_submit .historyback-button {
  max-width: 350px;
}

.submit-button--notes{
  text-align: center;
  font-size: 0.85rem;
  font-weight: 500;
  color: #FF8533;
  margin-top: 10px;
  margin-bottom: 4em;
}


.button_login:after,
.submit-button:after,
.historyback-button:after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 2.5em;
  transform: translateY(-50%) rotateZ(45deg);
}

.button_login:hover,
.submit-button:hover,
.historyback-button:hover {
  opacity: 0.7;
}

.historyback-button:hover {
background-color: #FBBC05;
border: 2px solid #FBBC05;
color: #fff!important;
opacity: 1;
}
.historyback-button:hover:after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}




.button_login:disabled,
.submit-button:disabled,
.historyback-button:disabled {
  opacity: .5;
  cursor: default;
}

input[type="text"]:disabled,
input[type="number"]:disabled,
input[type="email"]:disabled,
input[type="time"]:disabled,
input[type="password"]:disabled,
input[type="tel"]:disabled,
input[type="text"][required]:disabled,
input[type="number"][required]:disabled,
input[type="email"][required]:disabled,
input[type="time"][required]:disabled,
input[type="password"][required]:disabled,
input[type="tel"][required]:disabled,
select:disabled, select[required]:disabled
.form-select select[required]:disabled {
  background-color: #F5F5F5 !important;
  border-color: #ccc;
  color: #aaa;
}

select:disabled[readonly] {
  background-color: #f8f9fa !important;
  border-color: #999;
  color: #000;
}

button:disabled,
input[type="button"]:disabled {
  border-color: #BFBFBF !important;
  background-color: #BFBFBF !important;
}

.button_login {
  background-image: url(../images/icon_arrow_r_white.png);
  background-repeat: no-repeat;
  background-position: right 2.5em center;
}

.submit-button:hover {
  color: #fff;
}

.submit-button--reverse {
  float: right;
  margin-left: 25px;
}

.historyback-button {
  color: #EE7F00;
  background-color: #fff;
  border: 2px solid #EE7F00;
  margin-right: 1em;
}

.historyback-button:hover {
  color: #19A78E;
}

.historyback-button:after {
  border: none;
  border-bottom: 2px solid #EE7F00;
  border-left: 2px solid #EE7F00;
  right: auto;
  left: 2.5em;
}

#error {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 4em;
}

#error .error_title {
  text-align: center;
  font-size: 1.2rem;
  margin-bottom: 0.5em;
}

#error .error_table_rounded {
  border-radius: 10px;
  overflow: hidden;
  border: 2px solid #f02322;
}

#error table {
  margin-bottom: 0;
}

#error table .error_table_header,
#error table .error_table_detail {
  padding: 0.8em;
  text-align: left;
}

#error table .error_table_header {
  width: 30%;
  background-color: #f00;
  color: #fff;
  border-bottom-color: #fff;
  white-space: normal;
}
#error table .error_table_header img{  margin-right: 3px;}

#error table .error_table_detail {
  background-color: #fff;
  border-bottom-color: #f02322;
}

#error a:link,#error a:visited {
    color: #FFF;
    text-decoration: underline;
}
#error a:hover {
    color: #FFF;
    text-decoration: none;
}

.form-inline--time__item .form-inline--time__item__fromto {
  padding: 0 .5em;
}

.form-inline__item.form-inline_item_tel01,
.form-inline__item.form-inline_item_tel02,
.form-inline__item.form-inline_item_tel_length {
  margin-right: 0.5em;
}

.form-inline_item_tel01 .form-input--medium {
  width: 70px;
}

.form-inline_item_tel02 .form-input--medium {
  width: 90px;
}

input, textarea {
  font-family: inherit;
  font-size: 100%;
}

.table__list--bank-hidden, .table__list--bank-shop-hidden {
  display: none;
}

.table__list-contents {
  white-space: nowrap;
}

button.button_bank, button.button-add {
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  color: #fff;
  margin: 2px;
  background-color: #328535;
  display: inline-block;
  border-radius: 1em;
  padding: 0.3em 1.3em;
  text-decoration: none;
  cursor: pointer;
}

button.button_bank:disabled {
  background-color: #bfbfbf !important;
  cursor: auto;
}

button.bankDecision, button.shopDecision, button.file-add {
  background-color: #328535;
  border-radius: 3px;
}
button.bankDecision{ padding: 0.2em 1.3em; }

input.business-time {
  font-size: 1.0rem;
  padding: .3em .3em;
}

.css-kinyu_set-text{
  border:none;
}







.f-container{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin:0 0 1rem;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;

}
.f-item{ -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  vertical-align: text-bottom;
  display: block;
  
  }
.f-item_right{  width: calc(100% - 10em);
}
.f-item_right{
text-align: right;
width:10em; min-width: 9em;
vertical-align: text-bottom;
align-self: flex-end;
white-space: nowrap;
}

.f_item_right_kingaku{
  display: flex;
  justify-content:  flex-end;
  text-align: right;
}
.f_kingaku_inner_tuki{margin-top: auto; margin-right: auto; font-size: 16px; line-height: 22px; padding-left:1em;}
.f_kingaku_inner_l{margin-top: auto; font-size: 20px; line-height: 22px;}
.f_kingaku_inner_r{margin-top: auto; font-size: 13px; line-height: 16px; margin-left: 2px;}


.th_plan_input {background-color :#ebebeb;border: 1px solid #d2d2d2;}

.t_agent_doui_thead .th_plan_input {}


.td_plan_input {border: 1px solid #d2d2d2; padding:5px 5px; padding:5px 5px; text-align: center;}
.td_plan_input nput[type="number"]::-webkit-outer-spin-button, 
.td_plan_input input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } 
.td_plan_input input[type="number"] { -moz-appearance:textfield;padding: 0.5em 0.1em; font-size: 1.2em; margin-bottom: 1px;}
.td_plan_input input[type="text"] { -moz-appearance:textfield;padding: 0.5em 0.1em; font-size: 1.2em; margin-bottom: 1px;}


/* サブタイトル */
.l-entry-form .shop-title.shop-subtitle {
  font-size: 110%;
  text-align: left;
  margin-bottom: 0px;
}

/* 都道府県 サンプルテーブル */
.th_plan_input_sample  { width: auto;}
.th_plan_input_sample th {background-color :#ebebeb;border: 1px solid #d2d2d2;}
.th_plan_input_sample td {border: 1px solid #d2d2d2; padding:5px 5px; text-align: left!important; padding:5px 5px; text-align: center;}
.th_plan_input_sample th,ま
.th_plan_input_sample td{
font-size:0.9rem;
    width: auto;
    padding: 0.8em 1.5em;
}
.display-none{ display: none!important; visibility: hidden!important; }

.cfm_area table.input-form .row_data{ font-size: 1rem; font-weight: normal; }


/* 感染症拡大防止策に係る取扱店舗の責務等 業種のガイドライン専用記述 */
.entry_text_normal{
    font-family: "Helvetica Neue", "Helvetica", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: normal;
}
.entry_guideline_area{
    margin:16px 0px 20px 30px;
}

.guideline_textareaA::placeholder,
.guideline_textareaB::placeholder {
  font-size: 95%;
}

#conts .entry_guideline_area ul li {
padding-left: 0em; text-indent:0em;
line-height: 150%; margin-top:5px; margin-bottom: 5px;
}
.entry_guideline_area .guideline_textareaA{ height: 5em; font-size: 0.875rem;}
.entry_guideline_area .guideline_textareaB{ height: 6em; font-size: 0.875rem;}



.input_doui_hantei { display: block; }
.checkbox_button_area input[type="checkbox"]{ }
label.checkbox_button{}




/* ===================================================================================== */
/*  推奨環境など   */
/* ===================================================================================== */



.table_front_model_area{}



/* ↓事業案内 テーブル01設定 ===================↓ */

.table_front_model01 {
  color: #333;
  border-collapse: separate;
  border-spacing: 0;
  border:2px solid #FF8042!important;
  border-radius: 6px;
  background-color: #fff;
  width: 100%;
}
.table_front_model01 th,
.table_front_model01 td{ font-size: 1.1em;}

.table_front_model01 thead th {
  padding: 10px;
  border-bottom: 1px solid #0E5F25;
  background-color: #EFF8F5;
  vertical-align: middle;
  text-align: left;
  border-right: 1px solid #fff;
}
.table_front_model01 thead tr th:last-of-type{ border-right: 0px solid #9EDAD0;}
.table_front_model01 tbody tr th:first-of-type{ width: 250px;}
.table_front_model01 tbody tr th[colspan]:first-of-type{ width: inherit; }

.table_front_model01 tbody tr th{
background-color: #FBF3DB;

  vertical-align: middle;
  text-align: left;
}
.table_front_model01 thead tr th{
background-color: #FF8042;
color: #fff;
font-weight: normal;
text-align: center;
}

/* table 各四隅 */
.table_front_model01 tbody tr:first-of-type th:first-of-type{border-radius:4px 0 0 0; } /* 左上 */
.table_front_model01 tbody tr:first-of-type td:last-of-type{ border-radius:0 4px 0 0; } /* 右上 */

.table_front_model01 tbody tr:last-of-type td:last-of-type{  border-radius:0 0 4px 0; } /* 右下 */
.table_front_model01 tbody tr:last-of-type th:first-of-type{ border-radius:0 0 0 4px; } /* 左下 */

.table_front_model01 tbody tr th { padding: 15px 15px;}
.table_front_model01 tbody tr td { padding: 15px 20px;}

.table_front_model01 tbody tr th,
.table_front_model01 tbody tr th + td {  border-left: 1px solid #B59D82;}
.table_front_model01 tbody tr th:first-of-type {border-left:0px solid #fff;}

.table_front_model01 tbody tr + tr th,
.table_front_model01 tbody tr + tr td {
  border-top: 1px solid #B59D82;
}
/* ↑事業案内 テーブル01設定 ===================↑ */






/* ===================================================================================== */
/*  オンライン事業者登録   */
/* ===================================================================================== */
/*  参画における同意確認 関係 -----------------------------------  */
.doui_temp_upload_comment{
	font-size: 1em; line-height: 16px;
	margin: 4px 0 6px 0;
	color: #ff0000;
}
.doui_temp_upload_comment01{
	font-weight: normal;
	font-size: 13px; line-height: 16px;
	padding-left: 1em;
	text-indent: -1em;
	margin: 4px 0 8px 0;
}
.link-clicked .doui_temp_upload_comment01{ color: #333;}
.file-uploaded .doui_temp_upload_comment01,
.file-uploaded .doui_temp_upload_comment
{
	display: none;
}

.doui_temp_upload_comment.input-form__note{ }

.doui_temp_area .js-file-upload input[type="file"] {
	display:none;
}


label.doui_temp_upload_btn {
	padding:3px 10px;
	margin: 0px;
	font-weight: normal;
	font-size: 0.95em;
	border-radius:3px;
	display: inline-block;

	background: #ddd;
	color: #fff;
	cursor: auto;
}


.link-clicked label.doui_temp_upload_btn:hover,
.link-clicked label.doui_temp_upload_btn.btn_current:hover{opacity: 0.5;}

.doui_temp_area .js-file-upload button.file-add,
.doui_temp_area .js-file-upload button.button-add:disabled{
	/*display: none;*/opacity:0.5;
    cursor: default;
}
table.input-form .doui_temp_area.link-clicked .input_doui_hantei{opacity:1;}


.doui_temp_area .js-file-upload button.button-add{
	padding:3px 10px;
	margin:3px 0 0 0;
	font-weight: normal;
	font-size: 0.95em;
	border-radius:3px;
    color: #fff; opacity:1;
	cursor: pointer;
}


.doui_temp_area .js-file-upload button.button-add,
.link-clicked.file-selected label.doui_temp_upload_btn{
	background: #797979;
}
.link-clicked.file-selected .doui_temp_area .js-file-upload button.button-add,
.link-clicked label.doui_temp_upload_btn{
	background: #FB6A6D;
	color: #fff;
	cursor: pointer;
}


/*  販売計画書 各都道府県 金額入力関係 --------------------------  */
#conts ul.entry_hanbai_keikaku,
ul.entry_hanbai_keikaku{margin-bottom: 60px; }

/* 各都道府県 入力エリア  */
li.e_h_k_li{
display: flex;
justify-content: space-between;
padding: 0px; margin: 0px;
box-sizing: border-box;
width: 100%;
}

li.e_h_k_li.e_h_k_li_kei{
border-top: 2px #666 solid;
}

/* 各都道府県名  */
.ehk_ken{ width: 120px;}
.e_h_k_li_kei .ehk_ken{
color: #333;
background-color: #D2D2D2; 
border-top: solid 1px #D2D2D2;
border-left: solid 1px #D2D2D2;
}


/* 金額入力エリア  */
.ehk_input_area {width:calc(100% - 120px);}
.ehk_input_area_inner{
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  height: 100%;
}

/* 月別 エリア  */
.mago {
width:20%; padding: 10px 0 10px 10px;
box-sizing: border-box;
}
.mago:nth-child(3n) {

}


.mago_form{
  display: flex;
  align-items: stretch;
}
.mago .mago_input { font-size: 1.25rem; line-height: 1em;}
.mago .mago_input input[type="number"]{ 
padding:0.25em 5px;
margin-right: 2px;
font-size: 1rem; line-height: 1em;
text-align: right!important;
max-width:6em;
}

.mago .mago_input input[type="number"],
.mago .mago_input input[type="number"]::-webkit-inner-spin-button {
-webkit-appearance: none; margin: 0; } 
.mago .mago_input input[type=number]::-webkit-outer-spin-button,
.mago .mago_input input[type=number]::-webkit-inner-spin-button {
    appearance: none;
}
.mago .mago_input input[type=number] {
    -moz-appearance:textfield; /* Firefox対策 */
}

.e_h_k_li_kei .mago .mago_input input{ 
border: none;
box-sizing: border-box;
display:inline-block;
padding: 0px;
font-size: 1.25rem;
line-height: 1em;
max-width:5em;
} 

.mago:nth-child(1),
.mago:nth-child(5),
.mago:nth-child(9){ /* background-color:#E2F8F7;  */}

.mago:nth-child(2),
.mago:nth-child(6),
.mago:nth-child(10) { /* background-color:#A5CFF7; */ }

.mago:nth-child(3),
.mago:nth-child(7),
.mago:nth-child(11) { /* background-color:#FAFCB3; */ }

.mago:nth-child(4),
.mago:nth-child(8),
.mago:nth-child(12) { /* background-color:#FCC7FA; */ }
.mago .input-form__require{
    margin-left: 0.2em;
    font-size: 0.7rem;
    color: #f00;
    vertical-align: super;
}

.ehk_ken{
background-color: #ebebeb;
box-sizing: border-box;
padding: 1em;
border-top: solid 1px #d2d2d2;
border-left: solid 1px #d2d2d2;
border-right: solid 1px #d2d2d2;
}
/* 事業要綱・要領未発表　都道府県 */ 
.is_invalid .ehk_ken { background-color: #C0C0C0;}
.is_invalid .ehk_input_area { background-color: #D2D2D2;}

.ehk_input_area{
background-color: #EBEBEB;
border-right: solid 1px #d2d2d2;
}
.mago.mago_cfm_hitaisyou{background-color: #EBEBEB;}

#conts ul.entry_hanbai_keikaku > li{ list-style: none; margin: 0px; padding: 0; 

}
#conts ul.entry_hanbai_keikaku > li:before{ display: none; visibility: hidden;}
.entry_hanbai_keikaku li{ list-style: none;}
#conts ul.entry_hanbai_keikaku li:last-child .ehk_ken,
#conts ul.entry_hanbai_keikaku li:last-child .ehk_input_area{
border-bottom: solid 1px #d2d2d2;
}

#conts ul.entry_hanbai_keikaku li:nth-child(2n) .mago{
background-color: #FAFAFA;
}


.mago{
background-color: #fff;
border-top: solid 1px #d2d2d2;
border-right: solid 1px #d2d2d2;
}

.mago:nth-child(5n){
border-right: solid 0px #d2d2d2;
}
/* 月表示 */
.mago_month{ padding: 0px 0px 2px 2px; font-size:1.25rem; line-height: 1em;}
.mago_month_keta{ font-size:0.75rem; margin-left: 1px; margin-right:2px;} /* 月表示 桁部分 */
.mago_tani{ display: inline-block; }


.td_mago_tani{ font-size:15px; padding-bottom: 1px; margin-left:0px; }
.td_input_kei .form-input--large.f_hanbaikeikaku_input{}
.sankaku_table_area table.input-form .td_input_kei td.row_data{  padding: 0.5em 3px;}
.td_input_kei .td_mago_tani{ font-size:14px; }
.td_mago_tani .mago_tani_en{margin-left:2px;}
.td_plan_input .f_hanbaikeikaku_input input[type="number"],
.td_plan_input .f_hanbaikeikaku_input input[type="text"] {
    padding: 3px 3px;
    font-size: 1.2em;
}

.mago_tani_en{ font-size:0.5rem; margin-left:2px;}
.entry_hanbai_keikaku .input-form__require {
    margin-left: 0.2em;
    font-size: 0.7rem;
    color: #f00;
    vertical-align: super;
}

.mago_cfm .mago_input,
.mago_cfm .mago_tani{ font-size: 1.25em; line-height: 1.25em;}

.cfm_area .td_plan_input .form-input--large{
text-align: right;
    font-size: 1.25em;
    padding-bottom: 3px;
}









.file-name-field { display: flex;}
.file-cancel {
  margin-right: 5px;
  padding: 0px 5px 0px 5px;
}
.kifuwaku_confirm {	border: 1px solid #d2d2d2 ;	}


.shop_entry_gyou_th{ background-color: #F5F5F5;}
.shop_entry_gyou_colgroup_w120{ width: 120px;}
.shop_entry_gyou_colgroup_w150{ width: 150px;}

.coupon_pay_pattern_label {
	border: none;
    color: #fff;
    background-color: #328535;
    display: inline-block;
    border-radius: 2em;
    padding: 0.3em 1.3em;
    text-decoration: none;
    cursor: pointer;
}
.coupon_pay_pattern_label:hover {opacity: 0.7;}





/* ファイル選択 「追加」ボタン押下のアナウンスコメント */
button.file_up_button_comment{
	position: relative;
	display: inline-block;
	text-align: center;
	margin-left: 10px;
}
button.file_up_button_comment:disabled:before,
button.file_up_button_comment:disabled:after { opacity: 0;}
button.file_up_button_comment:before {
    display: block;
    content: "※ファイルを選択したら「追加」ボタンを押下してください。";
    background-color: #666;
    color: #fff;
    position: absolute;
    /* background-color: aqua; */
    top: 7px;
    font-size: 12px;
    text-align: left;
    line-height: 1.5em;
    right: -17.75em;
    width: 14.5em;
    border-radius: 3px;
    margin: -1.25em 0 0 0;
    padding: 0.35em 0.5em 0.5em 1.75em;
    text-indent: -1em;
    box-shadow: 1px 3px 5px #ddd;
}
button.file_up_button_comment:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 62px;
  margin-top: -7px;
  border: 9px solid transparent;
  border-right: 9px solid #666666;
}


.form_edit_body #fixed_contents{ display:none; visibility: hidden;}



/* =============================================================== */
/*  申請フォーム 各都道府県の販売希望と販売計画  */
/* =============================================================== */
/* body table横スクロール対応 */
body.form_edit_body {
    height: 100%;
    display: block;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
    min-width: 1000px;
}
.form_edit_body #container{ overflow: initial;}
.sankaku_table_area{width: 100%; position: relative; padding: 0; margin: 0;}
.sankaku_table_area table { width:inherit; }
.sankaku_table_area table.input-form,
.sankaku_table_area table.input-form th,
.sankaku_table_area table.input-form td{ box-sizing: border-box;}
.sankaku_table_area table.input-form td{ white-space: nowrap; }

/* 間隔詰める対応 */
.sankaku_table_area table.input-form td.row_data {padding:0.5em 0.25em 0.5em 0.25em;}
#conts .sankaku_table_area  ul{ margin-bottom: 0.25em;}

/* 「販売計画（販売高）」欄、各年月表示欄 余白 */
table.input-form td.td_pt_pb_0{  padding: 0.25em 1.2em;}


/* --------------------------------------------------------- */
/* table Fix見出し対応　各記述  */
/* 先頭行　固定  */
.sankaku_table_area .t_agent_doui_thead{  position: sticky; z-index: 998; top: 0; left: 0; }
/* 「都道府県」固定  */
.sankaku_table_area table.input-form td.d_t_td_todofuken{ position: sticky; z-index: 999; top: 0; left: 0; }
/* 各都道府県名 固定  */
.sankaku_table_area table.input-form td.row_header{  position: sticky; z-index: 997; left: 0;}
.sankaku_table_area table.input-form td.row_header_kei{  position: sticky; z-index: 997; left: 0; border-right:1px solid #EBEBEB;}




/* table td等の各border設定 */
.sankaku_table_area table.input-form {
	border-collapse:separate;
	border-spacing:0;}
.sankaku_table_area table.input-form th,
.sankaku_table_area table.input-form td {
    border:0px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
    border-right: 1px solid #d2d2d2;
}
.sankaku_table_area table.input-form td.last_td { width: 100%;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.sankaku_table_area table.input-form{ 
    border-bottom:0px solid #d2d2d2;
    border-left:  1px solid #d2d2d2;
    border-right:  1px solid #d2d2d2;
}



/* 「都道府県」欄 */
.d_t_td_todofuken{width: 120px; }
/* 「販売の希望」欄 */
.d_t_td_sankakibou{width:230px;}
/* 各月表示欄 幅合計 */
.d_t_td_hkaikaku{width:640px;}

/* 各月表示欄 */
.sankaku_table_area table.input-form td.d_t_td_input{  max-width: 180px; min-width: 180px;}

/* 各月入力input幅 */
.form-input--large.f_hanbaikeikaku_input {width: calc(100% - 50px);}
.td_plan_input .f_hanbaikeikaku_input input{max-width:5.5em;}
.td_input_kei.td_plan_input input,
.td_input_kei.td_plan_input input[type="text"]{border: 1px solid #F8F9FA; pointer-events:none; }

.td_plan_input.td_input_kei .f_hanbaikeikaku_input input{max-width:6em;width:6em; }

/* --------------------------------------------------------- */
/* 販売の希望　各選択時の各記述   */
/* ※「する」選択時には 　tr に「input_enabled_doui」 が入ります  */
/* ※「しない」選択時には tr に「input_disabled_doui」が入ります  */

/* 透過時に表示させるtable背景色 */
.sankaku_table_area table.input-form{ background-color: #F5F4EB; }




/* [販売の希望]欄 背景色 */
table.input-form.t_agent_doui_table .input_disabled_doui .row_data.row_data_hantei_select{background-color: #FAFAF5;}
/* 各都道府県名 背景色 */
.sankaku_table_area table.input-form .input_disabled_doui td.row_header{ opacity: 1!important; background-color: #F0F0EB;}

/* 「しない」選択時 半透明化・オンマウス時のイベント不可処理 */
table.input-form.t_agent_doui_table .row_data_hantei,
table.input-form .input_doui_hantei label,
table.input-form .input_doui_hantei input[type="checkbox"] {pointer-events: none;}
table.input-form.t_agent_doui_table .input_disabled_doui .row_header,
table.input-form.t_agent_doui_table .input_disabled_doui .row_data.row_data_hantei{
pointer-events:none;
text-decoration: none!important;
opacity: 0.5!important;
}
table.input-form.t_agent_doui_table .input_disabled_doui .row_data_hantei a:link{
pointer-events:none; text-decoration: none!important;}


/* 未選択・「しない」選択時 半透明化 */
table.input-form .input_doui_hantei,
table.input-form.t_agent_doui_table .input_doui_hantei{ opacity: 0.5;}


/* 「する」選択時 半透明化解除 */
table.input-form.t_agent_doui_table .input_enabled_doui .input_doui_hantei{ opacity: 1;}

/* 「する」選択時 選択不可の解除 */
table.input-form.t_agent_doui_table .input_enabled_doui .row_data_hantei,
table.input-form .input_enabled_doui .input_doui_hantei label,
table.input-form .input_enabled_doui .input_doui_hantei input[type="checkbox"] {pointer-events:auto;}

/* 未選択時の各金額入力 input */
.sankaku_table_area input[type="text"][required],
.sankaku_table_area input[type="number"][required] {  background-color: #F7F7F7; color: #777; }

/* 「する」選択時の各金額入力 input */
.sankaku_table_area .input_enabled_doui  input[type="text"][required],
.sankaku_table_area .input_enabled_doui  input[type="number"][required] {  background-color: #FFF0F0; border:1px #ddd solid; color: #333;}

/* 未選択時の input欄 td背景色 */
.sankaku_table_area .td_plan_input { background-color: #FAFAF5; color: #777;}
/* 「する」選択時のinput欄 td背景色 */
.sankaku_table_area .input_enabled_doui .td_plan_input,
.sankaku_table_area .input_disabled_doui .td_plan_input,
.sankaku_table_area td.td_input_kei{ background-color: #fff; color: #333;}


/* --------------------------------------------------------- */
/* 事業要綱・要領　未発表自治体 */
table.input-form .is_invalid .row_header {
background-color: #D2D2D2;
border-bottom: 1px solid #bbb;
border-right: 1px solid #bbb;
}
table.input-form .is_invalid .row_data {
background-color: #E0E0E0;
border-bottom: 1px solid #bbb;
}
table.input-form .is_invalid .input-form__require{
display: none; visibility: hidden;
}









    





/* =============================================================== */
/*  確認画面  */
/* =============================================================== */

/*  販売計画関係  */
.cfm_keikaku{ display: flex;  flex-wrap: wrap;
  align-content: flex-start;  height: 100%;}
.cfm_keikaku_kingaku{margin:0px; padding:10px 10px 5px 10px; width:calc(100% - 0px); box-sizing: border-box; border-bottom: 1px #ccc dotted; }
.cfm_keikaku .cfm_keikaku_kingaku:last-child {border-bottom: 0px #ccc dotted; padding-bottom:0.75em;}
.ckk_ym_area{font-size: 20px; margin-right: 6px; width: 5.25em;}
.cfm_keikaku_inner{margin:0 0px 0px 0 ;display: flex;  align-items: flex-end; box-sizing: border-box;}
.ckk_atai{font-size:11px; margin-left: 2px;}
.ckk_ym_month{display: inline-block; width: 1.25em; text-align: right; }
.ckk_kingaku_area{font-size: 20px; margin-right: 6px; width: 8em; text-align: right; margin-right:2.5em;}
.ckk_kingaku_area02{width: 8em; text-align: right; padding-right: 0.5em; }

.ckk_comment{font-size: 11px; line-height: 11px; margin-bottom: 0px; text-align: right;}
.ckk_kingaku_area{padding-left: 6px;}
.ckk_kingaku_area_sub{font-size: 20px;}
.ckk_count0 .ckk_kingaku_area,
.ckk_count0 .ckk_kingaku_area_sub{ }


/* =============================================================== */
/*  申請フォーム 完了画面 */
/* =============================================================== */

h3.form_complete_subtitle{
    font-size: 28px;
    color: #888;
    margin-bottom: 20px;
}
h3.form_complete_subtitle:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 36px;
    height:36px;
    line-height: 1em;
    margin-top: -6px;
    margin-right: 4px;
    margin-left: 2px;
    transform: translateY(0%) rotateZ(0deg);
    background-image: url(../images/document_icon_complete_check.svg);
    background-repeat: no-repeat;
    background-position: left 0px center;
}
.form_complete_comment{
font-size:18px;
text-align: center;
font-weight: bold;
}
.form_complete_comment01{
font-size:16px;
font-weight: normal;
text-align: left;
display: inline-block;
margin: 16px auto;
}

@media screen and (max-width: 768px) {

table.input-form .row_data.row_data_hantei_select{ padding-bottom:1.2em;}
table.input-form .row_data.row_data_hantei_select:after {
  content: "";
  display: block;
  clear: both;
} 
table.input-form .row_data.row_data_hantei_select::before {
  content: "";
  display: block;
  clear: both;
}
.hanbai_tuki.sp-only,
.hanbai_tuki{display: block !important;}


.f-container{
  display: block!important;
}

.f-item_right{ text-align: left;}
.plan_table,
.plan_table tbody,
.plan_table td,
.plan_table th,
.plan_table tr,
.td_plan_input,
.th_plan_input,
.plan_table .td_plan_input,
.plan_table .th_plan_input{ display: block!important; width: 100%!important; text-align: left; }
.plan_table tr.pc-only,
.td_plan_input.pc-only,
.th_plan_input.pc-only,
.sankaku_table_area table.input-form td.last_td,
.shop_entry_gyou_colgroup{  display: none!important; visibility: hidden;}

table.plan_table{
	border-collapse: separate!important;
	border-spacing: 0;
	border-top: 1px solid #d2d2d2;
	border-left: 1px solid #d2d2d2;
	width:100%;

}

.plan_table tr th{ float: none;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
}
.plan_table tr{ 
	border-right: 1px solid #999;
	border-left: 1px solid #999;
}
.plan_table tr td{ 
	vertical-align: top;
    border: 0px solid #fff;
	border-right:0px dotted #fff;
	border-top: 1px dotted #999;
	text-align: left;
}

.plan_table tr .td_plan_input{ text-align: left; padding-left: 16px;
width:50%!important;
float: left;
}
.plan_table tr .td_plan_input:nth-child(2n){border-right: 1px dotted #999;}

.plan_table .pc-only .th_plan_input { display: none!important; visibility: hidden;}

.plan_table tr:after{ content: ""; display: block;  clear: both; height: 0; visibility: hidden; }
.plan_table td.td_plan_input input{  width: calc(100% - 4em);}
.sp_inline.koumoku_month{ width:2.5em; display:block!important; float: left; margin-top: 3px;}
.plan_table tr td.td_plan_input:last-child{
width:100%!important;
border-top: 1px dotted #999;
border-bottom: 0px dotted #999;
border-right:0px dotted #fff}
.plan_table td.td_plan_input:last-child input{  width: calc(100% - 16em);}

.entry_guideline_area{ margin-left: 20px;}
.entry_guideline_area .guideline_textareaA{ height: 8em;}
.entry_guideline_area .guideline_textareaB{ height: 8em;}

table.input-form.t_agent_doui_table .input_disabled_doui .row_header{  opacity: 1!important;}
table.input-form.t_agent_doui_table .input_disabled_doui .row_data.row_data_hantei{
background-color: #FAF9F5;
opacity: 1!important;
}


table.input-form.t_agent_doui_table .input_disabled_doui .row_data.row_data_hantei a{
opacity:0.5!important;
}
.description_top { 
    width: 100%;
    max-width: 350px;
    position: absolute;
    left: -65px!important;
    transform: translateX(43px);
}
.description_top:before {
    left: 25px!important;
}

.td_plan_input .form-input--large{ width: calc(100% - 80px); }
.td_plan_input .f_hanbaikeikaku_input input[type="number"],
.td_plan_input .f_hanbaikeikaku_input input[type="text"] {
padding: 0em 0.1em;
}
.cfm_area .td_plan_input .mago_month_keta{font-size: 0.75em;}
.cfm_area .td_plan_input .form-input--large{
width: auto;
font-size: 1.25em;
}


.cfm_area .f_align_items_end{align-items:end; justify-content: flex-start;}
.cfm_input_kingaku{ width:8em; margin: 0;}
.cfm_input_kingaku .form-input--large{ width:auto;}





li.e_h_k_li {display: block;
border: #d2d2d2 solid;
border-width:0 1px 0 1px;}
.ehk_ken,
.ehk_input_area,
.mago{ width: 100%;}
.ehk_ken{
border: #d2d2d2 solid;
border-width:0 0 1px 0;}
.ehk_input_area,
.mago{
border: #d2d2d2 solid;
border-width:0 0 1px 0 ;}
.mago_month{ display: block; float: left; padding: 6px 10px 0 0;
min-width:90px;
}
.e_h_k_li_kei .mago_month{ min-width:110px; }
.mago_form{width:auto}
.mago .mago_input{}
.mago .mago_input input[type="number"] {max-width: inherit;}
.e_h_k_li_kei .mago .mago_input input { min-width: 6em;}

.sankaku_table_area table.input-form th,
.sankaku_table_area table.input-form td,
.doui_table_th_sankaku{width:auto; display: block;}
.td_plan_input .f_hanbaikeikaku_input input{ width: calc(100% - 50px);}

.sankaku_table_area .td_plan_input .form-input--large{ width:inherit; }
.td_plan_input .f_hanbaikeikaku_input input[type="number"],
.td_plan_input .f_hanbaikeikaku_input input[type="text"]{ width:10em; max-width: inherit; padding: 0.25em 0.5em; font-size: 1.25em;}
.sankaku_table_area table.input-form td.row_data {
  padding: 0.5em 0.5em 1.5em 1em;
}
#conts .sankaku_table_area .row_data_hanteiselect ul > li{padding-left: 0; max-width: 140px;}
.row_data_hanteiselect ul li label{ padding:0.5em 5px 0.5em 32px;}
.row_data_hanteiselect ul li .check{ left: 8px; top: 8px;}

/* 「参画しない」 選択時の半透明化 */
.input_disabled_doui .hanbai_tuki,
.input_disabled_doui .input_doui_hantei{opacity:0.4!important;}

button.file_up_button_comment{ margin-left: 0px; }
button.file_up_button_comment:after{ left: 55px; }


}/* end タブレットサイズ max-width: 768px ----------------------------- */




