/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Lato:ital,wght@0,100;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap'); */


*{
  margin:0;
  padding:0;
  list-style: none;
  box-sizing: border-box;
  text-decoration: none;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

*::before,
*::after{
  box-sizing: border-box;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color:#222222;
  /* font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif; */
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  font-weight: 500;
}

html {
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}


@font-face {
  font-family:'Noto Sans JP';
  src: url('../font/noto/NotoSansJP-Medium.woff2') format('woff2'),
  url('../font/noto/NotoSansJP-Medium.woff') format('woff'),
  url('../font/noto/NotoSansJP-Medium.ttf') format('truetype');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family:'Noto Sans JP';
  src: url('../font/noto/NotoSansJP-Bold.woff2') format('woff2'),
  url('../font/noto/NotoSansJP-Bold.woff') format('woff'),
  url('../font/noto/NotoSansJP-Bold.ttf') format('truetype');
  font-weight: bold;
  font-display: swap;
}

@font-face {
  font-family:'Noto Sans JP';
  src: url('../font/noto/NotoSansJP-Regular.woff2') format('woff2'),
  url('../font/noto/NotoSansJP-Regular.woff') format('woff'),
  url('../font/noto/NotoSansJP-Regular.ttf') format('truetype');
  font-weight: 400;
  font-display: swap;
}


@font-face {
  font-family:'Roboto';
  src: url('../font/roboto/Roboto-Bold.woff2') format('woff2'),
  url('../font/roboto/Roboto-Bold.woff') format('woff'),
  url('../font/roboto/Roboto-Bold.ttf') format('truetype');
  font-weight: bold;
  font-display: swap;
}

@font-face {
  font-family:'Lato';
  src: url('../font/lato/Lato-Bold.woff2') format('woff2'),
  url('../font/lato/Lato-Bold.woff') format('woff'),
  url('../font/lato/Lato-Bold.ttf') format('truetype');
  font-weight: bold;
  font-display: swap;
}

body{
  color:#222222;
  /* font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif; */
  font-family: 'Noto Sans JP'  ,sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0.05em;
  
  
  /*-webkit-font-smoothing: antialiased;*/
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  font-feature-settings: 'palt';
}

.body_wrap{
  overflow: hidden;
}


img{
  display: block;
  object-position: center;
}

.roboto{
  font-family: "Roboto", sans-serif;
}

main{
  padding-top: 158px;
}
@media(max-width:1700px){
  main{
    padding-top: 128px;
  }
}/*@media(max-width:1700px){*/


table{
  border-collapse: separate;
  border-spacing: 0;
}

.hide{
  display: none!important;
}

a{
  color:#222222;
  font-weight: 500;
  transition: 0.4s;
}

@media (any-hover:hover){
  a[href^="tel:"] {
    pointer-events: none;
  }
}

.fax a{
  pointer-events: none;
  border-bottom: none!important;
  text-decoration: none!important;
}

a:hover{
  opacity: 0.7;
}
/*
----------------------------------------------------
以下、共通アニメーション
----------------------------------------------------
*/

.common_hover_opa{
  transition: 0.4s;
}

.common_hover_opa:hover{
  opacity: 0.7;
}

/*
----------------------------------------------------
以下、共通パーツ
----------------------------------------------------
*/

.container{
  max-width: 1200px;
  margin:0 auto;
}

.yellow_marker{
  background: linear-gradient(to top, #fff99a -10%, #fff99a 40%, transparent 40%, transparent 100%);
}

.red_text{
  color: #f67b29;
}


.link_text{
  color: #276ed8;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/*波線がついたタイトル*/
.common_wave_title{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.common_wave_title::after{
  content:'';
  width: 61px;
  height: 8px;
  margin-top: 24px;
}

.common_wave_title .sec_title{
  font-size: 38px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  font-feature-settings: 'palt';
}

.common_wave_title.blue::after{
  background-image: url('../img/common/title_wave_blue.svg');
}

.common_wave_title.white .sec_title{
  color:#fff;
}
.common_wave_title.white::after{
  background-image: url('../img/common/title_wave_white.svg');
}


/*セクションごとのタイトル*/
.common_sec_title{
  font-size: 25px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.1em;
  padding: 16px 16px 16px 30px;
  border-left: 6px solid #276ed8;
  /* background-color: #f7f8fa; */
  background-color: #e8f0fa;
}

.common_sec_title span{
  font-size: 26px;
}


/*24時間365日オンライン受付中！お申込みはこちらボタン */

.common_appli_link{
  width: 500px;
  max-width: 100%;
  height: 100px;
  border-radius: 50px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.3);
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display:block;
  position: relative;
}

.common_appli_link::after{
  content:'';
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_orange.png');
  position: absolute;
  top:0;
  bottom:0;
  right:30px;
  margin:auto;
  z-index: 5;
}

.common_appli_link .common_appli_link_body{
  width:100%;
  height:100%;
  border-radius: 50px;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.common_appli_link .common_appli_link_body::before{
  content: '';
  width: 648px;
  height: 118px;
  background-color: #fff;
  opacity: 0.15;
  position: absolute;
  bottom: 36px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 50%;
}

.common_appli_link .common_appli_link_text{
  position: relative;
  z-index: 5;
  display: flex;
  align-items: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.common_appli_link .common_appli_link_text::before{
  content:'';
  width: 35px;
  height: 35px;
  margin-right: 12px;
  background-image: url('../img/common/icon_calendar_white.png');
  margin-top: 5px;
}

.common_appli_link .common_appli_link_head{
  position: absolute;
  left:0;
  right:0;
  top:-20px;
  z-index: 5;
  margin:auto;
  width: fit-content;
}

.common_appli_link .common_appli_link_head_text{
  width: 360px;
  height:40px;
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 2px #f68429;
  background-color: #fff;
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #f67b29;
}

.common_appli_link .common_appli_link_head_text::before{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 12px 6px 0 6px;
  border-color: #f68429 transparent transparent transparent;
  position: absolute;
  top:100%;
  left:0;
  right:0;
  margin:auto;
  z-index: 1;
}

.common_appli_link .common_appli_link_head_text::after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 10px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  top:calc(100% - 1px);
  left:0;
  right:0;
  margin:auto;
  z-index: 2;
}

/*
----------------------------------------------------
以下、共通セクション
----------------------------------------------------
*/

/*
----------------------------------------------------
ヘッダー
----------------------------------------------------
*/
header{
  width:100%;
  position: absolute;
  z-index: 30;
  top:0;
  left:0;
}

header .header_line01{
  height:38px;
  background: linear-gradient(to left, #0080ca, #286dd8);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding:0 56px 0 44px;
}

header .header_line01 .header_h1{
  font-size: 14px;
  color:#fff;
  font-weight: 500;
}

header .header_line01 ul{
  display: flex;
  align-items: center;
  margin-left: auto;
}

header .header_line01 ul li{
  margin-left: 16px;
}

header .header_line01 ul li a{
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 1;

  color: #fff;
}

header .header_line01 ul li a img{
  margin-right: 6px;
}

header .header_line01 ul li a .news_icon{
  width:18px;
}
header .header_line01 ul li a .document_icon{
  width:20px;
}
header .header_line01 ul li a .faq_icon{
  width:19px;
}
header .header_line01 ul li a .contact_icon{
  width:19px;
}

header .header_line02{
  height:120px;
  background-color: #fff;
  padding-left: 40px;
  padding-right: 56px;
  display: flex;
  justify-content: space-between;
  align-items: center;

}


header .header_line02 .header_logo{
  display: block;
}

header .header_line02 .header_logo img{
  height:58px;
  width:auto;
}

header .header_line02 .parent_menu{
  display: flex;
  align-items: center;
}

header .header_line02 .parent_item{
  margin-left: 50px;
}

header .header_line02 .parent_link{
  display: flex;
  align-items: center;
  flex-direction: column;
}

header .header_line02 .parent_link .icon{
  height:36px;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .header_line02 .parent_link .icon_home{
  height:32px;
}
header .header_line02 .parent_link .icon_service{
  height:36px;
}
header .header_line02 .parent_link .icon_fee{
  height:34px;
}
header .header_line02 .parent_link .icon_renewal{
  height:28px;
}
header .header_line02 .parent_link .icon_lapse{
  height:28px;
}
header .header_line02 .parent_link .icon_loss{
  height:35px;
}
header .header_line02 .parent_link .icon_correction{
  height:28px;
}

header .header_line02 .parent_link p{
  margin-top: 12px;
  font-weight: bold;
  line-height: 1;
}

@media(max-width:1700px){
  header .header_line01{
    padding:0 40px 0 28px;
  }

  header .header_line02{
    height:90px;
    padding-left: 24px;
    padding-right: 40px;
  }

  header .header_line02 .parent_item{
    margin-left: 40px;
  }
  
  header .header_line02 .header_logo img{
    height:48px;
    width:auto;
  }

  header .header_line02 .parent_link p{
    margin-top: 8px;
    font-size: 14px;
  }

}/*@media(max-width:1700px){*/

@media(max-width:1580px){
  header .header_line01{
    padding:0 32px 0 28px;
  }

  header .header_line02{
    height:90px;
    padding-left: 24px;
    padding-right: 32px;
  }
  
  header .header_line02 .header_logo img{
    height:45px;
    width:auto;
  }

  header .header_line02 .parent_link p{
    margin-top: 8px;
    font-size: 13px;
  }

  header .header_line02 .parent_item{
    margin-left: 32px;
  }
}/*@media(max-width:1580px){*/


@media(max-width:1300px){
  header .header_line01 ul li a {
    font-size: 12px;
  }
}/*@media(max-width:1300px){*/



/*
----------------------------------------------------
サイド固定メニュー
----------------------------------------------------
*/
.fix_side_menu{
  position: fixed;
  right:0;
  top:160px;
  z-index: 20;
  display: flex;
  flex-direction: column;
  gap:10px 0;
}

.fix_side_menu a{
  width:220px;
}

.fix_side_menu a img{
  width:100%;
}

@media(max-width:1700px){
  .fix_side_menu{
    top: 128px;
  }
}/*@media(max-width:1700px){*/


/*
----------------------------------------------------
フッター
----------------------------------------------------
*/

footer{
  position: relative;
}

#page_top{
  /* position: relative;
  right:60px;
  top:-30px; */
  position: fixed;
  z-index: 15;
  bottom:24px;
  right:24px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  z-index: 19;
  cursor: pointer;
  background-image: url('../img/common/page_top.png');
  transition-duration: 0.4s;
  opacity: 0;
  pointer-events: none;
}

#page_top.show{
  opacity: 1;
  pointer-events: auto;
}

footer .footer_inner{
  max-width: 1200px;
  margin:0 auto;
}

footer .footer_area01{
  padding:60px 0;
  background-image: linear-gradient(to top, #0080ca, #286dd8);
}


footer .footer_border{
  height: 1px;
  margin: 48px 0 56px;
  border-radius: 0.5px;
  background-color: #fff;
}

footer .footer_flex{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

footer .footer_logo{
  display: block;
  width:412px;
}

footer .footer_logo img{
  width:100%;
}

footer .footer_adress{
  margin-top: 32px;
  line-height: 2;
  color: #fff;
}

footer .footer_adress .tel{
  color: #fff;
  pointer-events: none;
}

footer .footer_adress .fax a{
  pointer-events: none;
}

footer .button_flex{
  display: flex;
  margin-top: 32px;
}

footer .button_flex .button_inner{
  position: relative;
  z-index: 1;
}

footer .button_flex .button_inner::before,
footer .button_flex .button_inner::after{
  content:'';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

footer .button_flex .contact_button{
  width: 200px;
  height: 50px;
  border-radius: 25px;
  border: solid 1px #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  color: #fff;
  margin-right: 10px;
}

footer .button_flex .contact_button .button_inner::before{
  width: 19px;
  height: 14px;
  background-image: url('../img/common/icon_contact_white.png');
  left:-26px;
}

footer .button_flex .contact_button .button_inner::after{
  width: 16px;
  height: 16px;
  background-image: url('../img/common/radi_arrow_right_blue.png');
  right:-32px;
}


footer .button_flex .appli_button{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  width: 200px;
  height: 50px;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  background-image: linear-gradient(to top, #f68529, #f67b29);
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  color: #fff;
  font-feature-settings: 'palt';
  letter-spacing: 0.02em;
}


footer .button_flex .appli_button::before{
  content:'';
  width: 235px;
  height: 75px;
  background-color: #fff;
  opacity: 0.15;
  position: absolute;
  bottom:16px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 50%;
}

footer .button_flex .appli_button .button_inner::before{
  content:'';
  width: 18px;
  height: 18px;
  background-image: url('../img/common/icon_calendar_white.png');
  left:-24px;
}

footer .button_flex .appli_button .button_inner::after{
  content:'';
  width: 16px;
  height: 16px;
  background-image: url('../img/common/radi_arrow_right_orange.png');
  right:-20px;
}

footer .footer_right{
  
}

footer .footer_nav{
  display: flex;
}

footer .footer_menu{
  width:300px;
}

footer .footer_menu li{
  margin-top: 20px;
}

footer .footer_menu li:first-child{
  margin-top: 0;
}

footer .footer_menu li a{
  width: fit-content;
  display: flex;
  align-items: center;
  font-weight: 500;
  line-height: 1;
  color: #fff;

}

footer .footer_menu li a::before{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_white.png');
  margin-right: 10px;
}

footer .adress_head{
  font-size: 26px;
  font-weight: bold;
  line-height:1;
  color: #fff;

}

footer .map_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 20px;
}

footer .map_block{
  width: 580px;
  height: 80px;
  padding:20px 0 24px 20px;
  border-radius: 10px;
  background-color: #348ce6;
  display: flex;
  margin-top: 10px;
}

footer .map_block .map_head{
  flex-shrink: 0;
  margin-right: 36px;
}

footer .map_block .map_head a{
  display: flex;
  align-items: center;
  width:165px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;
  position: relative;
}

footer .map_block .map_head a::before{
  /* content:'';
  width: 16px;
  height: 23px;
  background-image: url('../img/common/icon_map_white.png');
  margin-right: 8px; */
}

footer .map_block .map_head img{
  width: auto;
  height:23px;
}

footer .map_block .map_head a::after{
  content:'';
  width: 21px;
  height: 21px;
  background-image: url('../img/common/radi_arrow_right_blue.png');
  position: absolute;
  right:0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

footer .map_block .pre_list{
  display: flex;
  flex-wrap: wrap;
  padding-top: 2px;
  gap:10px 0;
}

footer .map_block .pre_list li{
  width:85px;

}

footer .map_block .pre_list .pre_item{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: fit-content;
  line-height: 1;
  color: #fff;
  min-width: 55px;
}

footer .map_block .pre_list .pre_item::after{
  content:'';
  width: 15px;
  height: 15px;
  background-image: url('../img/common/radi_arrow_right_blue.png');
  margin-left: 10px;
}


footer .footer_area02{
  padding-top: 32px;
  padding-bottom: 40px;
}

footer .footer_area02 .min_menu{
  display: flex;
  justify-content: center;
  align-items: center;
  gap:0 36px;
}

footer .footer_area02 .min_menu a{
  display: flex;
  align-items: center;
  line-height: 1;
}

footer .footer_area02 .min_menu a::before{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-right: 10px;
}

footer .copy{
  text-align: center;
  margin-top: 40px;
}

footer .copy a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}
/*
----------------------------------------------------
TOPページ
----------------------------------------------------
*/

body.top_body{
  
}

main.top_main{
  padding-bottom: 0;
}

.top_section{

}

.top_mv_section{
  position: relative;
}

.top_mv_section .swiper_block{
  position: relative;
}

.top_mv_section .mv_swiper_button{
  width: 60px;
  height: 60px;
  border-radius: 50%;
  z-index: 15;
  position: absolute;
  cursor: pointer;
  top:0;
  bottom:0;
  margin:auto;
}

.top_mv_section .mv_swiper_prev{
  background-image: url('../img/common/swiper_prev.png');
  right:calc(50% + 670px);
}
.top_mv_section .mv_swiper_next{
  background-image: url('../img/common/swiper_next.png');
  left:calc(50% + 670px);
}

.top_mv_section .top_mv_slide{
  width:1430px;
  padding:0 20px;
  opacity: 0.6;
}

.top_mv_section .top_mv_slide.swiper-slide-active{
  opacity: 1;
}

.top_mv_section .mv_card{
  width:100%;
  height:720px;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}

.top_mv_section .button_area{
  position: absolute;
  top:40px;
  /* right:40px; */
  left:calc(50% + 280px);
  z-index: 10;
  width: 380px;
  /* height: 300px; */
  padding: 12px;
  border-radius: 5px;
  background-color: rgba(104,110,120,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap:12px 0;
}

.top_mv_section .button_area a{
  box-shadow: 0px 5px 15px 0 rgba(24, 25, 25, 0.2);
  border-radius: 5px;
  width: 100%;
  /* aspect-ratio: 1 / 0.334; */
}


.top_mv_section .button_area a img{
  width: 100%;
}

.top_mv_section .button_area a.program{
  background-image: linear-gradient(to left, #08ab87, #0bac48);
}
.top_mv_section .button_area a.application{
  background-image: linear-gradient(to left, #f68529, #f67b29);
}

.top_mv_section .mv_card .pic{
  width:100%;
  height:100%;
  object-fit: cover;
}


.top_mv_section .slide_nav{
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 10;
  width: 76px;
  height: 40px;
  border-radius: 20px;
  background-color: rgba(0 , 87 , 216 , 0.7);
  color: #fff;
  bottom:32px;
  left:calc(50% + 600px);
  font-family: "Lato", sans-serif;
  font-weight: bold;
  line-height: 1;
}

.top_mv_section .slide_nav .nav_slash{
  margin:0 2px 2px;
}


@media screen and (max-width:1700px){
  .top_mv_section .mv_swiper_button{
    width: 50px;
    height: 50px;
  }
  
  .top_mv_section .mv_swiper_prev{
    right:calc(50% + 480px);
  }
  .top_mv_section .mv_swiper_next{
    left:calc(50% + 480px);
  }
  .top_mv_section .top_mv_slide{
    width:1040px;
    padding:0 20px;
  }
  
  .top_mv_section .mv_card{
    height:514px;
  }

  .top_mv_section .button_area{
    top:28px;
    /* right:28px; */
    left:calc(50% + 200px);
    width: 270px;
    /* height: 215px; */
    
  }


  .top_mv_section .slide_nav{
    width: 76px;
    height: 40px;
    bottom:32px;
    left:calc(50% + 400px);
  }
}/*@media screen and (max-width:1700px){*/


@media screen and (max-width:1140px){
  .top_mv_section .mv_swiper_button{
    width: 40px;
    height: 40px;
  }
  
  .top_mv_section .mv_swiper_prev{
    right:calc(50% + 320px);
  }
  .top_mv_section .mv_swiper_next{
    left:calc(50% + 320px);
  }
  .top_mv_section .top_mv_slide{
    width:700px;
    padding:0 20px;
  }
  
  .top_mv_section .mv_card{
    height:345px;
  }

  .top_mv_section .button_area{
    top:20px;
    left:calc(50% + 133px);
    width: 180px;
    padding: 8px;
    gap:8px 0;
  }
  
  .top_mv_section .slide_nav{
    width: 64px;
    height: 32px;
    bottom:32px;
    left:calc(50% + 250px);
    font-size: 14px;
  }
}/*@media screen and (max-width:1140px){*/

.top_about_section{
  padding-top: 60px;
}

.top_about_section .top_banner{
  display: block;
  max-width:1000px;
  margin:0 auto;
  box-shadow: 0px 5px 15px 0 rgba(24, 25, 25, 0.2);
  border-radius: 20px;
}

.top_about_section .top_banner img{
  width:100%;
}

.top_about_section .about_box{
  margin-top: 60px;
  padding:72px 0 80px;
  position: relative;
}

.top_about_section .about_box::before{
  content:'';
  width:200vw;
  height:100%;
  background-color: #f4f8fd;
  position: absolute;
  top:0;
  left:-150px;
  z-index:2;
  border-radius: 72px 0 0 72px;
}

.top_about_section .about_box_inner{
  position: relative;
  z-index: 3;
}

.top_about_section .about_text_contents{
  position: relative;
  /* width:530px;
  min-height:595px; */
}

.top_about_section .about_text_contents .orange_head{
  width: 120px;
  height: 34px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f68429;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.top_about_section .about_text_contents .about_title{
  font-size: 38px;
  font-weight: bold;
  line-height: 1.53;
  letter-spacing: 0.1em;
  margin-top: 12px;
}

.top_about_section .about_text_contents .about_title span{
  color:#276ed8;
}

.top_about_section .about_text_contents .about_image{
  position: absolute;
  top:20px;
  left:590px;
}

.top_about_section .about_text_contents .about_image img{
  width:597px;
}

.top_about_section .about_text_contents .about_text{
  margin-top: 20px;
  line-height: 2.25;
}

.top_about_section .about_item_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 24px;
}

.top_about_section .about_item_list li{
  width:580px;
  min-height:160px;
  margin-top: 20px;
}

.top_about_section .about_item_list .about_item{
  width:100%;
  min-height:100%;
  display: flex;
  align-items: center;
  position: relative;
  padding:20px 60px 20px 30px;
  border: solid 3px #276ed8;
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);

}

.top_about_section .about_item_list .about_item::after{
  content:'';
  width:32px;
  height:32px;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  position: absolute;
  right:20px;
  bottom:15px;
}

.top_about_section .about_item_list .about_item_icon{
  width:112px;
  flex-shrink: 0;
  margin-right: 20px;
}

.top_about_section .about_item_list .about_item_icon img{
  width:100%;
}

.top_about_section .about_item_list .about_item_contents{
  width:100%;
}

.top_about_section .about_item_list .about_item_name{
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #276ed8;
}

.top_about_section .about_item_list .about_item_info{
  line-height: 1.63;
  margin-top: 12px;
  font-weight: 500;
  font-feature-settings: 'palt';
}

.top_map_section{
  position: relative;
  z-index: 1;
  padding-top: 250px;
  padding-bottom: 96px;
  margin-top: -150px;
  

} 

.top_map_section::before{
  content:'';
  width:100%;
  height:calc(100% + 140px);
  position: absolute;
  z-index: 1;
  top:0;
  left:0;
  background: linear-gradient(to top, #4caae0, #4f8cea);
}

.top_map_section .container{
  position: relative;
  z-index: 1;
}

.top_map_section .sec_title{
  width:fit-content;
  margin:0 auto;
  position: relative;
  font-size: 46px;
  font-weight: bold;
  line-height: 1.43;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;

}

.top_map_section .sec_title span{
  width: 90px;
  height: 90px;
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1.21;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  position: absolute;
  top:-28px;
  right:-12px;
}

.top_map_section .sec_sub_text{
  margin-top: 36px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  color: #fff;
}

.top_map_section .map_frame{
  margin-top: 64px;
  position: relative;
  height:954px;
  padding-left: 80px;
}

.top_map_section .map_frame .map{
  width:860px;
  display: block;
}

.top_map_section .map_text{
  margin-top: 48px;
  line-height: 1.3;
  text-align: center;
  color: #fff;
}

.top_map_section .map_text a{
  color:#fff665;
  border-bottom:1px solid #fff665;
}

.top_map_section .map_block{
  padding:16px 25px 18px;
  background-color: rgba(255,255,255,0.9);
  position: absolute;
  border-radius: 20px;
  width:300px;
  z-index: 2;
}

.top_map_section .map_block_hokkaido{
  top:-34px;
  right:8px;
}
.top_map_section .map_block_tohoku{
  top:116px;
  right:8px;
}
.top_map_section .map_block_shinetsu{
  top:171px;
  left:500px;
  width: 190px;
}
.top_map_section .map_block_kanto{
  top:366px;
  right:8px;
}
.top_map_section .map_block_chubu{
  top:674px;
  min-height: 280px;
  right:8px;
}
.top_map_section .map_block_kinki{
  top:674px;
  right:338px;
}
.top_map_section .map_block_chugoku{
  top:171px;
  left:180px;
}
.top_map_section .map_block_shikoku{
  top:674px;
  right:668px;
  width: 190px;
}
.top_map_section .map_block_kyushu{
  top:674px;
  right:888px;
}
.top_map_section .map_block_okinawa{
  top:-34px;
  left:8px;
  width:150px;
  padding:16px 15px 16px;
}


.top_map_section .map_block .map_head{
  text-align: center;
}

.top_map_section .map_block .map_head a{
  width: 250px;
  max-width: 100%;
  /* height: 46px; */
  border-radius: 10px;
  margin:0 auto;
  display: block;
}

.top_map_section .map_block .map_head a img{
  width:100%;
}

/* .top_map_section .map_block .map_head a::after{
  content:'';
  width:10px;
  height:16px;
  background-image: url('../img/common/angle_right_blue.png');
  background-size: contain;
  margin-left: 8px;
} */

.top_map_section .map_block .pre_list{
  display: flex;
  flex-wrap: wrap;
  gap:10px;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
}

.top_map_section .map_block_hokkaido .pre_list,
.top_map_section .map_block_shinetsu .pre_list,
.top_map_section .map_block_shikoku .pre_list
{
  justify-content: center;
}


.top_map_section .map_block .pre_list.pre_colum01{
  
}
.top_map_section .map_block .pre_list.pre_colum02{
  
}
.top_map_section .map_block .pre_list.pre_colum03{
}
.top_map_section .map_block .pre_list.pre_colum04{
}

.top_map_section .map_block .pre_item{
  width: 120px;
  height: 40px;
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);
  background-image: linear-gradient(to top, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;

}

.top_map_section .map_block .pre_item::after{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_white.png');
  position: absolute;
  right:10px;
  top:0;
  bottom:0;
  margin:auto;
}

.top_map_section .map_block .region_link{
  text-align: center;
  margin-top: 20px;
}

.top_map_section .map_block .region_link a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.top_flow_section{
  min-height:1160px;
  padding-bottom: 300px;
  position: relative;
} 

.top_flow_section::before{
  content:'';
  width:100%;
  height:100%;
  background-color: #f4f8fd;
  z-index: 0;
  position: absolute;
  left:0;
  top:0;
}

.top_flow_section::after{
  content:'';
  width:calc(50% + 750px);
  min-width: 1710px;
  height:100%;
  background-position: bottom;
  background-image: url('../img/top/top_flow_bg.png');
  position: absolute;
  right:0;
  bottom:0;
  z-index: 2;
}

.top_flow_section .flow_box{
  position: relative;
  padding:90px 0 88px;
}

.top_flow_section .flow_box::before{
  content:'';
  width:200vw;
  height:100%;
  position: absolute;
  z-index: 3;
  top:0;
  right:-150px;
  background-color: #f4f8fd;
  border-radius: 0 72px 72px 0;
}

.top_flow_section .flow_box_inner{
  position: relative;
  z-index: 4;
}

.top_flow_section .sec_title{
  display: flex;
  align-items: center;
  flex-direction: column;
  font-size: 38px;
  font-weight: bold;
  line-height: 1;
}

.top_flow_section .sec_title img{
  max-width:458px;
  margin-bottom: 20px;
}

.top_flow_section .flow_list{
  margin-top: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;

}

.top_flow_section .flow_list .dot{
  width:52px;

  border-top: dotted 4px #317aea;

}

.top_flow_section .flow_item{
  width: 250px;
  height: 250px;
  background-color: #fff;
  position: relative;
  padding-top: 56px;
  border-radius: 50%;
}

.top_flow_section .flow_item .flow_item_head{
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  width:100%;
  position: absolute;
  top:-40px;
  left:0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.top_flow_section .flow_item .head01{
  width: 60px;
  height: 22px;
  border-radius: 6px;
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  margin-bottom: 12px;
}

.top_flow_section .flow_item .head02{
  font-size: 42px;
  font-weight: bold;
  line-height: 0.6;
  color: #f67b29;
}

.top_flow_section .flow_item .icon{
  display: flex;
  justify-content: center;
  align-items: center;
  height:75px;
}

.top_flow_section .flow_item .flow_icon01{
  height:69px;
}
.top_flow_section .flow_item .flow_icon02{
  height:72px;
}
.top_flow_section .flow_item .flow_icon03{
  height:75px;
}
.top_flow_section .flow_item .flow_icon04{
  height:75px;
}

.top_flow_section .flow_item .flow_text_frame{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 16px;
  height:56px;
}

.top_flow_section .flow_item .flow_text_frame p{
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.25;
}

.top_flow_section .flow_item .flow_text_frame p span{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.38;
  /* margin-top: 8px; */
}

.top_flow_section .remark_list{
  margin-top: 40px;
}

.top_flow_section .remark_list li{
  display: flex;
  align-items: flex-start;
  font-weight: 500;
  line-height: 2.25;
  letter-spacing: 0.05em;
}

.top_flow_section .remark_list li::before{
  content:'※ ';
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.25;
  letter-spacing: 0.05em;
}

.top_flow_section .remark_list li a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.top_flow_section .remark_list li span{
  color: #f67b29;
}


.top_appli_section{
  position: relative;
  padding:96px 0 130px;
}

.top_appli_section::before{
  content:'';
  width:100%;
  height:calc(100% + 2px);
  background-color: #f4f8fd;
  position: absolute;
  top:0;
  bottom:0;
  z-index:1;
  border-radius: 0 0 72px 72px;
}


.top_appli_section .container{
  position: relative;
  z-index: 2;
}

.top_appli_section .sec_sub_title{
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #276ed8;
  margin-bottom: 16px;
}

.top_appli_section .p01{
  margin-top: 32px;
  line-height: 2.25;
  text-align: center;
}

.top_appli_section .appli_list_frame{
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  margin-top: 96px;
}

.top_appli_section .appli_list{
  display: flex;
  justify-content: space-between;
  max-width:1320px;
  margin:0 auto;
}

.top_appli_section .appli_item{
  width: 420px;
  /* padding: 90px 2.5% 32px; */
  padding: 90px 0 32px;
  border-radius: 20px;
  border: solid 3px #276ed8;
  background-color: #fff;
  position: relative;
}

.top_appli_section .appli_item .icon{
  width:126px;
  border-radius: 50%;
  position: absolute;
  top:-63px;
  left:0;
  right:0;
  margin:auto;
}

.top_appli_section .appli_item .appli_name{
  position: relative;
  width:fit-content;
  margin:0 auto;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.top_appli_section .appli_item .appli_name span{
  color: #276ed8;
}

.top_appli_section .appli_item .appli_name img{
  width:118px;
  position: absolute;
  left:-2px;
  top:-50px;
}

.top_appli_section .appli_item .appli_text{
  line-height: 1.63;
  max-width:86%;
  margin:24px auto 0;
}

.top_appli_section .appli_item .appli_text .fax a{
  pointer-events: none;
}

.top_appli_section .appli_item .appli_text .remark{
  font-size: 14px;
  display: inline-block;
  margin-top: 6px;
}

.top_appli_section .appli_item .fee_flex{
  margin-top: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  font-feature-settings: 'palt';
}

.top_appli_section .appli_item .fee_flex::before,
.top_appli_section .appli_item .fee_flex::after{
  content:'';
  width:3px;
  height:32px;
  border-radius: 1.5px;
  background-color: #222;
  margin-top: 6px;
}

.top_appli_section .appli_item .fee_flex::before{
  transform: rotateZ(-20deg);
  margin-right: 10px;
  
}

.top_appli_section .appli_item .fee_flex::after{
  transform: rotateZ(20deg);
  margin-left: 10px;
  
}


.top_appli_section .appli_item .fee_flex span{
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  color: #276ed8;
  display: inline-block;
  margin-right: 6px;
  margin-left: 2px;
}

.top_appli_section .appli_item .fee_flex span.num{
  font-size: 42px;
  line-height: 0.6;
  font-weight: bold;
  font-family: "Roboto", sans-serif;
  margin-right: 0;
  margin-left: 0;
}

.top_appli_section .appli_item .orange_button{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  width: 360px;
  max-width: 100%;
  height: 60px;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  background-image: linear-gradient(to top, #f68529, #f67b29);
  margin:20px auto 0;
}

.top_appli_section .appli_item .orange_button::before{
  content:'';
  width:380px;
  height:75px;
  background-color: #fff;
  opacity: 0.15;
  position: absolute;
  bottom:24px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 50%;
}

.top_appli_section .appli_item .orange_button .button_inner{
  height:100%;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 2;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.09;
  text-align: center;
  color: #fff;
  font-feature-settings: 'palt';
  letter-spacing: 0.02em;
}

.top_appli_section .appli_item .orange_button .button_inner span{
  font-size: 16px;
  font-weight: bold;
}

.top_appli_section .appli_item .orange_button .button_inner::before{
  content:'';
  position: absolute;
  top:0;
  bottom:0;
  margin:auto;
}

.top_appli_section .appli_item .orange_button .button_inner::after{
  content:'';
  width:23px;
  height:23px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_orange.png');
  position: absolute;
  top:0;
  bottom:0;
  margin:auto;
}

.top_appli_section .appli_item .orange_button.appli .button_inner::before{
  width:32px;
  height:32px;
  background-image: url('../img/common/icon_calendar_white.png');
  left:-48px;
}
.top_appli_section .appli_item .orange_button.appli .button_inner::after{
  right:-48px;
}

.top_appli_section .appli_item .orange_button.pdf .button_inner::before{
  width: 28px;
  height: 36px;
  background-image: url('../img/common/icon_pdf_white.png');
  left:-36px;
}
.top_appli_section .appli_item .orange_button.pdf .button_inner::after{
  right:-32px;
}


.top_appli_section .appli_item .tel{
  pointer-events: none;
  width:fit-content;
  margin:12px auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Roboto', sans-serif;
  font-size: 42px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #f67b29;

}

.top_appli_section .appli_item .tel::before{
  content:'';
  width: 28px;
  height: 37px;
  margin-right: 8px;
  background-image: url('../img/common/icon_tel_orange.svg');
}

.top_appli_section .appli_item .time_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 8px;
  gap:0 10px;
}

.top_appli_section .appli_item .time_block{
  display: flex;
  align-items: center;
}

.top_appli_section .appli_item .time_head{
  height: 24px;
  padding: 0 10px;
  border-radius: 12px;
  background-color: #707070;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  margin-right: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_appli_section .appli_item .time_text{
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

.top_appli_section .appli_item03 .appli_text{
  margin-top: 12px;
}

.top_appli_section .faq_box{
  position: relative;
  padding:40px 0 28px;
  background-color: #fff;
  border-radius: 20px;
  margin-top: 60px;
}

.top_appli_section .faq_box .faq_link{
  position: absolute;
  top:40px;
  right:60px;
  display: flex;
  justify-content: center;
  align-items: center;
  height:38px;
  padding:0 16px 0 20px;
  border-radius: 10px;
  background-color: #276ed8;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.top_appli_section .faq_box .faq_link::before{
  content:'';
  width: 16px;
  height: 16px;
  background-image: url('../img/common/icon_link_white.png');
  margin-right: 8px;
}
.top_appli_section .faq_box .faq_link::after{
  content:'';
  width: 16px;
  height: 16px;
  background-image: url('../img/common/radi_arrow_right_blue.png');
  margin-left: 8px;
}

.top_appli_section .faq_box .faq_head{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
}

.top_appli_section .faq_box .faq_head::before{
  content:'';
  width:40px;
  height:40px;
  border-radius: 50%;
  background-image: url('../img/common/icon_faq_blue.png');
  margin-right: 12px;
}

.top_appli_section .faq_box .faq_list{
  max-width: 1040px;
  margin:28px auto 0;
  display: flex;
  flex-wrap: wrap;
  gap:20px 55px;
}

.top_appli_section .faq_box .faq_list li{
  width:310px;
}

.top_appli_section .faq_box .faq_item{
  display: flex;
  align-items: flex-start;
  font-weight: bold;
  line-height: 1.63;
  transition-duration: 0s;
} 

.top_appli_section .faq_box .faq_item::before{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-right: 12px;
  flex-shrink: 0;
  margin-top: 7px;
}

.top_appli_section .faq_box .faq_item:hover{
  opacity: 1;
  color: #276ed8;
  text-decoration: underline;
}

.top_feature_section{
  padding-top: 260px;
  padding-bottom: 100px;
  margin-top: -130px;
  position: relative;
}

.top_feature_section::before{
  content:'';
  width:100%;
  height:100%;
  background-image: url('../img/top/top_feature_bg.svg');
  background-position: bottom;
  position: absolute;
  top:0;
  left:0;
  z-index: 0;
  border-radius:0 0 72px 72px ;
}

.top_feature_section .container{
  position: relative;
  z-index: 1;
  
}
.top_feature_section .sec_sub_title{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 12px;
}

.top_feature_section .sec_sub_title::before,
.top_feature_section .sec_sub_title::after{
  content:'';
  width:3px;
  height:40px;
  background-color: #fff;
  border-radius: 1.5px;
}

.top_feature_section .sec_sub_title::before{
  transform: rotateZ(-40deg);
  margin-right: 28px;
}
.top_feature_section .sec_sub_title::after{
  transform: rotateZ(40deg);
  margin-left: 18px;
}

.top_feature_section .feature_list_frame{
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  margin-top: 60px;
}

.top_feature_section .feature_list{
  max-width: 1280px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
}

.top_feature_section .feature_item{
  width:220px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.top_feature_section .feature_item .icon{
  width:100%;
  height:220px;
  border-radius: 50%;
  overflow: hidden;
}

.top_feature_section .feature_item .icon img{
  width:100%;
  height:100%;
  border-radius: 50%;
}

.top_feature_section .feature_item  .feature_text{
  padding-top: 12px;
  min-height: calc(100% - 220px);
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;;
  text-align: center;
  color:#fff;
}

.top_feature_section .feature_item  .feature_text .yellow{
  color: #fff665;
}

.top_feature_section .feature_item  .feature_text .min{
  font-size: 18px;
}

.top_feature_section .entry_banner{
  display: flex;
  height:260px;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);
  background-color: #fff;
  margin-top: 72px;
}

.top_feature_section .entry_banner .entry_left{
  width:100%;
  display: flex;
  align-items: center;
  padding-left: 120px;
}

.top_feature_section .entry_banner .entry_text01{
  display: flex;
  align-items: center;
  font-size: 42px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  position: relative;
}

.top_feature_section .entry_banner .entry_text01::before{
  content:'';
  width: 54px;
  height: 40px;
  margin-right: 20px;
  background-image: url('../img/common/icon_contact_blue.png');
}

.top_feature_section .entry_banner .entry_text01::after{
  content:'登録\A無料';
  width: 100px;
  height: 100px;
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.21;
  letter-spacing: 0.1em;
  color: #fff;
  position: absolute;
  right:-124px;
  top:-16px;
  border-radius: 50%;
  white-space: pre;
}

.top_feature_section .entry_banner .entry_text02{
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  margin-top: 26px;
}

.top_feature_section .entry_banner .entry_right{
  width:140px;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #276ed8;
}

.top_feature_section .entry_banner .entry_right::after{
  content:'';
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_blue.png');
}

.top_news_section{
  padding:96px 0;
}

.top_news_section .flex{
  display: flex;
  justify-content: space-between;
}

.top_news_section .flex .news_area{
  width:580px;
}

.top_news_section .news_box{
  margin-top: 48px;
  border-radius: 20px;
  background-color: #f7f8fa;
  padding:20px 40px 40px;
}


.top_news_section .news_item{
  padding:20px 0;
  border-bottom: 1px solid #ddd;
}

.top_news_section .news_title{
  color:#2074d4;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  text-align: left;
}

.top_news_section .news_text a{
  color:#2074d4;
}

.top_news_section .news_title span{
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}


.top_news_section .news_area01 .news_title span{
  padding: 0 10px;
  background-color: #f68129;
  margin-right: 8px;
}

.top_news_section .news_area02 .news_title span{
  padding: 0 10px;
  background-color: #266fd7;
  margin-right: 8px;
}

.top_news_section .news_text{
  line-height: 1.63;
  margin-top: 6px;
}



.top_news_section .news_button{
  width: 460px;
  height: 100px;
  margin: 60px auto 0;
  border-radius: 50px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1;
  color: #2074d4;
  padding-right: 10px;
} 

.top_news_section .news_button::after{
  content:'';
  width: 30px;
  height: 30px;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  position: absolute;
  right:40px;
  top:0;
  bottom:0;
  margin:auto;
}

/*
----------------------------------------------------
下層共通 下層ページのmv
----------------------------------------------------
*/

.page_mv_section{
  padding:60px 0;
  position: relative;
  
}

.page_mv_section::after{
  content:'';
  min-width:100%;
  width:1920px;
  height:calc(100% + 180px);
  /* background-image: url('../img/common/page_mv_wave.png'); */
  position: absolute;
  left:0;
  top:0;
  z-index: 0;
  background-color: #e8f0fa;
}

.page_mv_section .common_page_title_set{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  /* align-items: center; */
  max-width: 1200px;
  margin:0 auto;
}

.page_mv_section .common_page_title_set .ja_title{
  font-size: 38px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #333;
}

.page_mv_section .common_page_title_set .en_title{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 16px;
  color: #276ed8;

}

.common_page_wrap{
  width:1446px;
  max-width: 95%;
  min-width: 1240px;
  margin:0 auto;
  position: relative;
  z-index: 1;
  border-radius: 96px 96px 0 0;
  background-color: #fff;
  /* padding-top: 48px; */
  padding-top: 24px;
  padding-bottom: 72px;
} 

.common_page_flex{
  display: flex;
}

.common_section_wrap{
  width:100%;
}

/*
----------------------------------------------------
下層共通 パンクズ
----------------------------------------------------
*/

.common_bread_area{
  /* padding-bottom: 72px; */
  padding-bottom: 40px;
}

.common_bread_area .bread_list{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 14px;
}

.common_bread_area .bread_list .arrow{
  margin:3px 12px 0;
  width: 6px;
  height: 10px;
  background-image: url('../img/common/angle_right_blue.png');
  background-position: right;
}

.common_bread_area .bread_list a{
  display: inline-block;
  line-height: 1;
  color: #276ed8;
}

.common_bread_area .bread_list span{
  display: inline-block;
  line-height: 1;
}

/*
----------------------------------------------------
下層共通 サイドバー
----------------------------------------------------
*/

.common_sidebar{
  width:260px;
  margin-left: 40px;
  flex-shrink: 0;

}


.common_sidebar .sidebar_button_area{
  padding:10px;
  background-color: rgba(104,110,120,0.3);
  border-radius: 5px;
}

.common_sidebar .sidebar_button_area .button{
  position: relative;
  display: block;
  width:100%;
  min-height: 100px;
  padding:8px 24px;
  border-radius: 5px;
  box-shadow: 0px 5px 15px 0 rgba(24, 25, 25, 0.2);
}

.common_sidebar .sidebar_button_area .button::after{
  content:'';
  width: 25px;
  height: 25px;
  border-radius: 50%;
  position: absolute;
  right:12px;
  bottom:20px;
}

.common_sidebar .sidebar_button_area .button_head{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height:28px;
  border-radius: 20px;
  background-color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}

.common_sidebar .sidebar_button_area .button_head::after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 6px 7px 0 7px;
  border-color: #FFFFFF transparent transparent transparent;
  position: absolute;
  top:calc(100% - 1px);
  left:0;
  right:0;
  margin:auto;
}

.common_sidebar .sidebar_button_area .button_text{
  display: flex;
  align-items: center;
  margin-top: 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  font-feature-settings: 'palt';
}

.common_sidebar .sidebar_button_area .program_button{
  background-image: linear-gradient(to left, #08ab87, #0bac48);
}
.common_sidebar .sidebar_button_area .program_button .button_head{
  color: #07ac5f;
}
.common_sidebar .sidebar_button_area .program_button::after{
  background-image: url('../img/common/radi_arrow_right_green.png');
}
.common_sidebar .sidebar_button_area .program_button .button_text::before{
  content:'';
  width:52px;
  height:47px;
  background-image: url('../img/common/icon_program_white.png');
  margin-right: 8px;
  margin-left: -3px;
}

.common_sidebar .sidebar_button_area .appli_button{
  background-image: linear-gradient(to top, #f68529, #f67b29);
  margin-top: 15px;
}
.common_sidebar .sidebar_button_area .appli_button .button_head{
  color: #f67e29;
}
.common_sidebar .sidebar_button_area .appli_button::after{
  background-image: url('../img/common/radi_arrow_right_orange.png');
}
.common_sidebar .sidebar_button_area .appli_button .button_text::before{
  content:'';
  width:40px;
  height:40px;
  background-image: url('../img/common/icon_calendar_white.png');
  margin-right: 10px;
  margin-left: 5px;
}


.common_sidebar .sidebar_menu_box{
  margin-top: 40px;
  border-radius: 5px;
  overflow: hidden;
} 

.common_sidebar .sidebar_menu_box .sidebar_menu_head{
  height: 60px;
  background-image: linear-gradient(to right, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  letter-spacing: 0.1em;
  color: #fefefe;
}

.common_sidebar .sidebar_menu_box .sidebar_menu_body{
  padding:24px 20px;
  background-color: #f4f8fd;
}

.common_sidebar .sidebar_menu_box .sidebar_menu_body li{
  margin-top: 24px;
}

.common_sidebar .sidebar_menu_box .sidebar_menu_body li:first-child{
  margin-top: 0;
}

.common_sidebar .sidebar_menu_box .sidebar_menu_body li a{
  display: flex;
  font-weight: bold;
  line-height: 1.63;
  font-feature-settings: 'palt';
}

.common_sidebar .sidebar_menu_box .sidebar_menu_body li a::before{
  content:'';
  width: 8px;
  height: 14px;
  background-image: url('../img/common/angle_right_blue.png');
  flex-shrink: 0;
  margin-right: 8px;
  margin-top: 6px;
}

.common_sidebar .sidebar_mail_box{
  margin-top: 40px;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0px 5px 15px 0 rgba(24, 25, 25, 0.2);
  display: block;
}

.common_sidebar .sidebar_mail_box .sidebar_mail_head{
  height: 36px;
  background-image: linear-gradient(to left, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
}

.common_sidebar .sidebar_mail_box .sidebar_mail_head::before{
  content:'';
  width: 28px;
  height: 21px;
  background-image: url('../img/common/icon_contact_white.png');
}


.common_sidebar .sidebar_mail_box .sidebar_mail_body{
  display: flex;
  align-items: center;
  padding-left: 26px;
  height:64px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.22;
  text-align: center;
}


.common_sidebar .sidebar_mail_box .sidebar_mail_body::before{
  content:'登録\A無料';
  white-space: pre;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.14;
  text-align: center;
  color: #fff;
  margin-right: 8px;
}

.common_sidebar .sidebar_mail_box .sidebar_mail_body::after{
  content:''; 
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  margin-right: 10px;
}
/*
----------------------------------------------------
利用規約
----------------------------------------------------
*/

body.rules_body{
  
}

main.rules_main{

}

.rules_section{
  padding-bottom: 72px;
}

.rules_section:last-child{
  padding-bottom: 0;
}

.rules_section .sec_title{
  display: flex;
  align-items: flex-start;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.1em;
  padding-bottom: 12px;
  border-bottom:3px solid #276ed8;
}

.rules_section .sec_title::before{
  content:'';  
  width: 20px;
  height: 20px;
  margin-right: 20px;
  border-radius: 50%;
  background-image: linear-gradient(to top, #0080ca, #286dd8);
  margin-top: 10px;
}

.rules_section .rules_text{
  line-height: 2.25;
  margin-top: 24px;
  font-feature-settings: 'palt';
}

.rules_section .rules_text .red{
  color:#f67b29;
}

.rules_section .rules_text .min{
  font-size: 14px;
}

.rules_section .rules_text a{
  color:#276ed8;
} 

.rules_section .rules_text .tel{
  color:#222;
  pointer-events: none;
}

.rules_section .rules_text .fax a{
  color:#222;
  pointer-events: none;
}

.rules_section .rules_text .contact_link{
  display: flex;
  align-items: center;
  width:fit-content;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
  margin-top: 4px;
  margin-bottom: 8px;
  line-height: 1.3;
}

.rules_section .rules_text .contact_link::after{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-left: 6px;
}

.rules_section .dot_list{
  margin-top: 28px;
}

.rules_section .dot_list li{
  display: flex;
  align-items: flex-start;
  padding-left: 30px;
  line-height: 2.25;
  margin-top: 6px;
}

.rules_section .dot_list li::before{
  content:'';
  width:12px;
  height:12px;
  background-color: #276ed8;
  border-radius: 50%;
  margin-right: 12px;
  margin-top: 12px;
  flex-shrink: 0;
}

.rules_section .dot_list li:first-child{
  margin-top: 0;
}

.rules_section .border_list li{
  margin-top:0;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ddd;
}

.rules_section .border_list li:first-child{
  padding-top: 0;
}


/*
----------------------------------------------------
利用規約
----------------------------------------------------
*/

body.law_body{
  
}

main.law_main{

}

.law_section{

}

.law_section dl{
  display: flex;
  flex-wrap: wrap;
  /* font-feature-settings: 'palt'; */
}

.law_section dl dt,
.law_section dl dd{
  padding-top: 16px;
  padding-bottom: 16px;
  line-height: 1.63;
}

.law_section dl dt{
  width:240px;
  border-bottom:1px solid #276ed8;
  font-weight: bold;
  padding-left: 30px;
  white-space: nowrap;
}

.law_section dl dd{
  width:calc(100% - 240px);
  border-bottom:1px solid #ddd;
  padding-left: 50px;
  padding-right: 40px;
}

.law_section dl dd .min{
  font-size: 14px;
}

.law_section dl dd .red{
  color:#f67b29;
}

.law_section dl dd a{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;

}

.law_section dl dd .tel{
  pointer-events: none;
  color:#222;
  border: none;
}

.law_section dl dd .fax a{
  pointer-events: none;
  color:#222;
}

/*
----------------------------------------------------
利用規約
----------------------------------------------------
*/

body.document_body{
  
}

main.document_main{

}

.document_section{

}

.document_section .p01{
  line-height: 2.25;
}

.document_section .p02{
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.5;
  color: #f67b29;
  font-feature-settings: 'palt';
}

.document_section .color_box{
  margin-top: 32px;
  background-color: #fbf7d1;
  padding:20px 32px;
  margin-bottom: 80px;
}



.document_section .p03{
  font-size: 14px;
  line-height: 1.71;
}

.document_section .adobe_link{
  width: fit-content;
  margin-top: 12px;
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 1.5;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
  font-feature-settings: 'palt';
  
}

.document_section .adobe_link::after{
  content:'';
  width: 6px;
  height: 9px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-left: 4px;
}

.document_section .table_frame{
  margin-top: 50px;
  border-radius: 5px;
  overflow: hidden;
}

.document_section table{
  position: relative;
  border:1px solid #4c88e3;
  /* border-collapse: collapse; */
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-radius: 5px;
}

.document_section thead{
  background-color: #4c88e3;
  
}

.document_section thead th{
  height:60px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  border:none;
}

.document_section thead th:first-child{
  width:280px;
  border-right:1px solid #ccdaec;
}
.document_section thead th:last-child{
  width:calc(100% - 280px);
}

.document_section tbody{

}

.document_section tbody tr{
  
}
.document_section tbody tr:last-child{
  border-bottom: none;
}

.document_section tbody td{
  padding:24px 32px;
  font-feature-settings: 'palt';
  border-bottom: 1px solid #ccdaec;
}
.document_section tbody td:first-child{
  width:280px;
  border-right:1px solid #ccdaec;
  
}
.document_section tbody td:last-child{
  width:calc(100% - 280px);
}

.document_section tbody .document_img{
  display: block;
  width:133px;
  margin:0 auto;
}

.document_section tbody .document_img img{
  width:100%;
}

.document_section tbody .document_text01{
  line-height: 2;
}

.document_section tbody .document_text01 span{
  color:#f67b29;
}

.document_section tbody .document_text01 span.blue{
  color:#fff;
  padding: 0 10px;
  background-color: #266fd7;
  margin-right: 8px;
}

.document_section tbody .document_text02{
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.71;
}

.document_section tbody .document_text02 span{
  color:#f67b29;
}

.document_section tbody .document_link{
  margin-top: 12px;
}

.document_section tbody .document_link a{
  width: fit-content;
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 1.5;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.document_section tbody .document_link.pdf a::before{
  content:'';
  width: 15px;
  height: 18px;
  background-image: url('../img/common/icon_pdf_blue.png');
  margin-right: 6px;
}

.document_section tbody .document_link.word a::before{
  content:'';
  width: 16px;
  height: 16px;
  background-image: url('../img/common/icon_word_blue.png');
  margin-right: 4px;
}

.document_section tbody .document_link.jpg a::before{
  content:'';
  width: 15px;
  height: 18px;
  background-image: url('../img/common/icon_jpg_blue.png');
  margin-right: 4px;
}

/*
----------------------------------------------------
必要書類の送付について
----------------------------------------------------
*/

body.sending_body{
  
}

main.sending_main{
  font-feature-settings: 'palt';
}

.sending_section01{
  padding-bottom: 72px;
}

.sending_section01 .p01{
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 56px;
}

.sending_section01 .p02{
  margin-top: 24px;
  line-height: 2.25;
}

.sending_section01 .p02 span{
  color:#f67b29;
}

.sending_section01 .p03{
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.71;
}

.sending_section01 .p04{
  margin-top: 24px;
  line-height: 1.5;
}

.sending_section01 ul{
  margin-top: 36px;
}

.sending_section01 ul li{
  margin-top: 16px;
}

.sending_section01 ul li a{
  line-height: 1.5;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.sending_section01 ul li a::after{
  content:'';
  display: inline-block;
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-left: 6px;
}

.sending_section02{

}

.sending_section02 .send_box{
  margin-top: 40px;
  display: flex;
  border-radius: 5px;
  overflow: hidden;
  background-color: #f4f8fd;

}

.sending_section02 .send_box .send_left{
  background-image: linear-gradient(to left, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
  width:160px;
  font-weight: bold;
  line-height: 1.63;
  flex-shrink: 0;
  color: #fff;
}

.sending_section02 .send_box .send_right{
  width:100%;
  padding:24px 40px;
}

.sending_section02 .send_box .send_text01{
  font-weight: bold;
  line-height: 1.5;
}

.sending_section02 .send_box .send_text02{
  margin-top: 6px;
  font-weight: bold;
  line-height: 2.25;
}

.sending_section02 .send_box .send_text03{
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.71;
}

.sending_section02  .send_text04{
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.71;
  color: #f67b29;
}

/*
----------------------------------------------------
お支払い方法について
----------------------------------------------------
*/

body.pay_body{
  
}

main.pay_main{
  font-feature-settings: 'palt';
}

.pay_section01{
  padding-bottom: 72px;
}

.pay_section01 .p01{
  line-height: 1.5;
  margin-bottom: 50px;
}

.pay_section01 .p02{
  margin-top: 32px;
  line-height: 2.25;
}

.pay_section02{
  padding-bottom: 72px;
}

.pay_section02 .p01{
  margin-top: 32px;
  line-height: 2.25;
} 

.pay_section02 .p02{
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.5;
} 

.pay_section02 .bank_frame{
  margin-top: 32px;
}

.pay_section02 .bank_box{
  border-radius: 5px;
  overflow: hidden;
  border:1px solid #276ed8;
}

.pay_section02 .bank_head{
  background-color: #276ed8;
  padding:20px 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #fefefe;
  display: flex;
  justify-content: center;
}

.pay_section02 .bank_body{
  padding:24px 16px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.pay_section02 .bank_body img{
  width:597px;
  max-width: 95%;
}

.pay_section02 .bank_body ul{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap:20px; 
}
.pay_section02 .bank_body ul li a {
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
  line-height: 1.4;
}

.pay_section02 .table_frame{
  margin-top: 40px;
}

.pay_section02 table{
  border:1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-radius: 5px;
  overflow: hidden;
}

.pay_section02 table a{
  color:#222;
  pointer-events: none;
  
}

.pay_section02 table a.bank_link{
  color:#4c88e3;
  pointer-events: auto;
}

.pay_section02 table thead{
  background-color: #4c88e3;
}

.pay_section02 table th,
.pay_section02 table td{
  min-width: 120px;
}

/* .pay_section02 table th:nth-child(1),
.pay_section02 table td:nth-child(1){
  width:160px;
}

.pay_section02 table th:nth-child(2),
.pay_section02 table td:nth-child(2){
  width:160px;
}

.pay_section02 table th:nth-child(3),
.pay_section02 table td:nth-child(3){
  width:120px;
}

.pay_section02 table th:nth-child(4),
.pay_section02 table td:nth-child(4){
  width:160px;
}

.pay_section02 table th:nth-child(5),
.pay_section02 table td:nth-child(5){
  width:290px;
} */

.pay_section02 table th{
  height:60px;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  border-right: 1px solid #ccdaec;
}

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

.pay_section02 table td{
  padding:8px 2px;
  text-align: center;
  line-height: 1.2;
  border-right: 1px solid #ccdaec;
  border-bottom: 1px solid #ccdaec;
}

.pay_section02 table td span{
  font-size: 14px;
}

.pay_section02 table td:nth-child(5){
  border-right:none;
}

.pay_section02 table tr.blue_bg{
  background-color: #f4f8fd;
}

.pay_section02 table tbody tr:last-child td{
  border-bottom:none;
}

.pay_section03{
  padding-bottom: 72px;
}

.pay_section03 .p01{
  margin-top: 32px;
  line-height: 2.25;
}

.pay_section03 .p01 span{
  color:#f67b29;
}

.pay_section04{

}

.pay_section04 .p01{
  margin-top: 32px;
  line-height: 2.25;

}

.pay_section04 .p02{
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.71;

}

/*
----------------------------------------------------
新免許の送付について
----------------------------------------------------
*/

body.send_body{
  
}

main.send_main{
  font-feature-settings: 'palt';
}

.send_section01{
  padding-bottom: 72px;
}

.send_section01 .p01{
  line-height: 1.5;
  margin-bottom: 56px;
}

.send_section01 .p02{
  line-height: 1.5;
  margin-top: 32px;
}

.send_section01 .p03{
  margin-top: 24px;
  line-height: 1.5;
}

.send_section01 .p04{
  margin-top: 32px;
  line-height: 2.25;
}

.send_section01 .p04 span{
  color:#f67b29;
}

.send_section01 ol{
  margin-top: 24px;
  counter-reset: item;
}

.send_section01 ol li{
  line-height: 2.25;
  position: relative;
  padding-left: 32px;
}

.send_section01 ol li::before{
  counter-increment: item;
  content: counter(item);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  background-color: #276ed8;
  border-radius: 5%;
  font-size: 14px;
  font-weight: bold;
  line-height:1;
  color: #fefeff;
  position: absolute;
  left:0;
  top:5px
}


.send_section01 ol li span{
  color:#f67b29;
}

.send_section02{

}

.send_section02 .p01{
  margin-top: 32px;
  line-height: 1.5;
}

.send_section02 .p01 span{
  color:#f67b29;
}

.send_section02 .p02{
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.5;
}

.send_section02 .p03{
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.5;
}

.send_section02 .p03 a{
  color:#276ed8;
  border-bottom:1px solid #276ed8;
}


/*
----------------------------------------------------
センター概要
----------------------------------------------------
*/

body.center_body{
  
}

main.center_main{
  font-feature-settings: 'palt';
}

.center_section{

}

.center_section dl{
  display: flex;
  flex-wrap: wrap;
  /* font-feature-settings: 'palt'; */
}

.center_section dl dt,
.center_section dl dd{
  padding-top: 16px;
  padding-bottom: 16px;
  line-height: 1.63;
}

.center_section dl dt{
  width:240px;
  border-bottom:1px solid #276ed8;
  font-weight: bold;
  padding-left: 30px;
  white-space: nowrap;
}

.center_section dl dd{
  width:calc(100% - 240px);
  border-bottom:1px solid #ddd;
  padding-left: 50px;
  padding-right: 40px;
}

.center_section dl dd .min{
  font-size: 14px;
}

.center_section dl dd .red{
  color:#f67b29;
}

.center_section dl dd a{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;

}

.center_section dl dd .tel{
  pointer-events: none;
  color:#222;
  border: none;
}

.center_section dl dd .fax a{
  pointer-events: none;
  color:#222;
}


.center_section .common_sec_title{
  margin-top: 40px;
}

.center_section .map_frame{
  margin-top: 24px;
  margin-bottom: 40px;
}

.center_section .map_frame iframe{
  width:100%;
  height:400px;
  display: block;
}

.center_section .map_text{
  margin-bottom: 40px;
}


/*
----------------------------------------------------
リンクについて
----------------------------------------------------
*/

body.rink_body{
  
}

main.rink_main{

}

.rink_section{
  padding-bottom: 72px;
}

.rink_section:last-child{
  padding-bottom: 0;
}


.rink_section .rink_text{
  line-height: 2.25;
  margin-top: 24px;
  font-feature-settings: 'palt';
}


.rink_section .dot_list{
  margin-top: 28px;
}

.rink_section .dot_list li{
  display: flex;
  align-items: flex-start;
  padding-left: 30px;
  line-height: 2.25;
  margin-top: 6px;
}

.rink_section .dot_list li::before{
  content:'';
  width:12px;
  height:12px;
  background-color: #276ed8;
  border-radius: 5%;
  margin-right: 12px;
  margin-top: 12px;
  flex-shrink: 0;
}

.rink_section .dot_list li:first-child{
  margin-top: 0;
}

.rink_section .border_list li{
  margin-top:0;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ddd;
}

.rink_section .border_list li:first-child{
  padding-top: 0;
}

.rink_section ul a{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;

}

/*
----------------------------------------------------
全国・運輸局一覧
----------------------------------------------------
*/

body.mlit-list_body{
  
}

main.mlit-list_main{

}

.mlit-list_section{

}


.mlit-list_section .p01{
  line-height: 2.25;
  margin-bottom: 48px;
}

.mlit-list_section .p01 a{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;
}

.mlit-list_section .table_frame{
  margin-top: 40px;
}

.mlit-list_section table{
  border:1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-radius: 5px;
  overflow: hidden;
}

.mlit-list_section table a.tel{
  color:#222;
  pointer-events: none;
}

.mlit-list_section table thead{
  background-color: #4c88e3;
}

.mlit-list_section table th,
.mlit-list_section table td{
  min-width: 120px;
}

.mlit-list_section table th{
  height:60px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  border-right: 1px solid #ccdaec;
}

.mlit-list_section table th:last-child{
  border-right: none;
}

.mlit-list_section table td{
  padding:8px 2px;
  text-align: center;
  line-height: 1.5;
  border-right: 1px solid #ccdaec;
  border-bottom: 1px solid #ccdaec;
}

.mlit-list_section .common_appli_link{
  margin:64px auto 0;
}



/*
----------------------------------------------------
サイトマップ
----------------------------------------------------
*/

body.sitemap_body{
  
}

main.sitemap_main{

}

.sitemap_section{

}


.sitemap_section .dot_list{
  margin-top: 28px;
}

.sitemap_section .dot_list li{
  display: flex;
  align-items: flex-start;
  padding-left: 30px;
  line-height: 2.25;
  margin-top: 6px;
}

.sitemap_section .dot_list li::before{
  content:'';
  width:12px;
  height:12px;
  background-color: #276ed8;
  border-radius: 5%;
  margin-right: 12px;
  margin-top: 12px;
  flex-shrink: 0;
}

.sitemap_section .dot_list li:first-child{
  margin-top: 0;
}

.sitemap_section .border_list li{
  margin-top:0;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ddd;
}

.sitemap_section .border_list li:first-child{
  padding-top: 0;
}

.sitemap_section ul a{
  color:#276ed8;

}

/*
----------------------------------------------------
お知らせ
----------------------------------------------------
*/

body.news_body{
  
}

main.news_main{

}

.news_section{
  padding-bottom: 72px;
}

.news_section:last-child{
  padding-bottom: 0;
}

.news_section .flex .news_area{
  margin-top: 40px;
}

.news_section .news_box{
  margin-top: 48px;
  border-radius: 20px;
  background-color: #f7f8fa;
  padding:20px 40px 40px;
}


.news_section .news_item{
  padding:20px 0;
  border-bottom: 1px solid #ddd;
}

.news_section .news_title{
  color:#2074d4;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  text-align: left;
}

.news_section .news_text a{
  color:#2074d4;
}

.news_section .news_title span{
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}


.news_section .news_area01 .news_title span{
  padding: 0 10px;
  background-color: #f68129;
  margin-right: 8px;
}

.news_section .news_area02 .news_title span{
  padding: 0 10px;
  background-color: #266fd7;
  margin-right: 8px;
}

.news_section .news_text{
  line-height: 1.63;
  margin-top: 6px;
}


/*
----------------------------------------------------
お知らせ詳細
----------------------------------------------------
*/
body.news_single_body{
  
}

main.news_single_main{

}

.news_single_section{

}

.news_single_section .news_date{
  margin-top: 16px;
  text-align: right;
  font-size: 20px;
  color:#2074D4;
}

.news_single_section .news_text{
  line-height: 1.75;
  margin-top: 24px;
}

.news_single_section .news_text a{
  color: #2074d4;
}

.news_single_section .news_img{
  margin-top: 24px;
  display: flex;
  justify-content: center;
}

.news_single_section .news_img img{
  max-width: 100%;
}

.news_single_section .news_list_link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 380px;
  max-width: 100%;
  height: 60px;
  margin: 80px auto 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #2074d4;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  padding-right: 20px;
  position: relative;
}

.news_single_section .news_list_link::after {
  content: '';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url(../img/common/radi_arrow_right_white01.png);
  position: absolute;
  top:0;
  bottom:0;
  right:36px;
  margin:auto;
}

/*
----------------------------------------------------
更新・失効講習会場住所一覧
----------------------------------------------------
*/
body.address_body{
  
}

main.address_main{

}

.region_section.address_section{
    padding-bottom: 50px;
}

.address_section .p01{
  line-height: 2.25;
  margin-bottom: 80px;
}

.address_section .p01 a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.address_section .map_frame{
  margin-top: 112px;
  position: relative;
  height:942px;
  padding-top: 0;
  padding-left: 40px;
}

.address_section .map_frame .map img{
  width:663px;
}

.address_section .map_block{
  padding:16px 15px 18px;
  /* background-color: rgba(244,248,253,0.9); */
  background-color: #f4f8fd;
  position: absolute;
  border-radius: 10px;
  width:210px;
  z-index: 2;
}

.address_section .map_block_hokkaido{
  top:-72px;
  right:0;
  padding-bottom: 8px;
}
.address_section .map_block_tohoku{
  top:68px;
  right:0;
}
.address_section .map_block_shinetsu{
  top:167px;
  left:340px;
  width: 140px;
  padding-left: 10px;
  padding-right: 10px;
}
.address_section .map_block_kanto{
  top:318px;
  right:0;
}
.address_section .map_block_chubu{
  top:618px;
  right:0;
}
.address_section .map_block_kinki{
  top:618px;
  right:250px;
}
.address_section .map_block_chugoku{
  top:167px;
  left:110px;
}
.address_section .map_block_shikoku{
  top:618px;
  right:490px;
  width:140px;
  padding-left: 10px;
  padding-right: 10px;
}
.address_section .map_block_kyushu{
  top:618px;
  right:670px;
}
.address_section .map_block_okinawa{
  top:-72px;
  left:0;
  width:140px;
  padding:16px 10px 18px;
}


.address_section .map_block .map_head{
  text-align: center;
}

.address_section .map_block .map_head a{
  display: block;
  width: 180px;
  max-width: 100%;
  margin:0 auto;
}

.address_section .map_block .map_head a img{
  width:100%;
}

.address_section .map_block .map_head .button {
  display: block;
  width: 180px;
  max-width: 100%;
  margin: 0 auto;
  font-size: 20px;
  font-weight: bold;
}

.address_section .map_block .map_head .button img{
  width:100%;
}

.address_section .map_block .pre_list{
  display: flex;
  flex-wrap: wrap;
  gap:10px 8px;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
}

.address_section .map_block_hokkaido .pre_list,
.address_section .map_block_shinetsu .pre_list,
.address_section .map_block_shikoku .pre_list,
.address_section .map_block_okinawa .pre_list
{
  justify-content: center;
}



.address_section .map_block .pre_list.pre_colum01{

}
.address_section .map_block .pre_list.pre_colum02{  
}
.address_section .map_block .pre_list.pre_colum03{
}
.address_section .map_block .pre_list.pre_colum04{
}

.address_section .map_block .pre_item{
  width: 86px;
  height: 40px;
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);
  background-image: linear-gradient(to top, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;
  padding-right: 5px;
}

.address_section .map_block .pre_item::after{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_white.png');
  position: absolute;
  right:6px;
  top:0;
  bottom:0;
  margin:auto;
}

.address_section .map_block .region_link{
  text-align: center;
  margin-top: 20px;
}

.address_section .map_block .region_link a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.address_section .map_text{
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.71;
  color: #f67b29;
  background-color: #fbf7d1;
  padding:32px;
}

.address_section .table_frame{
  margin-top: 30px;
}

.address_section table{
  border:1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  overflow: hidden;
  font-feature-settings: 'palt';
}

.address_section table thead{
  background-color: #4c88e3;
}

.address_section table thead th{
  height:60px;
  color:#fff;
  font-weight: bold;
  line-height: 1.3;
  border-right: 1px solid #ccdaec;
}

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

.address_section table th,
.address_section table td{
  min-width: 120px;
}

.address_section table td{
  padding:10px 20px;
  line-height: 1.63;
  min-height: 60px;
  border-right: 1px solid #ccdaec;
  border-bottom: 1px solid #ccdaec;
}

.address_section table td:last-child{
  border-right: none;
}

.address_section table td br{
  display: none;
}

.address_section table tbody tr:nth-child(odd){
  background-color: #f4f8fd;
}

.address_section table tbody td:last-child a:not(.up_link){
  display: flex;
  justify-content: center;
  align-items: center;
  width:fit-content;
  margin:0 auto;
  line-height: 1;
  color: #4c88e3;
  text-decoration: underline;
}

.address_section table tbody td:last-child a:not(.up_link)::before{
  content:'';
  width: 14px;
  height: 20px;
  background-image: url('../img/common/icon_map_blue.png');
  margin-right: 4px;
}

.address_section table .up_link{
  margin-left: auto;
  display: block;
  width:fit-content;
  color: #4c88e3;
}

.address_section .common_appli_link{
  margin:60px auto 0;
}


/*
----------------------------------------------------
講習会場詳細
----------------------------------------------------
*/

body.place_body{
  
}

main.place_main{
  font-feature-settings: 'palt';
}

.place_section{
  padding-bottom: 72px;
}

.place_section:last-child{
  padding-bottom: 0;
}

.place_section .place_text{
  margin-top: 32px;
  line-height: 2.25;
}

.place_section .place_link{
  /* display: flex;
  align-items: center;
  width: fit-content; */
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
  margin-top: 4px;
  margin-bottom: 8px;
  line-height: 1.3;
}

.place_section .place_link::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-left: 6px;
}

.place_section .map_frame{
  margin-top: 48px;
}

.place_section .map_frame iframe{
  display: block;
  width:100%;
  height:500px;
}

.place_section .dl_flame{
  margin-top: 20px;
}

.place_section dl{
  display: flex;
  flex-wrap: wrap;
  /* font-feature-settings: 'palt'; */
}

.place_section dl dt,
.place_section dl dd{
  padding-top: 16px;
  padding-bottom: 16px;
  line-height: 1.63;
}

.place_section dl dt{
  width:240px;
  border-bottom:1px solid #276ed8;
  font-weight: bold;
  padding-left: 30px;
  white-space: nowrap;
}

.place_section dl dd{
  width:calc(100% - 240px);
  border-bottom:1px solid #ddd;
  padding-left: 50px;
  padding-right: 40px;
}

.place_section dl dd .min{
  font-size: 14px;
}

.place_section dl dd .red{
  color:#f67b29;
}

.place_section dl dd a{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;

}

.place_section dl dd .tel{
  pointer-events: none;
  color:#222;
  border: none;
}

.place_section dl dd .fax a{
  pointer-events: none;
  color:#222;
}

.place_section .access_head{
  margin-top: 40px;
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.place_section .access_head::before{
  content:'';
  width: 4px;
  height: 24px;
  background-color: #276ed8;
  margin-right: 16px;
}

.place_section .num_list {
  margin-top: 20px;
  counter-reset: item;
}

.place_section .num_list li {
  line-height: 2.25;
  position: relative;
  padding-left: 32px;
}

.place_section .num_list li::before {
  counter-increment: item;
  content: counter(item);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  background-color: #276ed8;
  border-radius: 50%;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fefeff;
  position: absolute;
  left: 0;
  top: 5px;
}

.place_section .access_text{
  margin-top: 20px;
  line-height: 2.25;
} 

.place_section .common_appli_link{
  margin:96px auto 0;
}


/*
----------------------------------------------------
更新時期通知メールサービス
----------------------------------------------------
*/
body.mail_body{
  
}

main.mail_main{

}

.mail_section{

}

.mail_section .p01{
  margin-top: 24px;
  line-height: 2.25;
}

.mail_section .p01 span{
  color:#f67b29;
}

.mail_section .alert_head{
  margin-top: 48px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
}

.mail_section .alert_head::before{
  content:'';
  width: 4px;
  height:24px;
  background-color: #276ed8;
  margin-right: 18px;
}

.mail_section .alert_box{
  margin-top: 16px;
  padding:32px 40px;
  background-color: #fbf7d1;
}

.mail_section .alert_box ul li{
  line-height: 2.25;
  font-feature-settings: 'palt';
}

.mail_section .alert_box ul li span{
  color: #f67b29;
}

.mail_section .mail_link{
  margin:60px auto 0;
  width: 460px;
  height: 100px;
  border-radius: 50px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-feature-settings: 'palt';
}

.mail_section .mail_link::after{
  content:'';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  position: absolute;
  right:40px;
  top:0;
  bottom:0;
  margin:auto;
}

.mail_section .mail_link p{
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #2074d4;

}

.mail_section .mail_link p span{
  margin-bottom: 8px;
  font-size: 16px;
}



/*
----------------------------------------------------
個人情報保護方針
----------------------------------------------------
*/

body.rink_body{
  
}

main.rink_main{

}

.privacy_section{
  padding-bottom: 72px;
}

.privacy_section:last-child{
  padding-bottom: 0;
}


.privacy_section .privacy_text{
  line-height: 2.25;
  margin-top: 24px;
  font-feature-settings: 'palt';
}

.privacy_section .privacy_text.p01{
  margin-top: 0;
  margin-bottom: 24px;
}


.privacy_section .contact_link{
  color:#276ed8;
  border-bottom: 1px solid #276ed8;
}

.privacy_section a.tel{
  pointer-events: none;
}

.privacy_section .fax a{
  pointer-events: none;
}

.privacy_section .dot_list{
  margin-top: 28px;
}

.privacy_section .dot_list li{
  display: flex;
  align-items: flex-start;
  padding-left: 30px;
  line-height: 2.25;
  margin-top: 6px;
}

.privacy_section .dot_list li::before{
  content:'';
  width:12px;
  height:12px;
  background-color: #276ed8;
  border-radius: 50%;
  margin-right: 12px;
  margin-top: 12px;
  flex-shrink: 0;
}

.privacy_section .dot_list li:first-child{
  margin-top: 0;
}

.privacy_section .border_list li{
  margin-top:0;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ddd;
}

.privacy_section .border_list li:first-child{
  padding-top: 0;
}



/*
----------------------------------------------------
よくある質問
----------------------------------------------------
*/

body.faq_body{
  
}

main.faq_main{
  font-feature-settings: 'palt';
}

.faq_section{
  
}

.faq_section .faq_anchor_list{
  display: flex;
  flex-wrap: wrap;
  gap:12px;
  margin-bottom: 40px;
}

.faq_section .faq_anchor{
  height:30px;
  font-size: 14px;
  display: flex;
  align-items: center;
  padding:0 8px;
  color:#fff;
  background-color:#276ed8 ;
}

.faq_section .faq_anchor::after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 6px 6px 0 6px;
  border-color: #fff transparent transparent transparent;
  margin-left: 6px;
}

.faq_section .faq_area{
  margin-top: 48px;
}

.faq_section .faq_head{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 20px;
}

.faq_section .faq_head::before{
  content:'';
  width:3px;
  height:100%;
  background-color: #276ed8;
  position: absolute;
  left:0;
  top:0;
}


.faq_section .question_area{
  position: relative;
  padding-left:80px;
  padding-bottom: 20px;
  padding-right: 56px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.23;
  border-bottom:1px solid #276ed8;
  margin-top: 40px;
} 

.faq_section .question_area a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;
  font-weight: bold;
}

.faq_section .question_area::after{
  content:'Q';
  display: flex;
  justify-content: center;
  align-items: center;
  width: 41px;
  height: 41px;
  border-radius: 50%;
  background-color: #276ed8;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: absolute;
  top:-8px;
  left:20px;
  padding-bottom: 4px;
  
}


.faq_section .answer_area{
  margin-top: 20px;
  padding:24px 56px 24px 80px;
  background-color: #f7f8fa;
  border-radius: 10px;
  position: relative;
  line-height: 2.25;
}

.faq_section .answer_area::before{
  content:'A';
  display: flex;
  justify-content: center;
  align-items: center;
  width: 41px;
  height: 41px;
  border-radius: 50%;
  background-color: #707378;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: absolute;
  top:20px;
  left:20px;
  padding-bottom: 4px;
}

.faq_section .answer_area a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.faq_section .answer_area .red{
  color:#f67b29;
}

/*
----------------------------------------------------
FAQ詳細
----------------------------------------------------
*/

.faq_single_section .faq_list_link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 380px;
  max-width: 100%;
  height: 60px;
  margin: 80px auto 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #2074d4;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  padding-right: 20px;
  position: relative;
}

.faq_single_section .faq_list_link::after {
  content: '';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url(../img/common/radi_arrow_right_white01.png);
  position: absolute;
  top:0;
  bottom:0;
  right:36px;
  margin:auto;
}


/*
----------------------------------------------------
ご利用案内
----------------------------------------------------
*/

body.service_body{
  
}

main.service_main{

}

.service_section{
  
}

.service_section .service_link_button{
  padding:12px 12px 12px 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: fit-content;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  color: #2074d4;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  border-radius: 40px;
}

.service_section .service_link_button::after{
  content:'';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  margin-left: 6px;
}

.service_info_section{
  padding-bottom: 72px;
}

.service_info_section .p01{
  line-height: 2.25;
  margin-top: 32px; 
}


.service_flow_section{
  padding-bottom: 72px;
}

.service_flow_section .p01{
  line-height: 2.25;
  margin-top: 32px; 
}

.service_flow_section .flow_list{
  margin-top: 72px;
  display: flex;
  justify-content: space-between;
  align-items: center;

}

.service_flow_section .flow_list .dot{
  width:28px;
  border-top: dotted 4px #317aea;

}

.service_flow_section .flow_item{
  width: 186px;
  height: 186px;
  background-color: #f4f8fd;
  position: relative;
  padding-top: 42px;
  border-radius: 50%;
}

.service_flow_section .flow_item .flow_item_head{
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  width:100%;
  position: absolute;
  top:-40px;
  left:0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.service_flow_section .flow_item .head01{
  width: 47px;
  height: 17px;
  border-radius: 8px;
  background-image: linear-gradient(to top, #f68529, #f67b29);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  margin-bottom: 8px;
  font-size: 12px;
}

.service_flow_section .flow_item .head02{
  font-size: 32px;
  font-weight: bold;
  line-height: 0.6;
  color: #f67b29;
}

.service_flow_section .flow_item .icon{
  display: flex;
  justify-content: center;
  align-items: center;
  height:56px;
}

.service_flow_section .flow_item .flow_icon01{
  height:51px;
}
.service_flow_section .flow_item .flow_icon02{
  height:54px;
}
.service_flow_section .flow_item .flow_icon03{
  height:56px;
}
.service_flow_section .flow_item .flow_icon04{
  height:37px;
}

.service_flow_section .flow_item .flow_text_frame{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
  min-height:46px;
}

.service_flow_section .flow_item .flow_text_frame p{
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.25;
}

.service_flow_section .flow_item .flow_text_frame p span{
  font-size: 12px;
  font-weight: bold;
  line-height: 1.38;
  /* margin-top: 8px; */
}

.service_flow_section .flow_remark{
  margin-top: 24px;
  line-height: 2.25;
}

.service_flow_section .flow_remark a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.service_flow_section .flow_remark span{
  color: #f67b29;
}

.service_process_section{
  padding-bottom: 72px;
}

.service_process_section .p01{
  margin-top: 32px;
  line-height: 2.25;
}

.service_process_section .process_list{
  margin-top: 40px;
}

.service_process_section .process_block{
  margin-top: 40px;
  padding:30px 50px 40px 40px;
  border-radius: 20px;
  background-color: #f4f8fd;
}

.service_process_section .process_block01{
  margin-top: 0;
}

.service_process_section .process_head{
  display: flex;
  align-items: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #276ed8;
}

.service_process_section .process_head img{
  flex-shrink: 0;
  width:60px;
  border-radius: 50%;
  margin-right: 12px;
}

.service_process_section .process_text{
  margin-top: 12px;
  line-height: 2.25;
}

.service_process_section .process_text span{
  color: #f67b29;
}

.service_process_section .service_link_button{
  min-width: 360px;
  margin-top: 16px;
}

.service_mail_section{

}

.service_mail_section .p01{
  margin-top: 32px;
  line-height: 2.25;
}

.service_mail_section .service_link_button{
  min-width: 520px;
  margin-top: 32px;
}

/*
----------------------------------------------------
全国更新・失効講習日程表
----------------------------------------------------
*/

body.program_body{
  
}

main.program_main{

}

.program_section{
  
}

.program_section .program_text01{
  margin-top: 32px;
  line-height: 2.25;
  background-color: #fbf7d1;
  padding: 32px;
}

.program_section .program_text02{
  font-size: 14px;
  line-height: 1.71;
  margin-top:16px;
}

/*
----------------------------------------------------
日程表　各地方
----------------------------------------------------
*/

body.region_body{
  
}

main.region_main{

}

/*.region_section{
  padding-bottom: 72px;
}*/

.region_section:last-child{
  padding-bottom: 0;
}

.region_section .p01{
  line-height: 2.25;
}

.region_section .p02{
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.71;
}

.region_section .p02 a{
  color:#276ed8;
  border-bottom:1px solid #276ed8;
}

.region_section .alert_head{
  margin-top: 48px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 20px;
} 

.region_section .alert_head::before{
  content:'';
  width: 4px;
  height: 100%;
  background-color: #276ed8;
  position: absolute;
  left:0;
  top:0;
}

.region_section .alert_box{
  margin-top: 16px;
  padding:32px;
  background-color: #fbf7d1;
  line-height: 2.25;
  margin-bottom: 50px;
}

.region_section .alert_box .red{
  color: #f67b29;

}

.region_section .alert_box .min{
  font-size: 14px;
  letter-spacing: 0.7px;
}

.region_section .pre_list{
  display: flex;
  flex-wrap: wrap;
  gap:20px;
  margin-top: 20px;
}

.region_section .pre_link{
  width: 120px;
  height: 40px;
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);
  background-image: linear-gradient(to left, #0080ca, #286dd8);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;
}

.region_section .pre_link::after{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_white.png');
  position: absolute;
  right:10px;
  top:0;
  bottom:0;
  margin:auto;
}


.region_section .program_link_button{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 380px;
  height:60px;
  margin:80px auto 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #2074d4;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  padding-left: 20px;
}

.region_section .program_link_button::after{
  content:'';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  margin-left: 12px;
}

.region_section .map_info_text{
  margin-top: 24px;
  line-height: 2.25;
}


/*
----------------------------------------------------
日程表　各都道府県
----------------------------------------------------
*/

body.prefecture_body{
  
}

main.prefecture_main{

}

.prefecture_section{
  padding-bottom: 72px;
}

.prefecture_section .common_appli_link{
  margin:60px auto 0;
}

.prefecture_section .region_link{
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-top: 28px;
  min-height: 60px;
  padding: 4px 20px;
  border-radius: 70px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  margin:60px auto 0;
  color:#276ed8;
}

.prefecture_section .region_link::after{
  content: '';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  flex-shrink: 0;
  margin-left: 12px;
  /* position: absolute;
  right: 16px;
  top: 0;
  bottom: 0;
  margin: auto; */
}

.prefecture_section:last-child{
  padding-bottom: 0;
}

.prefecture_section .p01{
  line-height: 2.25;
}

.prefecture_section .p02{
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.71;
  
}

.prefecture_section .p02 a{
  /* color:#276ed8;
  border-bottom:1px solid #276ed8; */
  color: #276ed8;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.prefecture_section .alert_head{
  margin-top: 48px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 20px;
} 

.prefecture_section .alert_head::before{
  content:'';
  width: 4px;
  height: 100%;
  background-color: #276ed8;
  position: absolute;
  left:0;
  top:0;
}

.prefecture_section .alert_box{
  margin-top: 16px;
  padding:32px;
  background-color: #fbf7d1;
  line-height: 2.25;
}

.prefecture_section .alert_box .red{
  color: #f67b29;

}

.prefecture_section .alert_box .min{
  font-size: 14px;
  letter-spacing: 0.7px;
}


.prefecture_program_section{

} 

.prefecture_program_section .pre_list{
  display: flex;
  flex-wrap: wrap;
  gap:20px;
  margin-top: 20px;
}

.prefecture_program_section .pre_link{
  width: 120px;
  height: 40px;
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0 rgba(0, 44, 69, 0.15);
  background-image: linear-gradient(to left, #0080ca, #286dd8);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #fff;
}

.prefecture_program_section .pre_link::after{
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_white.png');
  position: absolute;
  right:10px;
  top:0;
  bottom:0;
  margin:auto;
}


.prefecture_program_section .program_table_frame{
  margin-top: 40px;
}

.prefecture_program_section .program_table{
  border:1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  overflow: hidden;
  font-feature-settings: 'palt';
}

.prefecture_program_section .program_table thead{
  background-color: #4c88e3;
}

.prefecture_program_section .program_table thead th{
  height:60px;
  color:#fff;
  font-weight: bold;
  line-height: 1.3;
  border-right: 1px solid #ccdaec;
}

.prefecture_program_section .program_table thead th span{
  font-size: 14px;
}

.prefecture_program_section .program_table thead th:last-child{
  border-right: none;
}

.prefecture_program_section .program_table th,
.prefecture_program_section .program_table td{
  min-width: 100px;
}

.prefecture_program_section .program_table td{
  padding:10px 6px;
  line-height: 1.63;
  min-height: 60px;
  border-right: 1px solid #ccdaec;
  border-bottom: 1px solid #ccdaec;
  text-align: center;
}

.prefecture_program_section .program_table td:last-child{
  border-right: none;
}

.prefecture_program_section .program_table td br{
  display: none;
}

.prefecture_program_section .program_table tbody tr:nth-child(odd){
  background-color: #f4f8fd;
}

.prefecture_section .map_info_text{
  margin-top: 24px;
  line-height: 2.25;
}


/*
----------------------------------------------------
フォーム共通
----------------------------------------------------
*/

.common_form_area{

}

.common_form_box{
  padding:24px 60px 60px;
  border-radius: 20px;
  background-color: #f4f8fd;
}

.common_form_box .form_line{
  display: flex;
  align-items: flex-start;
  padding:24px 0;
  border-bottom:1px solid #ddd;
}

.common_form_box .form_left{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width:240px;
  margin-right: 40px;
  flex-shrink: 0;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 8px;
  padding-top: 4px;
}

.common_form_box .form_left::after{
  content:'';
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 32px;
  margin-top: -4px;
  flex-shrink: 0;
  margin-left: 8px;
}

.common_form_box .form_left span{
  font-weight: 500;
}

.common_form_box .form_left.must_label::after{
  content:'必須';
  background-color: #f67b29;
  font-weight: 500;
  line-height: 1;
  color: #fff;

}

.common_form_box .form_right{
  width:100%;
}

.common_form_box .alert_text{
  font-size: 14px;
  line-height: 1.71;
  color: #f67b29;
}

.common_form_box input[type='text'],
.common_form_box input[type='email'],
.common_form_box input[type='number']{
  display: block;
  width: 100%;
  height: 50px;
  border: solid 1px #276ed8;
  background-color: #fff;
  padding:0 12px;
  text-align: left;
  margin:0!important;
  border-radius: 0;
  box-shadow: none;
  max-width: 100%;
  color:#222222;
  font-size: 18px;
}

.common_form_box textarea{
  display: block;
  width: 100%!important;
  height: 200px!important;
  border: solid 1px #276ed8;
  background-color: #fff;
  padding:12px;
  text-align: left;
  margin:0!important;
  border-radius: 0;
  box-shadow: none;
  max-width: 100%;
}

.common_form_box input[type='number']::-webkit-outer-spin-button, 
.common_form_box input[type='number']::-webkit-inner-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
} 
.common_form_box input[type='number']{
  -webkit-appearance: none; 
  margin: 0; 
}

.common_form_box .select_frame{
  position: relative;
}

.common_form_box .select_frame::after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 8px 6px 0 6px;
  border-color: #276ed8 transparent transparent transparent;
  position: absolute;
  /* right:15px; */
  right:8px;
  top:0;
  bottom:0;
  margin:auto;
  pointer-events: none;
}

.common_form_box select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 50px;
  border: solid 1px #276ed8;
  background-color: #fff;
  padding:0 12px;
  cursor: pointer;
  margin:0!important;
  border-radius: 0;
  box-shadow: none;
  max-width: 100%;
  color:#222222;
  text-align: left;
}

.common_form_box .input_frame{
  position: relative;
}


.common_form_box .input_frame + .input_frame{
  margin-top: 20px;
}

.common_form_box .input_frame_400{
  max-width: 400px;
}
.common_form_box .input_frame_420{
  max-width: 420px;
}
.common_form_box .input_frame_490{
  max-width: 490px;
}

.common_form_box .radio_list{
  display: flex;
  flex-wrap: wrap;
  gap:10px 24px;
  padding-top: 10px;
  position: relative;
}

.common_form_box .radio_list.verti{
  flex-direction: column;
}

.common_form_box .radio_list label{
  display: flex!important;
  align-items: flex-start;
  cursor: pointer;
  line-height:1.6;
  margin:0!important;
  padding:0!important;

}

.common_form_box .process_line .radio_list{
  gap:30px 24px;
}

.common_form_box .radio_list label b,
.common_form_box .radio_list label strong{
  white-space: nowrap;
  background: linear-gradient(to top, #fff99a -10%, #fff99a 40%, transparent 40%, transparent 100%);
}

.common_form_box .radio_list label input{
  width: 22px;
  height: 22px;
  margin-right: 10px;
  flex-shrink: 0;
  margin-top: 2px;
}

.common_form_box .date_area{
  width: fit-content;;
}

.common_form_box .date_flex{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.common_form_box .date_flex.lecture_date_flex{
  flex-wrap: nowrap;
}

.common_form_box .date_flex + .date_flex{
  margin-top: 10px;
}

.common_form_box .date_flex .date_box{
  display: flex;
  align-items: center;
  margin-left: 16px;
}

.common_form_box .date_flex .date_box:first-child{
  margin-left: 0;
}

.common_form_box .date_flex .date_box .unit{
  margin-left: 4px;
}

.common_form_box .date_flex .date_box_era{
  width:80px;
  position: relative;
}

.common_form_box .date_flex .date_box_west_year{
  width:100px;
}

.common_form_box .date_flex .date_box_year{
  width:50px;
  position: relative;
}

.common_form_box .date_flex .date_box_month{
  /* width:70px; */
  width:60px;
  position: relative;
}

.common_form_box .date_flex .date_box_day{
  /* width:70px; */
  width:60px;
  position: relative;
}


.common_form_box .tel_flex{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 490px;
}

.common_form_box .tel_flex .tel_box{
  width:130px;
}

.common_form_box .tel_flex .border{
  width: 14px;
  height: 2px;
  /* margin: 0 12px; */
  background-color: #222;
}

.common_form_box  div.mfp_err{
  background: none;
  animation:alert_flash 0.8s ease-in-out infinite alternate;
}

@keyframes alert_flash {
  0% {opacity:0;}
  100% {opacity:1;}
}

.common_form_box  div.mfp_err::before{
  display: inline-block;
  vertical-align: top;
  content:'';
  width: 16px;
  height:16px;
  background-image: url('../img/common/icon_alert_red.png');
  margin-right: 5px;
}

.common_form_box .agree_area{
  margin-top: 40px;
}

.common_form_box .agree_area a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.common_form_box .agree_area .agree_text01{
  line-height: 2.25;
  text-align: center;
}

.common_form_box .agree_area .agree_text02{
  font-size: 14px;
  line-height: 1.71;
  text-align: center;
}

.common_form_box .agree_area .agree_box{
  width: fit-content;
  margin:24px auto 0;
  display: flex;
  align-items: center;
}

.common_form_box .agree_area .agree_box::before{
  content:'必須';
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 32px;
  background-color: #f67b29;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  margin-right: 8px;
}

.common_form_box label{
  cursor: pointer;
  border:none!important;
  white-space: normal!important;
}

form#mailformpro .common_form_box  label.mfp_checked {
  padding:0;
  border:none;
  background:none;
  box-shadow: none;
}

.common_form_box .agree_area label{
  cursor: pointer;
  display: flex!important;
  align-items: center;
  border:none!important;
}

.common_form_box .agree_area label input{
  margin-right: 8px;
  width:24px;
  height:24px;
}

.common_form_box .agree_area div.mfp_err{
  text-align: center;
}


.common_form_area .submit_frame{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
}

.common_form_area .submit_frame .submit_button{
  display: flex;
  justify-content: center;
  align-items: center;
  border:none;
  background: none;
  width: 420px;
  height: 80px;
  border-radius: 40px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color: #2074d4;
  position: relative;
  cursor: pointer;
}

.common_form_area .submit_frame .submit_button::after{
  content:'';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  position: absolute;
  right:30px;
  top:0;
  bottom:0;
  margin:auto;
}

/*
----------------------------------------------------
更新時期通知メールサービス(フォーム)
----------------------------------------------------
*/

body.mailform_body{
  
}

main.mailform_main{

}

.mailform_section{

}

.mailform_section .p01{
  line-height: 2.25;
  margin-top: 32px;
  padding-bottom: 40px;
}

/*
----------------------------------------------------
お問い合わせフォーム
----------------------------------------------------
*/

body.contact_body{
  
}

main.contact_main{

}

.contact_section{
  padding-bottom: 72px;
}

.contact_section:last-child{
  padding-bottom: 0;
}

.contact_section01{

}

.contact_section01 .p01{
  line-height: 2.25;
}

.contact_section01 .p01 span{
  color: #f67b29;
}

.contact_section01 .p02{
  margin-top: 16px;
  line-height: 2.25;
}

.contact_section01 .p02 strong{
  font-weight: 900;
}

.contact_section01 .p02 a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;

}

.contact_section01 .p02 a::after{
  display: inline-block;
  content:'';
  width: 7px;
  height: 12px;
  margin-left: 8px;
  background-image: url('../img/common/angle_right_blue.png');
}

.contact_section01 .faq_box{
  margin-top: 48px;
  border-radius: 5px;
  overflow: hidden;
}

.contact_section01 .faq_head{
  padding:20px 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #fefefe;
  background-color: #276ed8;
}

.contact_section01 .faq_body{
  padding:40px 60px;
  background-color: #f4f8fd;

}

.contact_section01 .faq_body li{
  line-height: 2.25;
}

.contact_section01 .faq_body li a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;

}

.contact_section01 .faq_body li a::before{
  display: inline-block;
  content:'';
  width: 7px;
  height: 12px;
  margin-right: 6 px;
  background-image: url('../img/common/angle_right_blue.png');
}


.contact_section02{

}

.contact_section02 .contact_flex{
  margin-top: 48px;
  display: flex;
  align-items: flex-start;
}

.contact_section02 .contact_left{
  width:120px;
  flex-shrink: 0;
  margin-top: 5px;
}

.contact_section02 .contact_left .contact_title{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding-left: 20px;
  border-left:4px solid #276ed8;
}

.contact_section02 .contact_right{
  width:100%;
}

.contact_section02 .contact_right .tel_text{
  font-family: "Roboto", sans-serif;
  font-size: 38px;
  font-weight: bold;
  line-height: 1;
  color: #276ed8;
  display: flex;
  align-items: center;
  width: fit-content;
  pointer-events: none;
}

.contact_section02 .contact_right .tel_text::before{
  content:'';
  width: 24px;
  height: 31px;
  background-image: url('../img/common/icon_tel_blue.png');
  margin-right: 6px;
}

.contact_section02 .contact_right .contact_time{
  font-weight: bold;
  line-height: 1.4;
  margin-top: 10px;
}

.contact_section02 .contact_right .contact_time span{
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  border-radius: 24px;
  background-color: #707070;
  padding:2px 10px;
  margin-right: 8px;
}

.contact_section02 .contact_right .contact_remark{
  font-size: 14px;
  line-height: 1.71;
  margin-top: 4px;
}

.contact_section02 .contact_right .color_box{
  padding:24px 40px;
  background-color: #fbf7d1;
  margin-top: 24px;
}

.contact_section02 .contact_right .color_box_text{
  font-size: 14px;
  line-height: 1.71;
  color: #f67b29;
}

.contact_section02 .contact_right .color_box_text+.color_box_text{
  margin-top: 20px;
}

.contact_section02 .contact_right .fax_text{
  font-family: "Roboto", sans-serif;
  font-size: 38px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  width: fit-content;
}

.contact_section02 .contact_right .fax_text a{
  pointer-events: none;
}

.contact_section02 .contact_right .fax_text::before{
  content:'';
  width: 30px;
  height: 31px;
  background-image: url('../img/common/icon_fax_black.png');
  margin-right: 10px;
}

.contact_section02 .contact_right .fax_link{
  margin-top: 12px;
}

.contact_section02 .contact_right .fax_link a{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
  display: flex;
  align-items: center;
  width: fit-content;
}

.contact_section02 .contact_right .fax_link a::before{
  content:'';
  width: 14px;
  height: 17px;
  background-image: url('../img/common/icon_pdf_blue.png');
  margin-right: 7px;
}

.contact_section03{

}

.contact_section03 .common_sec_title{
  line-height: 1;
}

.contact_section03 .common_sec_title span{
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: #f67b29;

}

.contact_section03 .p01{
  margin-top: 32px;
  margin-bottom: 40px;
  line-height: 2.25;
}

/*
----------------------------------------------------
オンライン予約・お申込みフォーム
----------------------------------------------------
*/

body.application_body{
  
}

main.application_main{

}

.application_section{

}


.application_section .appli_add_area{
  padding:48px 0 0;
}

.application_section .appli_add_area.pt0{
  padding-top: 0;
}
.application_section .appli_add_area.pb0{
  padding-bottom: 0;
}

.application_section .appli_add_area .appli_head{
  padding-top: 16px;
  font-size: 24px;
  font-weight: bold;
  line-height:1.6;
  letter-spacing: 0,1em;
  display: flex;
  align-items: flex-start;
}

.application_section .appli_add_area .text_yellow_bg{
  background-color: #fbf7d1;
  padding: 32px;
  margin-top: 24px;
}

.application_section .appli_add_area .appli_head span{
  font-size: 34px;
  font-weight: bold;
  line-height: 1;
  color: #276ed8;
  margin-right: 24px;
  margin-top: 0px;
}

.application_section .appli_add_area .appli_text01{
  line-height: 2.25;
}

.application_section .appli_add_area .appli_text01 span{
  font-weight: bold;
  color: #f67b29;
}

.application_section .appli_add_area .appli_text01 a{
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.application_section .appli_add_area .appli_text01 a::after{
  display: inline-block;
  content:'';
  width: 14px;
  height: 14px;
  background-image: url('../img/common/icon_link_blue.png');
  margin-left: 8px;
}

.application_section .appli_add_area .appli_head + .appli_text01{
  margin-top: 20px;
}

.application_section .appli_add_area .appli_text02{
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.4;
}

.application_section .common_form_box .form_alert_text{
  margin-top: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
  color: #f67b29;
}

.application_section .common_form_box .form_example_text{
  margin-top: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
}

.application_section .common_form_box .license_num_block{
  display: flex;
  align-items: center;
}

.application_section .common_form_box .license_num_block .input_frame{
  width:300px;
  margin:0 16px;
}

.application_section .common_form_box .prefecture_frame{
  max-width: 140px;
}

.application_section .common_form_box .name_flex{
  display: flex;
  align-items: center;
}

.application_section .common_form_box .name_flex .name_box{
  display: flex;
  justify-content: center;
  align-items: center;
}

.application_section .common_form_box .name_flex .name_box + .name_box{
  margin-left: 30px;
}

.application_section .common_form_box .name_flex .name_box .input_frame{
  width:140px;
  margin-left: 16px;
}


.application_section .common_form_box .adress_line{
  display: flex;
  align-items: center;
}

.application_section .common_form_box .adress_line .unit01{
  line-height: 1;
  margin-right: 16px;
}

.application_section .common_form_box .adress_line .unit02{
  width: 14px;
  height: 2px;
  background-color: #222;
  margin:0 8px;
}

.application_section .common_form_box .adress_line .input_frame{
  width: 140px;
}

.application_section .common_form_box .adress_left{
  display: flex;
  align-items: center;
}

.application_section .common_form_box .adress_line .adress_search{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 32px;
  background-color: #276ed8;
  cursor: pointer;
  line-height: 1;
  color: #fff;
  margin-left: 20px;
}

.application_section .common_form_box .select_frame_prefecture{
  width: 240px;
}

.application_section .common_form_box .input_frame.mt{
  margin-top: 10px;
}

.application_section .common_form_box .agree_area .agree_text01{
  text-align: left;
  font-feature-settings: 'palt';
}

.application_section .common_form_box .agree_area .agree_text02{
  text-align: left;
  font-feature-settings: 'palt';
  white-space: nowrap;
  margin-top: 8px;
}


/*
----------------------------------------------------
オンライン予約・お申込みフォーム 完了画面
----------------------------------------------------
*/
.application_thanks_section{

}


.application_thanks_section .p01{
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #276ed8;
}

.application_thanks_section .p02{
  margin-top: 40px;
  line-height: 2.25;
}

.application_thanks_section .p02 span{
  color: #f67b29;
  font-weight: bold;
}

.application_thanks_section .p02 + .p02{
  margin-top: 24px;
}

.application_thanks_section .p03{
  margin-top: 40px;
}

.application_thanks_section .p03 a{
  padding: 12px 40px;
  
  display: flex;
  justify-content: center;
  align-items: center;
  width: 280px;
  max-width: 100%;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  color: #2074d4;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  border-radius: 40px;
  margin:0 auto;
  position: relative;
}

.application_thanks_section .p03 a::after{
  content: '';
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-image: url(../img/common/radi_arrow_right_white01.png);
  position: absolute;
  right:10px;
  top:0;
  bottom:0;
  margin:auto;
}

.application_thanks_section .bottom_area{
  margin-top: 64px;
  font-size: 14px;
  line-height: 1.71;
  /* padding:16px 0;
  
  border-bottom:1px dotted #222222; */
}

.application_thanks_section .bottom_area .dot_border{
  border-top:1px dotted #222222;
  margin:12px 0;
}

.application_thanks_section .bottom_area a{
  color:#222222;
}
/*
----------------------------------------------------
料金・費用一覧
----------------------------------------------------
*/

body.fee_body{
  
}

main.fee_main{
  font-feature-settings: 'palt';
}

.fee_section{

}

.fee_section .fee_link_line{
  margin-top: 4px;
}

.fee_section .fee_angle_link{
  line-height: 2;
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.fee_section .fee_angle_link::after{
  content:'';
  display: inline-block;
  width: 7px;
  height: 12px;
  margin-left: 6px;
  background-image: url('../img/common/angle_right_blue.png');
}
.fee_section .banner{
  display: block;
  width: 100%;
  box-shadow: 0px 5px 15px 0 rgba(24, 25, 25, 0.2);
  border-radius: 20px;
  margin-bottom: 60px;
}

.fee_section .banner img{
  width: 100%;
}

.fee_section .p01{
  line-height: 2.25;
  margin-top: 24px;
}

.fee_section .p01 .red{
  color:#f67b29;
}

.fee_section .p02{
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.71;

}
.fee_section .yellow_marker{
  background: linear-gradient(to top, #fff99a -10%, #fff99a 40%, transparent 40%, transparent 100%);
}

.fee_section .fee_head{
  position: relative;
  padding-left: 20px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.fee_section .fee_head::before {
  content: '';
  width: 4px;
  height: 100%;
  background-color: #276ed8;
  position: absolute;
  left: 0;
  top: 0;
}

.fee_section .fee_box{
  margin-top: 32px;
  padding:20px 16px 32px 24px;
  border-radius: 5px;
  background-color: #f4f8fd;
  border: solid 1px #4c88e3;

}

.fee_section .fee_box ul li{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding:12px 24px 12px 16px;
  border-bottom: 1px solid #ccdaec;
}

.fee_section .fee_box .fee_left{
  font-weight: bold;
  line-height: 1.57;
}

.fee_section .fee_box .fee_left.blue{
  color: #276ed8;
}

.fee_section .fee_box .fee_left .min{
  font-size: 14px;
  font-weight: 500;
}

.fee_section .fee_box .fee_left.blue .min{
  font-size: 14px;
  font-weight: bold;
}

.fee_section .fee_box .fee_right{
  line-height: 1.57;
  text-align: right;
}

.fee_section .fee_box .fee_right .price{
  color: #276ed8;
  line-height: 1.1;
}

.fee_section .fee_box .fee_right .price .num{
  font-family: 'Roboto', sans-serif;
  font-size: 26px;
  font-weight:bold;
}


.fee_section .fee_box .fee_right strong{
  font-size: 14px;
}

.fee_section .fee_remark{
  margin-top: 16px;
  font-size: 12px;
  line-height: 1.5;
  color: #f67b29;

}

.fee_section .fee_flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 48px;
  background-color: #f4f8fd;
  border: solid 1px #4c88e3;
  padding:40px 48px 36px;
}


.fee_section .fee_flex .fee_frame{
  width:47.5%;
}

.fee_section .fee_flex .fee_box{
  border: none;
  margin-top: 12px;
  padding: 0;
}

  

.fee_section .color_box{
  margin-top: 40px;
  padding: 24px 40px;
  background-color: #fbf7d1;
}

.fee_section .color_box p{
  font-size: 14px;
  line-height: 1.71;
}

/*
----------------------------------------------------
免許下層ページ共通
----------------------------------------------------
*/


.licence_section{
  padding-bottom: 72px;
}

.licence_section:last-child{
  padding-bottom: 0;
}


.licence_section .p01{
  margin-top: 32px;
  font-weight: 500;
  line-height: 2.25;
  letter-spacing: 0.08em;
}

.licence_section .p02{
  margin-top: 24px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
}

.licence_section .yellow_marker{
  background: linear-gradient(to top, #fff99a -10%, #fff99a 40%, transparent 40%, transparent 100%);
}

.licence_section span.red{
  color: #f67b29;
}

.licence_section a.arrow_link{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}
.licence_section a.arrow_link::after{
  display: inline-block;
  content:'';
  width: 7px;
  height: 12px;
  background-image: url('../img/common/angle_right_blue.png');
  margin-left: 8px;
}

.licence_index_section{

}

.licence_index_section .licence_main_img img{
  width:100%;
}




.licence_index_section .index_box{
  margin-top: 48px;
  border-radius: 5px;
  overflow: hidden;
}

.licence_index_section .index_box .index_head{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 24px;
  background-color: #276ed8;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.1;
  letter-spacing: 0.1em;
  color: #fefefe;

}

.licence_index_section .index_box .index_body{
  padding:40px 60px;
  background-color: #f4f8fd;
}

.licence_index_section .index_box ol{
  counter-reset: index;
}

.licence_index_section .index_box ol li{
  margin-top: 2px;
  padding-left: 30px;
  position: relative;
}


.licence_index_section .index_box ol li::before{
  counter-increment: index;
  content: counter(index)'.';
  font-weight: 500;
  line-height: 2.25;
  color: #276ed8;
  position: absolute;
  left: 0;
  top: 0;
}

.licence_index_section .index_box ol li:first-child{
  margin-top: 0;
}

.licence_index_section .index_box ol a{
  font-weight: 500;
  line-height: 2.25;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.licence_index_section .index_box ol a::after{
  content:'';
  display: inline-block;
  width: 12px;
  height: 7px;
  background-image:url('../img/common/angle_bottom_blue.png');
  margin-left: 6px;
  margin-bottom: 2px;
}

.licence_process_section{

}

.licence_process_section p a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}

.licence_process_section .color_box{
  margin-top: 36px;
  background-color: #fbf7d1;
  padding:24px 40px;
}

.licence_process_section .color_box p{
  font-weight: 500;
  line-height: 2.25;
}

.licence_process_section .color_box p+p{
  margin-top: 16px;
}

.licence_process_section .color_box p a{
  font-weight: 500;
  line-height: 2.25;
  color: #276ed8;
  border-bottom:1px solid #276ed8;
}

.licence_process_section .color_box p a::after{
  content:'';
  display: inline-block;
  width: 7px;
  height: 12px;
  background-image:url('../img/common/angle_right_blue.png');
  margin-left: 6px;

}

.licence_flow_section{

}

.licence_flow_section .flow_list{
  
}

.licence_flow_section .flow_block{
  margin-top: 32px;
  border-radius: 5px;
  background-color: #f4f8fd;
  padding:40px 72px 32px 132px;
  position: relative;
  overflow: hidden;
}

.licence_flow_section .flow_block .flow_step{
  position: absolute;
  left:0;
  top:0;
  width: 120px;
  height: 60px;
  background: linear-gradient(to top, #0080ca, #286dd8);
  border-radius: 5px 0 5px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height:1;
  color: #fff;
}

.licence_flow_section .flow_block .flow_step span{
  font-size: 38px;
  line-height: 1.42;
  margin-left: 6px;
  margin-bottom: 6px;
}

.licence_flow_section .flow_block .flow_title{
  font-size: 28px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-align: left;
  color: #276ed8;
}

.licence_flow_section .flow_block .flow_title span{
  font-size: 24px;
}

.licence_flow_section .flow_block .flow_text01{
  margin-top: 8px;
  line-height: 2.25;
}

.licence_flow_section .flow_block .flow_text02{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
  margin-top: 6px;
}

.licence_flow_section .flow_block .entry_list li{
  margin-top: 18px;
}

.licence_flow_section .flow_block .entry_head{
  display: flex;
  align-items: flex-start;
} 

.licence_flow_section .flow_block .entry_head .num{
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: #276ed8;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Roboto', sans-serif;
  font-size: 20px;
  font-weight: bold;
  line-height:1;
  color: #fff;
  flex-shrink: 0;
  margin-right: 16px;
}

.licence_flow_section .flow_block .entry_head_text{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 8px;
}

.licence_flow_section .flow_block .entry_head_text::before{
  content:'';
  display: inline-block;
}

.licence_flow_section .flow_block .entry_head_text span{
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  margin-left: 12px;
}

.licence_flow_section .flow_block .entry_head_text.net::before{
  width: 26px;
  height: 22px;
  background-image: url('../img/common/icon_net_blue.png');
  margin-right: 8px;
  translate: 0 4px;
}
.licence_flow_section .flow_block .entry_head_text.fax::before{
  width: 24px;
  height: 25px;
  background-image: url('../img/common/icon_fax_blue.png');
  margin-right: 10px;
  translate: 0 6px;
}
.licence_flow_section .flow_block .entry_head_text.tel::before{
  width: 18px;
  height: 23px;
  background-image: url('../img/common/icon_tel_blue.png');
  margin-right: 4px;
  margin-left: 6px;
  translate: 0 6px;
}

.licence_flow_section .flow_block a{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
}



.licence_flow_section .flow_block .pdf_icon_text::before{
  display: inline-block;
  content:'';
  width: 14px;
  height: 17px;
  background-image: url('../img/common/icon_pdf_blue.png');
  margin-right: 3px;
  margin-left: 3px;
}

.licence_flow_section .flow_block a.tel{
  pointer-events: none;
  border-bottom: none;
  color:#222;
}

.licence_flow_section .flow_block .white_box{
  margin-top: 30px;
  background-color: #fff;
  padding:24px 30px 20px;
}

.licence_flow_section .flow_block .white_box .white_box_head{
  line-height: 2.25;
}

.licence_flow_section .flow_block .white_box ul{
  
  padding-left: 22px;
  
}

.licence_flow_section .flow_block .white_box ul li{
  line-height: 1.5;
  list-style: outside;
  margin-top: 12px;
}

.licence_flow_section .flow_block .white_box ul li span{
  font-size: 14px;
  line-height: 1.71;
}

.licence_flow_section .flow_block .licence_img{
  width: 100%;
  max-width: 228px;
  margin:0 auto 24px;
}

.licence_flow_section .flow_block .link_button{
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-top: 28px;
  height: 60px;
  padding: 0 56px 0 28px;
  border-radius: 30px;
  box-shadow: 0px 5px 15px 0 rgba(1, 34, 53, 0.2);
  border: solid 3px #276ed8;
  background-color: #fff;
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}

.licence_flow_section .flow_block .link_button::after{
  content:'';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url('../img/common/radi_arrow_right_white01.png');
  position: absolute;
  right:16px;
  top:0;
  bottom:0;
  margin:auto;
}

.licence_flow_section .flow_arrow{
  margin: 0 auto;
  width: 96px;
  height: 28px;
  background-image: linear-gradient(to top, #0080ca, #286dd8);
  clip-path: polygon(50% 28px, 0% 0%, 96px 0%);
}



.licence_document_section{

}

.licence_document_section .table_frame {
  margin-top: 50px;
  border-radius: 5px;
  overflow: hidden;
}

.licence_document_section table {
  position: relative;
  border: 1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-radius: 5px;
}

.licence_document_section thead {
  background-color: #4c88e3;
}

.licence_document_section thead th:first-child {
  border-right: 1px solid #ccdaec;
  width: 77.6%;
}

.licence_document_section thead th:last-child{
  width:22.4%;
}

.licence_document_section thead th {
  height: 60px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  border: none;
}

.licence_document_section tbody td {
  padding: 24px 32px;
  font-feature-settings: 'palt';
  border-bottom: 1px solid #ccdaec;
  
}

.licence_document_section tbody td:first-child {
  width: 280px;
  border-right: 1px solid #ccdaec;
  width: 77.6%;
}

.licence_document_section tbody td:last-child{
  width:22.4%;
  height: 200px;
}

.licence_document_section tbody .amount{
  font-weight: bold;
  line-height: 1.38;
  text-align: center;
}

.licence_document_section tbody .amount span{
  font-size: 26px;
  font-family: 'Roboto', sans-serif;
}

.licence_document_section .flex{
  display: flex;
  align-items: center;
}

.licence_document_section .num{
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  margin-right: 20px;
  font-family: 'Roboto', sans-serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  background-color: #276ed8;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.licence_document_section .img_frame{
  width:140px;
  flex-shrink: 0;
  margin-right: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.licence_document_section img.licence_document_pic{
  width:93%;
}
.licence_document_section img.licence_document_licence{
  width:100%;
}
.licence_document_section img.licence_proxy{
  width:78.5%;
}
.licence_document_section img.licence_document_resident{
  width:100%;
}
.licence_document_section img.licence_document_passport{
  width:100%;
}
.licence_document_section img.licence_document_return{
  width:78.5%;
}

.licence_document_section .text_area{
  width:100%;
}

.licence_document_section .document_title{
  font-weight: bold;
  line-height: 1.63;
}

.licence_document_section .document_text{
  margin-top: 16px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
}

.licence_document_section .pdf_link{
  color: #276ed8;
  border-bottom: 1px solid #276ed8;
  margin-left: 4px;
}

.licence_document_section .pdf_link::before{
  display: inline-block;
  content:'';
  width: 14px;
  height: 17px;
  background-image: url('../img/common/icon_pdf_blue.png');
  margin-right: 3px;
  translate: 0 2px;
}

.licence_document_section td ul{
  margin-top: 16px;
  padding-left: 22px;
  
}

.licence_document_section td ul li{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
  list-style: outside;
}

.licence_document_section .send_box{
  margin-top: 48px;
  display: flex;
  border-radius: 5px;
  overflow: hidden;
  background-color: #f4f8fd;
}

.licence_document_section .send_box .send_left{
  background-image: linear-gradient(to left, #0080ca, #286dd8);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  font-weight: bold;
  line-height: 1.63;
  flex-shrink: 0;
  color: #fff;
}

.licence_document_section .send_box .send_right {
  width: 100%;
  padding: 24px 40px;
}

.licence_document_section .send_box .send_text01 {
  font-weight: bold;
  line-height: 1.5;
}

.licence_document_section .send_box .send_text02 {
  margin-top: 6px;
  font-weight: bold;
  line-height: 2.25;
}

.licence_document_section .send_box .send_text03 {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.71;
}

.licence_fee_section{

} 

.licence_fee_section .fee_frame{
  max-width: 420px;
  margin:36px auto 0;
}

.licence_period_section{
  
}


.licence_period_section .period_img{
  width: 100%;
  margin-top: 40px;
}

.licence_table_section{

}

.licence_table_section .left_bordre_title{
  position: relative;
  margin-top: 48px;
  padding-left: 20px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.licence_table_section .left_bordre_title::before {
  content: '';
  width: 4px;
  height: 100%;
  background-color: #276ed8;
  position: absolute;
  left: 0;
  top: 0;
}

.licence_table_section .left_bordre_title+.p01{
  margin-top: 16px;
}

.licence_table_section .table_frame{
  margin-top: 40px;
}

.licence_table_section table {
  position: relative;
  border: 1px solid #4c88e3;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-radius: 5px;
}

.licence_table_section thead {
  background-color: #4c88e3;
}

.licence_table_section thead th{
  border-right: 1px solid #ccdaec;
}

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

.licence_table_section thead th {
  height: 60px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  border: none;
}

.licence_table_section tbody td {
  padding: 20px 32px;
  border-bottom: 1px solid #ccdaec;
  border-right: 1px solid #ccdaec;
}

.licence_table_section tbody td:last-child {
  border-right:none;
}

.licence_table_section tbody td:first-child{
  font-weight: bold;
  line-height: 1.63;
  text-align: center;
}

.licence_table_section tbody td:first-child span{
  font-size: 14px;
  font-weight: 500;
}

.licence_table_section tbody td .p01{
  margin-top: 0;
}

.licence_table_section tbody td * +  .p01{
  margin-top: 12px;
}

.licence_table_section tbody td * +  .p02{
  margin-top: 10px;
}

.licence_table_section tbody td ul {
  
  padding-left: 22px;
}

.licence_table_section tbody td * +  ul{
  margin-top: 10x;
}

.licence_table_section tbody td ul li {
  font-weight: 500;
  line-height: 1.63;
  margin-top: 8px;
  list-style: outside;
}

.licence_table_section tbody td ul li:first-child{
  margin-top: 0;
}

.licence_table_section tbody td.blue_bg{
  background-color: #f4f8fd;
}

.licence_table_section tbody td.yellow_bg{
  background-color: #fffff2;
}


.licence_table_section .column2_table tbody td:first-child{
  width:33%;
}

.licence_table_section .column2_table tbody td:last-child{
  width:67%;
}

.licence_table_section .column3_table tbody td:first-child{
  white-space: nowrap;
  padding-left: 16px;
  padding-right: 16px;
}

.licence_table_section .column3_table tbody td:last-child{
  text-align: center;
  white-space: nowrap;
  padding-left: 50px;
  padding-right: 50px;
}


.licence_fee_section.fee_section .fee_head{
  padding-left: 0;
  text-align: center;
}

.licence_fee_section.fee_section .fee_head::before{
  content:none;
}

.licence_fee_section.fee_section .fee_box {
  margin-top: 16px;
}

/*
----------------------------------------------------
訂正手続き
----------------------------------------------------
*/

.correction_section{
    
}

.correction_section .common_appli_link{
  margin: 72px auto 0;
}

.correction_section .common_appli_link .common_appli_link_text{
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height: 1.18;
  padding-top: 12px;
}

.correction_section .common_appli_link::after{
  right:16px;
}

.correction_section .common_appli_link .common_appli_link_text span{
  font-size: 20px;
}

/*
----------------------------------------------------
紛失再発行
----------------------------------------------------
*/

.loss_section{
    
}

.loss_section .common_appli_link{
  margin: 72px auto 0;
}

.loss_section .common_appli_link .common_appli_link_text{
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height: 1.18;
  padding-top: 12px;
  letter-spacing: 0.03em;
  margin-right: 24px;
}

.loss_section .common_appli_link::after{
  right:16px;
}

.loss_section .common_appli_link .common_appli_link_text span{
  font-size: 20px;
}

/*
----------------------------------------------------
更新手続き
----------------------------------------------------
*/

.renewal_section{
    
}

.renewal_section .common_appli_link{
  margin: 80px auto 0;
}

.renewal_section.fee_section .fee_head{
  padding-left: 0;
  text-align: center;
}

.renewal_section.fee_section .fee_head::before{
  content:none;
}

.renewal_section.fee_section .fee_box {
  margin-top: 16px;
}

/*
----------------------------------------------------
失効再交付
----------------------------------------------------
*/

.lapse_section{
    
}

.lapse_section .common_appli_link{
  margin: 80px auto 0;
}



@media print {

  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact; /* 印刷時でも背景色や背景画像を表示 */
    width: 1190px; /* 印刷時の全ページ幅を統一（px数値はお好みで） */
    /* margin:0 auto; */
    margin: 0mm auto;
    size: A4 portrait; 
    zoom: 0.8; /* なるべく多くのブラウザで切れないようにするため */
  }
  /* 改ページをいれる場合 */
  /* section {
    page-break-before: always; 
  } */


  header{
    display: none;
  }

  main{
    padding-top: 0;
  }
  footer{
    display: none;
  }
  .page_fix_menu_area{
    display: none;
  }
  .common_sidebar{
    display: none;
  }

  .page_mv_section{
    display: none;
  }

  .common_bread_area{
    display: none;
  }

  table{
    border:none!important;
  }

  thead {
    display: table-row-group;
  }

}