@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800;900&family=Noto+Serif+JP:wght@300;400;500;600;700;900&family=Roboto:wght@300;400;500;700;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; */
  color:#333333;
}

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

body{
  letter-spacing: 0.05em;
  font-size: 16px;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

main{
  overflow: hidden;
  padding-top: 110px;
}

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

.hide{
  display:none!important;
}

.grecaptcha-badge{
  visibility: hidden;
}


/*以下、アニメーション関係*/
.common_hover_opa{
  transition: 0.4s;
}

.common_hover_opa:hover{
  opacity: 0.7;
}

/*以上、アニメーション関係*/


/*以下、共通パーツ*/
.serif{
  font-family: 'Noto Serif JP', serif;
}

.container{
  max-width:1240px;
  margin:0 auto;
  padding:0 20px;
}

.common_title_set{
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: 'Noto Serif JP', serif;
  position: relative;
  padding-bottom: 32px;
}

.common_title_set::after{
  content:"";
  width: 45px;
  height: 2px;
  background-color: #264967;
  position: absolute;
  bottom:0;
  right:0;
  left:0;
  margin:auto;
}

.common_title_set .en_title{
  margin-bottom: 16px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  color: #264967;
}

.common_title_set .ja_title{
  font-size: 38px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.common_link_button{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 380px;
  height: 60px;
  border-radius: 5px;
  background-color: #264967;
  border:1px solid transparent;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  transition: 0.4s;
  margin:0 auto;
}

.common_link_button::after{
  content:"";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-image: url('../img/common/button_off.svg');
  position: absolute;
  right:20px;
  top:20px;
  transition: 0.4s;
}

@media(min-width:768px){
  .common_link_button:hover{
    background-color: #fff;
    color: #264967;
    border: 1px solid #264967;
  }
  
  .common_link_button:hover::after{
    background-image: url('../img/common/button_on.svg');
  }
}


/*faq*/
.common_faq_list{

}

.common_faq_list .faq_block{

}

.common_faq_list .faq_block .question_area{
  cursor: pointer;
  position: relative;
  padding:36px 96px 36px 72px;
  border-bottom: 1px solid #ddd;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.03em;
}

.common_faq_list .faq_block .question_area::before{
  content:"Q";
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #fff;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left:16px;
  top:32px;
}

.common_faq_list .faq_block .question_area::after{
  content:"";
  width:24px;
  height:24px;
  background-image: url('../img/common/plus.svg');
  right:16px;
  top:40px;
  position: absolute;
}

.common_faq_list .faq_block .question_area.active::after{
  height:2px;
  background-image: url('../img/common/minus.svg');
  top:51px;
}

.common_faq_list .faq_block .answer_area{
  display: none;
  padding:36px 96px 36px 72px;
  position: relative;
  line-height: 2;
  background-color: #eef1f3;
}

.common_faq_list .faq_block .answer_area::before{
  content:"A";
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #fff;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #264967;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left:16px;
  top:32px;
}



/*お客様の声*/
.common_voice_list{
  
}

.common_voice_list .voice_block{
  margin-bottom: 50px;
  position: relative;
}

.common_voice_list .voice_block .voice_balloon{
  position: absolute;
  top:-20px;
  z-index: 1;
  width: 140px;
  height: 157px;
  padding-top: 28px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.common_voice_list .voice_block .voice_balloon .icon{
  width:58px;
}

.common_voice_list .voice_block .white_box{
  border-radius: 5px;
  background-color: #fff;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
}

.common_voice_list .voice_block .white_box::before{
  content:"";
  width:74px;
  height:74px;
  border-radius: 50%;
  background-color: #264967;
  position: absolute;
  top:-39px;
  z-index: 2;
}

.common_voice_list .voice_block .voice_title{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.03em;
  border-bottom:1px solid #ddd;
  margin-bottom: 16px;
  padding-bottom: 16px;
  padding-left: 6px;
}

.common_voice_list .voice_block .voice_text{
  margin-bottom: 24px;
  line-height: 2;
}

.common_voice_list .voice_block .voice_info{
  text-align: right;
  font-weight: bold;
  line-height: 1;
}

.common_voice_list .voice_block:nth-child(odd){
  padding-left: 32px;
}

.common_voice_list .voice_block:nth-child(odd) .voice_balloon{
  background-image: url('../img/common/voice_balloon_left.png');
  left:0;
}

.common_voice_list .voice_block:nth-child(odd) .white_box{
  padding:48px 40px 40px 132px;
  position: relative;
}

.common_voice_list .voice_block:nth-child(odd) .white_box::before{
  right:-37px;
}

.common_voice_list .voice_block:nth-child(even){
  padding-right: 32px;
}

.common_voice_list .voice_block:nth-child(even) .voice_balloon{
  background-image: url('../img/common/voice_balloon_right.png');
  right:0;
}

.common_voice_list .voice_block:nth-child(even) .white_box{
  padding:48px 132px 40px 40px;
  position: relative;
}

.common_voice_list .voice_block:nth-child(even) .white_box::before{
  left:-37px;
}


/*以上、共通パーツ*/


/*以下、共通セクション*/
header{
  position: fixed;
  top:0;
  left:0;
  width:100%;
  z-index:200;
  background-color: #fff;
}

header .header_container{
  padding:0 48px;
}

header .header_flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .header_logo{
  display: block;
  width:485px;
}

header .header_logo img{
  width:100%;
}

header nav ul{
  display: flex;
  justify-content: flex-end;
  white-space: nowrap;
}

header nav ul li{
  height:110px;
  margin-right: 40px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

header nav .header_link{
  letter-spacing: 0.02em;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

header nav .header_link .ja{
  font-weight: bold;
  line-height: 1;
  margin-bottom: 8px;
}

header nav .header_link .en{
  font-size: 12px;
  font-weight: 400;
  color:#264967;
  position: relative;
}

header nav .header_link .en::after{
  transition: 0.4s;
  content:"";
  width:105%;
  height:2px;
  background-color:#264967;
  position: absolute;
  bottom:-10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  opacity: 0;
}

header nav li:hover .header_link .en::after,
header nav .header_link.active .en::after{
  opacity: 1;
}

header .child_menu{
  background-color: #264967;
  border-radius: 0 0 4px 4px;
  position: absolute;
  top:100%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transition: 0.4s;
  pointer-events: none;
  opacity: 0;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  box-shadow: 0 5px 18px 4px rgba(51, 51, 51, 0.21);
}

header .child_menu.show{
  opacity: 1;
  pointer-events: auto;
}

header .child_menu ul{
  position: relative;
  display: block;
}

header .child_menu ul::before{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 6px 12px 6px;
  border-color: transparent transparent #264967 transparent;
  position: absolute;
  top:-12px;
  left:0;
  right:0;
  margin:auto;
}

header .child_menu ul li{
  margin:0;
  border-bottom: 1px solid rgba(255,255,255,0.3);
  display: block;
  height:auto;
}

header .child_menu ul li:last-child{
  border-bottom:none;
}

header .child_menu ul li a{
  display: block;
  padding:16px;
  line-height: 1;
  color:#fff;
  font-weight: 400;
  white-space: nowrap;
}

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

header .header_right .tel{
  pointer-events: none;
}

header .header_right .tel .tel01{
  width:220px;
  height:24px;
  border-radius: 12px;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 500;
  color:#fff;
  line-height: 1;
}

header .header_right .tel .tel02{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color:#ea5c6f;
  margin-bottom: 4px;
}

header .header_right .tel .tel02::before{
  display: block;
  content:'';
  width:18px;
  height:23px;
  background-image: url('../img/common/tel.png');
  margin-right: 3px;
}

header .header_right .tel .tel03{
  font-size: 12px;
  line-height: 1;
  text-align: center;
}

@media(max-width:1800px){
  main{
    padding-top: 100px;
  }

  header .header_container{
    padding:0 32px;
  }

  header .header_logo{
    width:330px;
  }

  header nav ul li {
    height: 100px;
    margin-right: 32px;
  }

  header nav .header_link .ja {
    font-size: 14px;
  }

  header .header_right .tel .tel02 {
    font-size: 22px;
  }
  header .header_right .tel .tel02::before {
    width: 15px;
    height: 19px;
  }

  header .child_menu ul li{
    border-bottom: 1px solid rgba(255,255,255,0.3);
  }

  header .child_menu ul li a{
    padding:12px;
    font-size: 14px;
  }

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


@media(max-width:1400px){
  main{
    padding-top: 80px;
  }

  header .header_container{
    padding:0 24px;
  }

  header .header_logo{
    width:280px;
  }

  header nav ul li {
    height: 80px;
    margin-right: 24px;
  }

  header nav .header_link .ja {
    font-size: 12px;
  }

  header nav .header_link .en {
    font-size: 11px;
  }

  header .header_right .tel .tel01 {
    width: auto;
    height: 18px;
    padding:0 20px;
    border-radius: 9px;
    margin-bottom: 4px;
    font-size: 12px;
  }

  header .header_right .tel .tel02 {
    font-size: 18px;
  }

  header .header_right .tel .tel02::before {
    width: 12px;
    height: 16px;
  }

  header .header_right .tel .tel03{
    font-size: 11px;
  }


  header .child_menu ul li a{
    padding:12px;
    font-size: 13px;
  }

  

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


footer{
  padding:64px 0 96px;
  background-color: #172b3d;
}

footer .flex01{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 56px;
}

footer .footer_logo{
  width:438px;
  display: block;
  margin-bottom: 32px;
}

footer .footer_logo img{
  width:100%;
}

footer .sns_flex{
  display: flex;
  align-items: center;
}

footer .sns_flex a{

}

footer .insta{
  width:44px;
  display: block;
}

footer .insta img{
  width:100%;
}

footer .twitter{
  width:44px;
  display: block;
  margin-left: 20px;
}

footer .twitter img{
  width:100%;
}

footer .ul_flex{
  display: flex;
  align-items: flex-start;
}

footer .parent_list{
  margin-left: 40px;
}

footer .parent_list a{
  display: inline-block;
}

footer .parent_list .parent_item{
  margin-bottom: 20px;
}

footer .parent_list .parent_item:last-child{
  margin-bottom: 0;
}

footer .parent_list .parent_item .parent_link{
  transition: 0.4s;
  font-weight: bold;
  line-height: 1;
  color:#fff;
}

footer .parent_list .parent_item .parent_link:hover{
  opacity: 0.7;
}

footer .child_list{

}

footer .child_list .child_item{
  margin-top: 14px;
}

footer .child_list .child_item .child_link{
  display: flex;
  font-size: 14px;
  font-weight: 400;
  color:#fff;
  line-height: 1;
  transition: 0.4s;
}

footer .child_list .child_item .child_link:hover{
  opacity: 0.7;
}

footer .child_list .child_item .child_link::before{
  content:"";
  width:8px;
  height:1px;
  background-color: #fff;
  margin-top: 7px;
  margin-right: 6px;
  flex-shrink: 0;
}

footer .flex02{
  padding-top: 36px;
  border-top:1px solid rgba(255,255,255,0.2);
  display: flex;
  justify-content: space-between;
}

footer .flex02 p,
footer .flex02 a{
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  color:#fff;
}

#pagetop{
  position: fixed;
  width:56px;
  border-radius: 50%;
  z-index:100;
  bottom:20px;
  right:20px;
  cursor: pointer;
}

#fix_side{
  position: fixed;
  right:0;
  top:160px;
  z-index: 100;
  overflow: hidden;
  border-radius: 5px 0 0 5px;
}

#fix_side img{
  width:50px;
}

#fix_side .tel{
  
}

.common_contact_area{

}

.common_contact_area .area01{
  display: flex;
  justify-content: center;
  background-color: rgba(38,73,103);
  padding-left: 80px;
}

.common_contact_area .area01 .contents{
  padding:24px 0;
  position: relative;
}

.common_contact_area .area01 .contents img{
  position: absolute;
  bottom:0;
  left:-124px;

  height:189px;
}

.common_contact_area .area01 .flex{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index:3;
}

.common_contact_area .area01 .box{
  display: flex;
  justify-content: center;
  align-items: center;
  height:54px;
  border-radius: 27px;
  background-color: #fff;
  padding:0 24px;
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  color:#264967;
}

.common_contact_area .area01 .box02{
  margin-left: 10px;
}

.common_contact_area .area01 p{
  color:#fff;
  text-align: center;
  font-size: 22px;
  font-weight: 500;
  line-height: 1;
}

.common_contact_area .area02{
  padding:24px 0;
  background-color: #eef1f3;
}

.common_contact_area .area02 .tel_list{
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 32px;
}

.common_contact_area .area02 .tel_block{
  pointer-events: none;
  display: flex;
  margin-bottom: 16px;
}

.common_contact_area .area02 .tel_block .tel_left{
  width:80px;
  height:60px;
  border-radius: 5px;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  font-weight: 500;
  color:#fff;
  line-height: 1;
  flex-shrink: 0;
  margin-right: 10px;
}

.common_contact_area .area02 .tel_block .tel01{
  font-family: 'Noto Serif JP', serif;
  font-size: 36px;
  color:#ea5c6f;
  line-height: 1;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 4px;
}

.common_contact_area .area02 .tel_block .tel02{
  font-size: 14px;
  color:#333;
  font-weight: 400;
}

.common_contact_area .area02 .tel_list .remark{
  width:100%;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color:#333333;
  
}

.common_contact_area .area02 .flex{
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.common_contact_area .area02 .contact_block{
  width:350px;
  height:60px;
  border-radius: 5px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color:#333;
}

.common_contact_area .area02 .contact_block::before{
  content:"";
  width:60px;
  height:60px;
  border-radius: 50%;
  background-image: url('../img/common/footer_mail.png');
  left:-30px;
  top:0;
  bottom:0;
  margin:auto;
  position: absolute;
}

.common_contact_area .area02 .contact_block::after{
  content:"";
  width:8px;
  height:16px;
  background-image: url('../img/common/arrow_right_blue.svg');
  position: absolute;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
}

.common_contact_area .area02 .line_block{
  pointer-events: none;
  color:#333;
  margin-left: 56px;
}

.common_contact_area .area02 .line_block .line_flex{
  display: flex;
  align-items: flex-start;
}

.common_contact_area .area02 .line_block .icon{
  flex-shrink: 0;
  width:60px;
  margin-right: 8px;
}

.common_contact_area .area02 .line_block .line01{
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}

.common_contact_area .area02 .line_block .line02{
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 6px;
}

.common_contact_area .area02 .line_block .qr{
  width:95px;
  margin-left: 10px;
}
/*以上、共通セクション*/


/*
------------------------------------------------
TOPページ
------------------------------------------------
*/

body.top_body{
  
}

main.top_main{

}

.top_section{
  position: relative;
}

.gray_bg_section::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  z-index:-10;
  top:0;
  left:0;
}

.top_section01{
  position: relative;
  padding:80px 0 64px;
} 

.top_section01 .mv{
  width:100%;
  height:100%;
  object-fit: cover;
  position: absolute;
  top:0;
  left:0;
  z-index:-10;
}

.top_section01 .text{
  display: inline-block;
}

.top_section01 p{
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_section01 .p01{
  
}

.top_section01 .p01 img{
  width:672px;
}

.top_section01 .p02{
  margin-top: -16px;
}

.top_section01 .p02 img{
  width:725px;
}

.top_section01 .num_flex{
  margin-top: -16px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}

.top_section01 .num_flex img{
  height:160px;
}

.top_section01 .num_flex img:nth-child(2){
  margin:0 24px;
}

.top_section01 .p03{
  font-size: 13px;
  line-height: 1;
  display: block;
}

.top_banner_section{
  padding:50px 0 72px;
}

.top_banner_section .top_banner{
  max-width:887px;
  display: block;
  margin:0 auto 40px;
}

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

.top_banner_section .p01{
  font-feature-settings: "palt";
  text-align: center;
  color:#264967;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 20px;
  white-space: nowrap;
}

.top_banner_section .p01 span{
  font-size: 40px;
  color:#264967;
}

.top_banner_section .p01 .border{
  font-feature-settings: "palt";
  margin:0 6px;
  letter-spacing: -0.02em;
  background: linear-gradient(to top, rgba(174,143,65) 0%, rgba(174,143,65) 4%, transparent 4%, transparent 100%);
}

.top_banner_section .p01 .mark{
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  font-feature-settings: "palt";
  font-weight: 300;
}

.top_banner_section .p02{
  font-feature-settings: "palt";
  text-align: center;
  color:#264967;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.5;
  width: fit-content;
  margin:0 auto;
}

.top_banner_section .p02 span{
  color:#fff;
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: 600;
  margin:0 8px 0;
  padding:0 40px;
}

.top_banner_section .p02 span::before{
  content:"";
  width:100%;
  height:100%;  
  background-color: rgba(234,92,111);
  position: absolute;
  z-index:-1;
  top:0;
  left:0;
  transform: skewX(-13deg);
  
}

.top_section02{
  padding:100px 0 120px;
  
}

.top_section02 .p01{
  display: flex;
  justify-content: center;
  margin-bottom: 48px;
  line-height: 1.3;
  margin-top: 40px;
}

.top_section02 .service_list{
  position: relative;
  margin-bottom: 60px;
  padding-bottom: 72px;
  margin-top: 40px;
}

.top_section02 .service_list .bg{
  position: absolute;
  width:1820px;
  bottom:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -4;
}

.top_section02 .service_block{
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 0 32px rgba(178,55,72,0.08);
}

.top_section02 .service_block .img_area{
  width:650px;
  height: 330px;
}

.top_section02 .service_block .img_area img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.top_section02 .service_block .text_area{
  width:calc(100% - 650px);
  height:330px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding:0 60px;
  position: relative;
}

.top_section02 .service_block .text_area::after{
  content:"";
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-image: url('../img/common/button_on_big.svg');
  position: absolute;
  right:30px;
  bottom:30px;
  transition: 0.4s;
}

@media(min-width:768px){
  .top_section02 .service_block:hover .text_area::after{
    transform: translateX(8px);
  }
}

.top_section02 .service_block02{
  margin-bottom: 0;
  flex-direction: row-reverse;
}

.top_section02 .service_block .service_title{
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 28px;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  color: #ea5c6f;
}

.top_section02 .service_block .service_price{
  width:fit-content;
  margin-bottom: 16px;
  padding: 14px 30px;

  border-radius: 5px;
  background-color: rgba(233,236,240,1);

}

.top_section02 .service_block .service_price p{
  color: #264967;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}

.top_section02 .service_block .service_price p .num{
  font-size: 20px;
  font-family: 'Roboto', sans-serif;
  color: #264967;
}

.top_section02 .service_block .service_price p .min{
  font-size: 14px;
  color: #264967;
}

.top_section02 .service_block .service_text{
  font-weight: normal;
  line-height: 2;
}

.top_section02 .white_box{
  padding: 24px;
  border: solid 3px #dcdcdc;
  background-color: #fff;
  margin-bottom: 40px;
}

.top_section02 .white_box p{
  line-height: 1.88;
}

.top_section02 .white_box p span{
  font-weight: bold;
  color: #264967;
}

.top_section03{
  padding:120px 0 144px;
}

.top_section03 .flex{
  display: flex;
  margin-top: 48px;
}

.top_section03 .flex .left{
  width:50%;
  position: relative;
}

.top_section03 .flex .left .pic{
  width:100%;
  border-radius: 5px;
}

.top_section03 .flex .left .bg{
  position: absolute;
  z-index: -3;
  width:800px;
  top:50px;
  right:160px;
  border-radius: 0 5px 5px 0;
}

.top_section03 .flex .right{
  width:50%;
  padding-left: 80px;
  padding-bottom: 80px;
  position: relative;
}

.top_section03 .flex .right .p01{
  margin-bottom: 36px;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.6;
  color: #ea5c6f;
}

.top_section03 .flex .right .p02{
  line-height: 2;
}

.top_section03 .flex .right .about02{
  width:200px;
  position: absolute;
  z-index:-1;
  right:-72px;
  bottom:0;
}

.top_section03 .deco_text{
  position: absolute;
  z-index: -12;
  right:0;
  bottom:-12px;
  font-size: 120px;
  font-weight: 300;
  line-height: 1;
  color: #ebeced;

}

.top_section04{
  padding:120px 0;
}

.top_section04 .p01{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  margin-bottom: 56px;
  line-height: 1.3;

}

.top_section04 .strength_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 64px;
}

.top_section04 .block{
  width: 585px;
  height: 320px;
  padding: 40px;
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
  
}

.top_section04 .block .head_flex{
  display: flex;
  align-items: center;
  font-family: 'Noto Serif JP', serif;  
  margin-bottom: 32px;
}

.top_section04 .block .head_flex .icon{
  margin-right: 16px;
  width:110px;
  flex-shrink: 0;
}

.top_section04 .block .head_flex .icon img{
  width:100%;
  border-radius: 50%;
}

.top_section04 .block .head_flex .right{
  display: flex;
  align-items: center;
}

.top_section04 .block .head_flex .num{
  flex-shrink: 0;
  font-size: 50px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: #264967;
  margin-right: 24px;
  padding-bottom: 12px;
  position: relative;
}

.top_section04 .block .head_flex .num::after{
  content:"";
  width: 27px;
  height: 2px;
  background-color: #ea5c6f;
  position: absolute;
  bottom:0;
  right:0;
  left:0;
  margin:auto;
}

.top_section04 .block .head_flex .head_text{
  font-size: 24px;
  font-weight: 500;
  color: #264967;
  line-height: 1.42;
}

.top_section04 .block .head_flex .head_text span{
  font-weight: 600;
  color: #ea5c6f;
}

.top_section04 .block .strength_text{
  line-height: 1.75;
}

.top_section04 .block01,
.top_section04 .block02{
  margin-bottom: 30px;
}

.top_section05{
  padding:120px 0 80px;
  position: relative;
}

.top_section05::before{
  content:"";
  width:100%;
  height:315px;
  background-color: #264967;
  position: absolute;
  bottom:0;
  left:0;
  z-index:-10;
}

.top_section05 .p01{
  margin-top: 40px;
  margin-bottom: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
}

.top_section05 .price_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 48px;
}

.top_section05 .block{
  width: 585px;
  border-radius: 5px;
  background-color: #fff;
  overflow: hidden;
}

.top_section05 .block .price_head{
  height:140px;
  padding-top: 20px;
  position: relative;
}

.top_section05 .block .price_head01{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 48px;
  margin: 0 auto 20px;
  border-radius: 24px;
  position: relative;
}

.top_section05 .block .price_head01 span{
  position: relative;
  z-index:3;
}

.top_section05 .block .price_body{
  height:calc(100% - 140px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_section05 .block .price_body .price_period{
  color: #264967;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 12px;
}

.top_section05 .block .price_body .price_period .num{
  font-size: 20px;
  font-family: 'Roboto', sans-serif;
  color: #264967;
}

.top_section05 .block .price_body .price_period .min{
  font-size: 14px;
  color: #264967;
}

.top_section05 .block .price_body .price_text{
  line-height: 1.3;
  text-align: center;
}

.top_section05 .green_block{
  height: 250px;
  border: solid 3px #8ad9c7;
  margin-bottom: 30px;
}

.top_section05 .green_block .price_head{
  background-color: #20b392;
}

.top_section05 .green_block .price_head01{
  background-color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #1ab18f;
}

.top_section05 .green_block .price_head01 span{
  color: #1ab18f;
}

.top_section05 .green_block .price_head01::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 9px 0 9px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom:-5px;
  right:0;
  left:0;
  margin:auto;
}

.top_section05 .green_block .price_head02{
  font-family: 'Noto Serif JP', serif;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
}

.top_section05 .green_block .price_head02 img{
  width: 25px;
  margin-right: 8px;
}

/* .top_section05 .green_block .price_head02::before{
  content:none;
  width: 25px;
  height: 33px;
  background-image: url('../img/top/top_plan_icon.png');
  margin-right: 8px;
} */

.top_section05 .pink_block{
  height: 205px;
  border: solid 3px #f5b9c3;
}

.top_section05 .pink_block .price_head{
  background-color: #fceaed;
}


.top_section05 .pink_block .price_head01{
  background-color: #808080;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.top_section05 .pink_block .price_head01 span{
  color:#fff;
}

.top_section05 .pink_block .price_head01::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 9px 0 9px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  bottom:-5px;
  right:0;
  left:0;
  margin:auto;
}

.top_section05 .pink_block .price_head02{
  font-family: 'Noto Serif JP', serif;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
}

.top_section05 .common_link_button{
  background-color: #fff;
  color: #264967;
  border:1px solid #fff;
}

.top_section05 .common_link_button::after{
  background-image: url('../img/common/button_on.svg');
}


@media(min-width:768px){
  .top_section05 .common_link_button:hover{
    background-color: #264967;
    border:1px solid #fff;
    color: #fff;
  }
  
  .top_section05 .common_link_button:hover::after{
    background-image: url('../img/common/button_off.svg');
  }
}

.top_section05 .deco_text{
  font-family: 'Noto Serif JP', serif;
  font-size: 120px;
  font-weight: 300;
  line-height: 1;
  color: rgba(255, 255, 255, 0.06);
  position: absolute;
  bottom:-12px;
  left:0;
  z-index:-5;
}

.top_section06{
  padding-bottom: 120px;
}

.top_section06 .bg{
  width:100%;
  height:550px;
  object-fit: cover;
}

.top_section06 .white_box{
  position: relative;
  z-index:1;
  padding:80px 0 100px;
  height: 651px;
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
  margin-top: -325px;
}

.top_section06 .flow_list{
  margin-top: 40px;
  margin-bottom: 48px;
  display: flex;
  justify-content: center;
}

.top_section06 .flow_block{
  width:16.67%;
  position: relative;
  padding:0 32px 12px;
}

.top_section06 .flow_block::before{
  content:"";
  width: 1px;
  height: 100%;
  background-color: #ddd;
  position: absolute;
  right:0;
  top:0;
}

.top_section06 .flow_block::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  border-color: transparent transparent transparent #ea5c6f;
  right:-6px;
  top:0;
  bottom:0;
  margin:auto;
  position: absolute;
}

.top_section06 .flow_block:last-child::before,
.top_section06 .flow_block:last-child::after{
  content:none;
}

.top_section06 .flow_block .icon_area{
  display: flex;
  justify-content: center;
  align-items: flex-start;
  height:88px;
}

.top_section06 .flow_block .icon01{
  width:68px;
}
.top_section06 .flow_block .icon02{
  width:71px;
}
.top_section06 .flow_block .icon03{
  width:52px;
}
.top_section06 .flow_block .icon04{
  width:80px;
}
.top_section06 .flow_block .icon05{
  width:67px;
}
.top_section06 .flow_block .icon06{
  width:53px;
}

.top_section06 .flow_block .flow_title{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.44;
  text-align: center;
  color: #264967;
  margin-bottom: 16px;
}

.top_section06 .flow_block .flow_text{
  font-size: 14px;
  line-height: 1.57;
}

.top_section07{
  padding:120px 0;
}

.top_section07 .p01{
  margin-top: 40px;
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
}

.top_section07 .common_faq_list{
  margin-bottom: 48px;
}


.top_section08{
  padding:120px 0;
}

.top_section08 .p01{
  margin-top: 40px;
  margin-bottom: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
}

.top_section08 .voice_list{

}



.top_section09{
  padding:96px 0 120px;
  position: relative;
}

.top_section09 .banner{
  margin-bottom: 120px;
  display: block;
}

.top_section09 .banner img{
  width:100%;
}

.top_section09 .p01{
  margin-top: 40px;
  margin-bottom: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
}

.top_section09 .swiper_block{
  margin-bottom: 24px;
  position: relative;
}

.top_section09 .swiper_block .swiper_column_button{
  width:50px;
  position: absolute;
  z-index: 10;
  top:0;
  bottom:0;
  margin:auto;
}

.top_section09 .swiper_block .swiper-button-prev{
  left:auto;
  right:calc(50% + 575px);
}


.top_section09 .swiper_block .swiper-button-next{
  right:auto;
  left:calc(50% + 575px);
}

.top_section09 .swiper_block .swiper-container{
  padding:32px 0;
}


.top_section09 .swiper_block .swiper-slide{
  width:410px;
  padding:0 15px;
}

.top_section09 .card{
  width:100%;
  display: block;
  border-radius: 5px;
  overflow: hidden;
  transition: 0.4s;
  box-shadow: 0 0 32px rgba(178,55,72,0.08);
}

@media(min-width:768px){
  .top_section09 .card:hover{
    opacity: 0.9;
  }
  
}

.top_section09 .card .thumb{
  height: 220px;
}

.top_section09 .card .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.top_section09 .card .thumb.def{
  width:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  /* background-color: rgba(228,228,228); */
  background-color: #fff;
  padding:4px 6px;
}

.top_section09 .card .thumb.def .def_frame{
  width:100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border:1px solid #264967;
  background-color: #fff;
}

.top_section09 .card .thumb.def img{
  width:90%;
  height:auto;
}

.top_section09 .card .card_body{
  padding:20px 32px;
  height:150px;
  background-color: #fff;

}

.top_section09 .card .info_flex{
  display: flex;
  align-items: center;
  margin-bottom: 12px;

}

.top_section09 .card .date{
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  line-height: 1;
  color: #ea5c6f;
}

.top_section09 .card .cat_box{
  min-width: 100px;
  height: 28px;
  margin-left: 12px;
  padding: 0 12px;
  border-radius: 14px;
  border: solid 1px #264967;
  background-color: rgba(233,236,240);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  color: #264967;
}

.top_section09 .card .column_title{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.56;
  color: #333;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.top_section09 .bg{
  width:100%;
  height:480px;
  object-fit: cover;
  position: absolute;
  left:0;
  bottom:0;
  z-index:-10;
}

.top_section10{
  padding-bottom: 130px;
}

.top_section10 .bg{
  width:100%;
  height:700px;
  object-fit: cover;
}

.top_section10 .white_box{
  position: relative;
  z-index: 1;
  padding:96px 48px 0;
  border-radius: 5px;
  background-color: #fff;
  margin-top: -500px;
}

.top_section10 .office_list{
  margin-top: 40px;
  margin-bottom: 64px;
}

.top_section10 .office_block{
  margin-bottom: 32px;
  overflow: hidden;
  border-radius: 5px;
}

.top_section10 .office_block:last-child{
  margin-bottom: 0;
}

.top_section10 .office_block .office_head{
  height: 60px;
  background-color: #264967;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  pointer-events: none;
}

.top_section10 .office_block .office_body{
  padding:48px 40px;
  background-color: #eef1f3;
}

.top_section10 .office_sub_block .office_body{
  display: block;
}

.top_section10 .office_block .office_flex{
  display: flex;
}

.top_section10 .office_block .office_flex .left{
  width:100%;
}

.top_section10 .office_block .left .info_frame{
  height:240px;
  margin-bottom: 20px;
}


.top_section10 .office_block .left .manage_text{
  line-height: 1.3;
  margin-top: 20px;
}

.top_section10 .office_block ul{

}


.top_section10 .office_block ul li{
  display: flex;
  justify-content: center;
  align-items: center;
  padding:24px 0;
  position: relative;
  border-bottom:1px solid #ddd;
}

.top_section10 .office_block ul li::before{
  content:"";
  width: 120px;
  height: 1px;
  background-color: #264967;
  position: absolute;
  left:0;
  bottom:-1px;
  z-index:3;
}

.top_section10 .office_block ul li:first-child{
  padding-top: 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #264967;

}

.top_section10 .office_block ul li .info_left{
  width:120px;
  font-weight: bold;
  line-height: 1;
  flex-shrink: 0;
  padding-left: 3px;
}

.top_section10 .office_block ul li .info_right{
  width:100%;
  padding-left: 16px;
  line-height: 1;
}

.top_section10 .office_block ul li .info_right .tel{
  pointer-events: none;
  color:#333;
}

.top_section10 .office_block .right{
  width:450px;
  flex-shrink: 0;
  margin-left: 40px;
}

.top_section10 .office_block .right iframe{
  display: block;
  width:100%;
  height:240px;
  
}

.top_section10 .office_block .right .map_text{
  display: flex;
  line-height: 1.3;
  margin-top: 20px;
}

.top_section10 .office_block .right .map_text::before{
  content:"";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ea5c6f;
  margin-right: 8px;
  margin-top: 6px;
}


.top_section10 .outline_block{
  border-radius: 5px;
  border: solid 3px #dcdcdc;
  background-color: #fff;
  position: relative;
  padding:50px 100px 72px;
}

.top_section10 .outline_block .outline_head{
  padding:0 20px;
  height: 40px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  color: #264967;
  position: absolute;
  z-index: 3;
  top:-20px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.top_section10 .outline_block ul li{
  display: flex;
  padding:20px 0;
  position: relative;
  border-bottom:1px solid #ddd;
}

.top_section10 .outline_block ul li::before{
  content:"";
  width: 140px;
  height: 1px;
  background-color: #264967;
  position: absolute;
  left:0;
  bottom:-1px;
  z-index:3;
}

.top_section10 .outline_block ul li .outline_left{
  width:140px;
  font-weight: bold;
  flex-shrink: 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
  color: #264967;
}

.top_section10 .outline_block ul li .outline_right{
  width:100%;
  font-size: 18px;
  line-height: 1.8;
  padding-left: 16px;
}

.top_section10 .outline_block ul li .outline_right p{
  /* margin-bottom: 8px;
  line-height: 1.3; */
}

.top_section10 .outline_block ul li .outline_right .tel{
  color:#333;
  pointer-events: none;
  font-weight: 400;
}


/*
------------------------------------------------
下層共通
------------------------------------------------
*/


/*下層mv*/
.page_mv_section{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height:240px;
}

.page_mv_section .text{
  text-align: center;
  font-family: 'Noto Serif JP', serif;
}

.page_mv_section .en_title{
  margin-bottom: 16px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
}

.page_mv_section .ja_title{
  font-size: 38px;
  font-weight: 500;
  line-height: 1.41;
  color: #fff;
}

.page_mv_section .min_ja_title{
  font-size: 24px;
  line-height: 1;
  display: inline-block;
  color:#fff;
}

/*パンクズ*/
.bread_section{
  padding-top: 24px;
}

.bread_section .bread_flex{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.bread_section .bread_link{
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #ea5c6f;
  margin-bottom: 12px;
}

.bread_section .bread_arrow{
  padding-top: 2px;
  margin:0 10px 12px;
  width:6px;
}

.bread_section .bread_arrow img{
  width:100%;
}

.bread_section .bread_current{
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 12px;
}


/*浮気調査ページへのリンク*/
.common_uwaki_section{
  padding:50px 0 ;
  background-color: #eef1f3;
}

.common_uwaki_section .p01{
  margin-bottom: 32px;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  justify-content: center;
  color: #264967;
}

.common_uwaki_section .flex{
  max-width: 830px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
}



/*他の下層ページへのリンクエリア*/

.common_link_section{
  padding:40px 0 108px;
  position: relative;
}

.common_link_section::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #bdc8d1;
  position: absolute;
  top:0;
  left:0;
  z-index:-10;
}

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

.common_link_section .link{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 285px;
  height: 90px;
  border-radius: 5px;
  background-color: #fff;
  overflow: hidden;
  position: relative;
}

.common_link_section .link::after{
  content:"";
  width: 9px;
  height: 18px;
  background-image: url('../img/common/arrow_right_blue.svg');
  position: absolute;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
  transition: 0.4s;
}

@media(min-width:768px){
  .common_link_section .link:hover::after{
    transform: translateX(5px);
  }
}

.common_link_section .link .pic{
  width: 100px;
  height: 90px;
  object-fit: cover;

  flex-shrink: 0;
}

.common_link_section .link .text{
  width:calc(100% - 100px);
  padding-left: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #333;
}


/*
------------------------------------------------
女探偵わかの強み
------------------------------------------------
*/

body.strength_body{
  
}

main.strength_main{

}

.strength_mv_section{
  background-image: url('../img/strength/strength_mv.jpg');
}

.strength_section{

}

.strength_section01{
  padding:80px 0 200px;
}

.strength_section01 .p01{
  margin-bottom: 108px;
  line-height: 2;
  text-align: center;
}

.strength_section01 .strength_block{
  margin-bottom: 180px;
}

.strength_section01 .strength_block:last-child{
  margin-bottom: 0;
}

.strength_section01 .strength_block{
  display: flex;
}

.strength_section01 .strength_block .thumb{
  position: relative;
  width:580px;
  flex-shrink: 0;
}

.strength_section01 .strength_block .thumb .pic{
  width:100%;
  border-radius: 5px;
}

.strength_section01 .strength_block .thumb .icon{
  position: absolute;
  width:122px;
  height:122px;
  border-radius: 50%;
  top:-20px;
}

.strength_section01 .strength_block .text_area{
  position: relative;
  width:100%;
}

.strength_section01 .strength_block .text_area::before{
  content:"";
  width:100vw;
  height:300px;
  background-color: #eef1f3;
  position: absolute;
  top:140px;
  z-index:-3;
}

.strength_section01 .strength_block .head_flex{
  display: flex;
  align-items: flex-start ;
  margin-bottom: 32px;
  font-family: 'Noto Serif JP', serif;
}

.strength_section01 .strength_block .num{
  font-size: 66px;
  font-weight: 400;
  line-height: 1;
  color: #264967;
  flex-shrink: 0;
  margin-right: 32px;
  padding-bottom: 12px;
  position: relative;
  
}

.strength_section01 .strength_block .num::after{
  content:"";
  width: 36px;
  height: 3px;
  background-color: #ea5c6f;
  position: absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}

.strength_section01 .strength_block .strength_title{
  font-size: 32px;
  font-weight: 500;
  color: #264967;
  line-height: 1.41;
}

.strength_section01 .strength_block .strength_title span{
  color: #ea5c6f;
  font-weight: 600;
}

.strength_section01 .strength_block .strength_text{
  line-height: 2.13;
  margin-bottom: 16px;
}

.strength_section01 .strength_block .strength_text span{
  font-weight: bold;
  color: #264967;
  background: linear-gradient(to top, rgba(38,73,103,0.15) 0%, rgba(38,73,103,0.15) 40%, transparent 40%, transparent 100%);
}

.strength_section01 .strength_block:nth-child(odd){
  flex-direction: row-reverse;
}

.strength_section01 .strength_block:nth-child(odd) .thumb{
  padding-right: 20px;
}

.strength_section01 .strength_block:nth-child(odd) .thumb .icon{
  right:0;
}

.strength_section01 .strength_block:nth-child(odd) .text_area{
  padding-right: 64px;
}

.strength_section01 .strength_block:nth-child(odd) .text_area::before{
  left:360px;
}


.strength_section01 .strength_block:nth-child(even){
  flex-direction: row;
}

.strength_section01 .strength_block:nth-child(even) .thumb{
  padding-left: 20px;
}

.strength_section01 .strength_block:nth-child(even) .thumb .icon{
  left:0;
}

.strength_section01 .strength_block:nth-child(even) .text_area{
  padding-left: 64px;
}

.strength_section01 .strength_block:nth-child(even) .text_area::before{
  right:360px;
}

.strength_section01 .strength_block.strength_block04 .head_flex{
  align-items: center;
}

/*
------------------------------------------------
調査項目
------------------------------------------------
*/

body.service_body{
  
}

main.service_main{

}

.service_mv_section{
  background-image: url('../img/service/service_mv.jpg');
}

.service_section{

}

.service_section01{
  padding:48px 0 190px;
}

.service_section01 .p01{
  line-height: 2;
  margin-bottom: 80px;
  text-align: center;
}


.service_section01 .service_block{
  margin-bottom: 144px;
  display: flex;
}

.service_section01 .service_block:last-child{
  margin-bottom: 0;
}

.service_section01 .service_block .thumb{
  position: relative;
  width:560px;
  flex-shrink: 0;
}

.service_section01 .service_block .thumb .pic{
  width:100%;
  border-radius: 5px;
}

.service_section01 .service_block .text_area{
  padding-top: 16px;
  position: relative;
  width:100%;
}

.service_section01 .service_block .text_area::before{
  content:"";
  width:100vw;
  height:316px;
  background-color: #eef1f3;
  position: absolute;
  top:132px;
  z-index:-3;
}

.service_section01 .service_block .service_title{
  font-family: 'Noto Serif JP', serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 16px;
  color:#ea5c6f;
}

.service_section01 .service_block .service_text{
  line-height: 2.1;
  margin-bottom: 20px;
  padding-right: 32px;
}

.service_section01 .service_block .service_text.mini{
  font-size: 14px;
  padding-right: 0;
}

.service_section01 .service_block .common_link_button{
  width:320px;
  margin:0;
}

.service_section01 .service_block .list_box{
  border:3px solid #dcdcdc;
  background-color: #fff;
  padding:24px 32px;
  margin-bottom: 24px;
}

.service_section01 .service_block .list_box li{
  position: relative;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 16px;
  margin-bottom: 8px;
}

.service_section01 .service_block .list_box li::before{
  content:"";
  width:10px;
  height:10px;
  border-radius: 50%;
  background-color: #ea5c6f;
  position: absolute;
  left:0;
  top:8px;
}

.service_section01 .service_block .list_box li:last-child{
  margin-bottom: 0;
}

.service_section01 .service_block .link_flex{
  display: flex;
}

.service_section01 .service_block .link{
  width:280px;
  height:60px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
}

.service_section01 .service_block .link span{
  position: relative;
  transition: 0.4s;
  color:#fff;
  font-weight: bold;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.service_section01 .service_block .link span::before{
  content:"";
  margin-right: 8px;
  transition: 0.4s;
}

.service_section01 .service_block .contact_link{
  background-color: #264967;
  border: 1px solid #264967;
  margin-right: 20px;
}

.service_section01 .service_block .contact_link span::before{
  width:28px;
  height:22px;
  background-image: url('../img/common/sp_footer_mail.png');
  left:-36px;
}

.service_section01 .service_block .line_link{
  background-color: #00b900;
  border:1px solid #00b900;
}

.service_section01 .service_block .line_link span::before{
  width:35px;
  height:33px;
  background-image: url('../img/common/sp_footer_line.png');
  left:-40px;
}

@media(min-width:768px){
  .service_section01 .service_block .contact_link:hover{
    background-color: #fff;
    
  }

  .service_section01 .service_block .contact_link:hover span{
    color: #264967;
  }
  
  .service_section01 .service_block .contact_link:hover span::before{
    background-image: url('../img/common/header_mail.png');
  }
  
  .service_section01 .service_block .line_link:hover{
    background-color: #fff;
  }

  .service_section01 .service_block .line_link:hover span{
    color: #00b900;
  }
  
  .service_section01 .service_block .line_link:hover span::before{
    background-image: url('../img/common/header_line.png');
  }
}/*@media(min-width:768px){*/


.service_section01 .service_block:nth-child(odd){
  flex-direction: row;
}

.service_section01 .service_block:nth-child(odd) .text_area{
  padding-left: 60px;
}

.service_section01 .service_block:nth-child(odd) .text_area::before{
  right: 360px;
}

.service_section01 .service_block:nth-child(even){
  flex-direction: row-reverse;
}

.service_section01 .service_block:nth-child(even) .text_area{
  padding-right: 60px;
}

.service_section01 .service_block:nth-child(even) .text_area::before{
  left: 360px;
}

/*
------------------------------------------------
簡易浮気調査
------------------------------------------------
*/

body.gps_body{
  
}

main.gps_main{

}

main.gps_main .common_link_section{
  padding: 40px 0;
}

main.gps_main .common_uwaki_section {
  padding: 50px 0 100px;
}

.gps_mv_section{
  background-image: url('../img/gps/gps_mv.jpg');
}

.gps_section{

}

.gps_section01{
  padding:80px 0 72px;
}

.gps_section01 .p01{
  line-height: 1.3;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;

}

.gps_section01 .banner{
  max-width:890px;
  margin:0 auto;
}

.gps_section01 .banner img{
  width:100%;
}

.gps_section02{
  padding:72px 0 80px;
  position: relative;
}

.gps_section02::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  top:0;
  left:0;
  z-index:-5;

}

.gps_section02 .p01{
  margin:0 auto 20px;
  width: fit-content;
  height: 72px;
  padding:0 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 36px;
  background-color: #264967;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #fff;
  position: relative;
}

.gps_section02 .p01::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 23px 12.5px 0 12.5px;
  border-color: #264967 transparent transparent transparent;
  position: absolute;
  left:0;
  right:0;
  bottom:-14px;
  margin:auto;
}

.gps_section02 .flex{
  display: flex;
  margin-bottom: 48px;
}

.gps_section02 .flex .left{
  width:100%;
  padding-right: 60px;
}

.gps_section02 .left .head_flex{
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}

.gps_section02 .left .head_flex img{
  width:130px;
  flex-shrink: 0;
  margin-right: 22px;
}

.gps_section02 .left .head_flex p{
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  color: #77642b;
}

.gps_section02 .left .price_box{
  margin-bottom: 24px;
  height: 100px;
  border-radius: 5px;
  border: solid 3px #264967;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.gps_section02 .left .price_box p{
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  color:#264967;
}

.gps_section02 .left .price_box p .num{
  font-family: 'Roboto', sans-serif;
  font-size: 34px;
  font-weight: 900;
  color:#264967;
}

.gps_section02 .left .price_box p .min{
  font-size: 22px;
  color:#264967;
}

.gps_section02 .left .info_text{
  line-height: 2;
}

.gps_section02 .flex .right{
  width:580px;
  padding-top: 24px;
  flex-shrink: 0;
}

.gps_section02 .right img{
  width:100%;
  border-radius: 5px;
}

.gps_section02 .white_box{
  padding:40px;
  border: solid 3px #dcdcdc;
  background-color: #fff;

}

.gps_section02 .white_box .head_text{
  display: flex;
  align-items: center;
  margin-bottom: 24px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}

.gps_section02 .white_box .head_text::before{
  content:"";
  margin-right: 10px;
  width: 16px;
  height: 2px;
  background-color: #264967;
}

.gps_section02 .white_box ul li{
  position: relative;
  line-height: 1.5;
  margin-bottom: 8px;
  padding-left: 20px;
}

.gps_section02 .white_box ul li::before{
  content:"";
  width:10px;
  height:10px;
  background-color: #ea5c6f;
  border-radius: 50%;
  position: absolute;
  left:2px;
  top:7.5px;
}

.gps_section02 .white_box ul li span{
  font-weight: bold;
  color: #ea5c6f;

}

.gps_section02 .white_box ul li:last-child{
  margin-bottom: 0;
}

.gps_section03{
  padding:120px 0 0;
}

.gps_section03 .point_list{
  margin-top: 48px;
  padding-bottom: 235px;
  margin-bottom: 56px;
  position: relative;
}

.gps_section03 .point_list .bg{
  position: absolute;
  z-index:-10;
  bottom:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width:1920px;
  min-width:100vw;
  height:1250px;
  object-position: bottom;
}

.gps_section03 .point_block{
  margin-bottom: 40px;
  background-color: #fff;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
  display: flex;
}

.gps_section03 .point_block:last-child{
  margin-bottom: 0;
}

.gps_section03 .point_block .thumb{
  width:560px;
  flex-shrink: 0;
}

.gps_section03 .point_block .thumb img{
  width:100%;
}

.gps_section03 .point_block .text_area{
  padding-top: 30px;
  width:100%;
}

.gps_section03 .point_block .num{
  margin-bottom: 24px;
  width: 140px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #264967;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.gps_section03 .point_block .text_set{
  padding-left: 48px;
  padding-right: 64px;
}

.gps_section03 .point_block .point_title{
  margin-bottom: 16px;
  font-family: 'Noto Serif JP', serif;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.46;
  color: #ea5c6f;
}

.gps_section03 .point_block .point_text{
  line-height: 1.88;
}

.gps_section03 .point_block .point_text span{
  font-weight: bold;
  color: #264967;
  background: linear-gradient(to top, rgba(38,73,103,0.15) 0%, rgba(38,73,103,0.15) 40%, transparent 40%, transparent 100%);
}

.gps_section03 .p01{
  text-align: center;
  margin-top: 40px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.03em;
  text-align: center;

}

.gps_section03 .p01 span{
  color: #ea5c6f;
  background: linear-gradient(to top, rgba(38,73,103,0.15) 0%, rgba(38,73,103,0.15) 40%, transparent 40%, transparent 100%);

}

/*
------------------------------------------------
調査の流れ
------------------------------------------------
*/

body.flow_body{
  
}

main.flow_main{

}

.flow_mv_section{
  background-image: url('../img/flow/flow_mv.jpg');
}

.flow_section{

}

.flow_section01{
  padding:80px 0 200px;
}

.flow_section01 .p01{
  margin-bottom: 88px;
  line-height: 2;
  text-align: center;
}

.flow_section01 .flow_block{
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 160px;
}

.flow_section01 .flow_block::before{
  content:"";
  width:100vw;
  height: 316px;
  background-color: #eef1f3;
  position: absolute;
  top:140px;
  z-index:-5;
}

.flow_section01 .flow_block:last-child{
  margin-bottom: 0;
}

.flow_section01 .flow_block .thumb{
  width:560px;
  flex-shrink: 0;
}

.flow_section01 .flow_block .thumb img{
  width:100%;
  border-radius: 5px;
}

.flow_section01 .flow_block .text_area{
  width:100%;
}

.flow_section01 .flow_block .head_flex{
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}

.flow_section01 .flow_block .num{
  margin-right: 12px;
  width: 100px;
  height: 35px;
  border-radius: 17.5px;
  border: solid 2px #264967;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #264967;
}

.flow_section01 .flow_block .flow_title{
  font-size: 32px;
  font-weight: 500;
  line-height: 1;
  color: #ea5c6f;
  font-family: 'Noto Serif JP', serif;
}

.flow_section01 .flow_block .flow_text{
  line-height: 2.13;
}

.flow_section01 .flow_block .flow_text span{
  color: #ea5c6f;
}

.flow_section01 .flow_block .flow_text.mini{
  margin-top: 16px;
}

.flow_section01 .flow_block .common_link_button{
  width:320px;
  margin: 32px 0 0 0;
}

.flow_section01 .flow_block .tel{
  font-family: 'Noto Serif JP', serif;
  margin-top: 32px;
  height: 60px;
  border-radius: 5px;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 34px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  pointer-events: none;
  
}

.flow_section01 .flow_block .tel::before{
  content:"";
  margin-right: 8px;
  width: 22px;
  height: 28px;
  margin-top: 4px;
  background-image: url('../img/common/sp_footer_tel.png');
}

.flow_section01 .flow_block .link_flex{
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
}

.flow_section01 .flow_block .link_flex{
  display: flex;
}

.flow_section01 .flow_block .link{
  width:280px;
  height:60px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
}

.flow_section01 .flow_block .link span{
  position: relative;
  transition: 0.4s;
  color:#fff;
  font-weight: bold;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.flow_section01 .flow_block .link span::before{
  content:"";
  margin-right: 8px;
  transition: 0.4s;
}

.flow_section01 .flow_block .contact_link{
  background-color: #264967;
  border:1px solid #264967;
}

.flow_section01 .flow_block .contact_link span::before{
  width:28px;
  height:22px;
  background-image: url('../img/common/sp_footer_mail.png');
  left:-36px;
}

.flow_section01 .flow_block .line_link{
  background-color: #00b900;
  border:1px solid #00b900;
}

.flow_section01 .flow_block .line_link span::before{
  width:35px;
  height:33px;
  background-image: url('../img/common/sp_footer_line.png');
  left:-40px;
}

@media(min-width:768px){
  .flow_section01 .flow_block .contact_link:hover{
    background-color: #fff;
  }

  .flow_section01 .flow_block .contact_link:hover span{
    color: #264967;
  }
  
  .flow_section01 .flow_block .contact_link:hover span::before{
    background-image: url('../img/common/header_mail.png');
  }
  
  .flow_section01 .flow_block .line_link:hover{
    background-color: #fff;
  }

  .flow_section01 .flow_block .line_link:hover span{
    color: #00b900;
  }
  
  .flow_section01 .flow_block .line_link:hover span::before{
    background-image: url('../img/common/header_line.png');
  }
}/*@media(min-width:768px){*/

.flow_section01 .flow_block:nth-child(odd){
  flex-direction: row;
}

.flow_section01 .flow_block:nth-child(odd)::before{
  right:360px;
}

.flow_section01 .flow_block:nth-child(odd) .text_area{
  padding-left: 60px;
}

.flow_section01 .flow_block:nth-child(even){
  flex-direction: row-reverse;
}

.flow_section01 .flow_block:nth-child(even)::before{
  left:360px;
}

.flow_section01 .flow_block:nth-child(even) .text_area{
  padding-right: 60px;
}

.flow_section01 .flow_block06 .common_link_button{
  padding-right: 16px;
}

/*
------------------------------------------------
弁護士・行政書士紹介
------------------------------------------------
*/

body.lawyer_body{
  
}

main.lawyer_main{

}

.lawyer_mv_section{
  background-image: url('../img/lawyer/lawyer_mv.jpg');
}

.lawyer_section{

}

.lawyer_section01{
  padding:80px 0 210px;
}

.lawyer_section01 .p01{
  margin-bottom: 72px;
  line-height: 1,3;
  display: flex;
  justify-content: center;
  align-items: center;
}


.lawyer_section01 .lawyer_text01{
  font-feature-settings: "palt";
  text-align: center;
  color:#264967;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 72px;
  white-space: nowrap;
}

.lawyer_section01 .lawyer_text01 .border{
  font-size: 40px;
  color:#264967;
  font-feature-settings: "palt";
  background: linear-gradient(to top, rgba(174,143,65) 0%, rgba(174,143,65) 4%, transparent 4%, transparent 100%);
}

.lawyer_section01 .lawyer_text01 .bg{
  color:#fff;
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: 600;
  margin:0 8px 8px;
  padding:0 40px;
}

.lawyer_section01 .lawyer_text01 .bg::before{
  content:"";
  width:100%;
  height:100%;  
  background-color: rgba(234,92,111);
  position: absolute;
  z-index:-1;
  top:0;
  left:0;
  transform: skewX(-13deg);
}

.lawyer_section01 .flex{
  display: flex;
  align-items: center;
  position: relative;
}

.lawyer_section01 .flex::before{
  content:"";
  width:100vw;
  height: 266px;
  background-color: #eef1f3;
  position: absolute;
  z-index:-5;
  top:145px;
  left:360px;
}

.lawyer_section01 .flex .left{
  width:100%;
  padding-right: 96px;
}

.lawyer_section01 .flex .left p{
  line-height: 2.13;
}

.lawyer_section01 .flex .right{
  width:560px;
  flex-shrink: 0;
}

.lawyer_section01 .flex .right img{
  width:100%;
  border-radius: 5px;
}

.lawyer_section02{
  padding-bottom: 120px;
}

.lawyer_section02 .merit_box{
  padding:40px;
  width:585px;
  border-radius: 5px;
  border: solid 3px #d4dbe1;
}

.lawyer_section02 .merit_box .thumb{
  width:505px;
  flex-shrink: 0;
  margin-bottom: 24px;
}

.lawyer_section02 .merit_box .thumb img{
  width:100%;
}

.lawyer_section02 .merit_box .text_area{
  width:100%;
}

.lawyer_section02 .merit_box .head_flex{
  display: flex;
  align-items: center;
  margin-bottom: 30px;
  font-family: 'Noto Serif JP', serif;
}

.lawyer_section02 .merit_box .head_flex .num{
  font-size: 50px;
  font-weight: normal;
  line-height: 1;
  position: relative;
  padding-bottom: 12px;
  color: #264967;
  flex-shrink: 0;
  margin-right: 24px;
}

.lawyer_section02 .merit_box .head_flex .num::after{
  content:"";
  width: 27px;
  height: 2px;
  background-color: #ea5c6f;
  position: absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}

.lawyer_section02 .merit_box .head_flex .merit_title{
  font-size: 24px;
  font-weight: 600;
  line-height: 1.42;
  color: #ea5c6f;
}

.lawyer_section02 .merit_box .merit_text{
  line-height: 1.75;
}

.lawyer_section02 .merit_box .merit_text span{
  color: #ea5c6f;
}

.lawyer_section02 .merit_box01{
  width:100%;
  margin-top: 48px;
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}

.lawyer_section02 .merit_box01 .thumb{
  margin-bottom: 0;
}

.lawyer_section02 .merit_box01 .text_area{
  padding-left: 64px;
}

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

.lawyer_section03{
  /* padding:120px 0 100px; */
  padding:120px 0 0;
  position: relative;
}

.lawyer_section03::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  z-index:-10;
  top:0;
  left:0;
}

.lawyer_section03 .area{
  margin-top: 72px;
  padding-bottom: 120px;
  position: relative;
}

.lawyer_section03 .area::before{
  content:"";
  width: 100vw;
  height:300px;
  background-color: #264967;
  z-index: -5;
  position: absolute;
  bottom:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.lawyer_section03 .area .back_text{
  font-family: 'Noto Serif JP', serif;
  position: absolute;
  bottom:-12px;
  z-index: -3;
  font-size: 120px;
  font-weight: 300;
  line-height: 1;
  color: rgba(255, 255, 255, 0.06);
}


.lawyer_section03 .kind{
  margin-bottom: 40px;
  display: flex;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1;
}

.lawyer_section03 .kind::before{
  content:"";
  margin-right: 14px;
  width: 4px;
  height: 35px;
  background-color: #ea5c6f;
}

.lawyer_section03 .lawyer_block{
  margin-bottom: 40px;
  padding:40px 48px;
  display: flex;
  align-items: center;
  overflow: hidden;
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
}

.lawyer_section03 .lawyer_block:last-child{
  margin-bottom: 0;
}

.lawyer_section03 .lawyer_block .thumb{
  height:250px;
  width:500px;
  flex-shrink: 0;
}

.lawyer_section03 .lawyer_block .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  border-radius: 5px;
}

.lawyer_section03 .lawyer_block .text_area{
  width:100%;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 56px;
  padding-right: 0;
}

.lawyer_section03 .lawyer_block .name_flex{
  font-family: 'Noto Serif JP', serif;
  display: flex;
  align-items: center;
  padding-left: 8px;
  /* margin-bottom: 20px; */
}

.lawyer_section03 .lawyer_block .name_flex .name01{
  font-size: 36px;
  font-weight: 500;
  line-height: 1.2;
  margin-right: 20px;
}

.lawyer_section03 .lawyer_block .name_flex .name02{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: #264967;
}

.lawyer_section03 .lawyer_block .office_name{
  display: flex;
  justify-content: center;
  align-items: center;
  width:fit-content;
  max-width:100%;
  margin-bottom: 16px;
  padding:10px 20px;
  border-radius: 35px;
  border: solid 1px #264967;
  background-color: rgba(38,73,103,0.1);
  font-weight: 500;
  line-height: 1.2;
  color: #264967;
}

.lawyer_section03 .lawyer_block .catch_text{
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #ea5c6f;
}

.lawyer_section03 .lawyer_block .intro_text{
  margin-bottom: 20px;
  line-height: 1.75;
}

.lawyer_section03 .lawyer_block .list_box{
  padding:24px 32px;
  border-radius: 5px;
  background-color: #eef1f3;
}

.lawyer_section03 .lawyer_block .list_box li{
  margin-bottom: 8px;
  line-height: 1.4;
  position: relative;
  padding-left: 16px;
}

.lawyer_section03 .lawyer_block .list_box li:last-child{
  margin-bottom: 0;
}

.lawyer_section03 .lawyer_block .list_box li::before{
  content:"";
  width:9px;
  height:9px;
  border-radius: 50%;
  background-color: #264967;
  position: absolute;
  left:0;
  top:7px;
}

.lawyer_section03 .lawyer_area{

}

.lawyer_section03 .lawyer_area .back_text{
  right:calc(50% - 50vw - 12px);
}

.lawyer_section03 .scrivener_area{

}

.lawyer_section03 .scrivener_area .lawyer_block{
  /* flex-direction: row-reverse; */
}

.lawyer_section03 .scrivener_area .lawyer_block .text_area{
  width:100%;
  /* padding-top: 12px;
  padding-bottom: 12px;
  padding-right: 60px;
  padding-left: 48px; */
}

.lawyer_section03 .scrivener_area .back_text{
  left:calc(50% - 50vw - 12px);
}


/*
------------------------------------------------
料金プラン
------------------------------------------------
*/

body.price_body{
  
}

main.price_main{

}

.price_mv_section{
  background-image: url('../img/price/price_mv.jpg');
}

.price_section{

}

.price_section01{
  padding:80px 0 120px;
}

.price_section01 .anchor_list{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 64px;
  border-radius: 5px;
  border: solid 1px #dcdcdc;
  overflow: hidden;
}

.price_section01 .anchor_list .link{
  cursor: pointer;
  width:16.67%;
  height:80px;
  border-right:1px solid #dcdcdc;
  padding:0 1.2%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: bold;
  font-size: 15px;
  letter-spacing: 0.02em;
  white-space: nowrap;
  line-height: 1.31;
}

.price_section01 .anchor_list .link::after{
  content:'';
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-image: url('../img/common/button_bottom.svg');
  transition: 0.4s;
}

.price_section01 .anchor_list .link:last-child{
  border-right:none;
}

@media(min-width:768px){
  .price_section01 .anchor_list .link:hover::after{
    transform: translateY(8px);
  }
}

.price_section01 h2{
  text-align: center;
  margin-bottom: 16px;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.3;
  color: #ea5c6f;
}

.price_section01 h2 span{
  color: #ea5c6f;
  background: linear-gradient(to top, rgba(223,228,232) 0%, rgba(223,228,232) 25%, transparent 25%, transparent 100%);

}

.price_section01 .p01{
  margin-bottom: 40px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  display: flex;
  justify-content: center;
  align-items: center;
}

.price_section01 .block{
  border-radius: 5px;
  border: solid 3px #f9ced4;
  overflow: hidden;
}

.price_section01 .block .block_head{
  font-size: 38px;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
  color: #fff;
  padding:40px 16px;
  background-color: #ea5c6f;
  
}

.price_section01 .block .block_body{
  padding:48px 100px 32px;
}

.price_section01 .block .p02{
  margin-bottom: 36px;
  line-height: 2;
}

.price_section01 .flex{
  padding: 40px 0;
  border-top:1px solid #d0d0d0;
  display: flex;
  justify-content: center;
}

.price_section01 .flex .border{
  flex-shrink: 0;
  width:1px;
  background-color: #d0d0d0;
}

.price_section01 .flex .free_block{
  width:50%;
}

.price_section01 .flex .free_block_left{
  padding-right: 40px;
}

.price_section01 .flex .free_block_right{
  padding-left: 40px;
}

.price_section01 .free_block .free_title{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  display: flex;
  align-items: center;
}

.price_section01 .free_block .free_title::before{
  content:"無料";
  width: 70px;
  height: 35px;
  border-radius: 17.5px;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 10px;
  flex-shrink: 0;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  font-size: 16px;
}

.price_section01 .free_block .free_text{
  margin-top: 16px;
  line-height: 2;
}

.price_section01 .free_block .free_text.mini{
  font-size: 14px;
  line-height: 1.6;
}

.price_section01 .free_block .free_text span{
  font-weight: bold;
  color: #ea5c6f;
  padding-bottom: 5px;
  background: linear-gradient(to top, #ea5c6f 0%, #ea5c6f 4%, transparent 4%, transparent 100%);
}

.price_section01 .free_block .pic{
  width:100%;
  margin-top: 16px;
}

.price_section01 .free_block .list_box{
  padding:28px;
  border-radius: 5px;
  background-color: #eef1f3;
  margin-top: 16px;
}

.price_section01 .free_block .list_box li{
  margin-bottom: 8px;
  display: flex;
  line-height: 1.5;
}

.price_section01 .free_block .list_box li::before{
  content:"";
  width:9px;
  height:9px;
  border-radius: 50%;
  background-color:#264967;
  flex-shrink: 0;
  margin-right: 12px;
  margin-top: 8px;
}

.price_section01 .free_block .list_box li:last-child{
  margin-bottom: 0;
}

.price_section02{
  padding:0 0 80px;
}

.price_section02 .p01{
  margin-top: 40px;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
}

.price_section02 .plan_list{
  margin-bottom: 80px;
}

.price_section02 .plan_block{
  margin-bottom: 40px;
  border-radius: 5px;
  overflow: hidden;
}

.price_section02 .plan_block:last-child{
  margin-bottom: 0;
}

.price_section02 .plan_block .plan_head{
  padding:20px;
  position: relative;
}

.price_section02 .plan_block .plan_head::before{
  content:"";
  width:100%;
  height:100%;
  position: absolute;
  z-index:-3;
  top:0;
  left:0;
}

.price_section02 .plan_block .plan_head01{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 48px;
  margin: 0 auto 20px;
  border-radius: 24px;
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}

.price_section02 .plan_block .plan_body{
  padding:48px 100px 60px;
}

.price_section02 .plan_block .contents_block{
  padding:40px 0;
  border-bottom:1px solid #d0d0d0;
}

.price_section02 .plan_block .contents_block:first-child{
  padding-top: 0;
}

.price_section02 .plan_block .contents_block:last-child{
  padding-bottom: 0;
  border-bottom: none;
}

.price_section02 .plan_block .price_period{
  color: #264967;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.price_section02 .plan_block .price_period .num{
  font-size: 20px;
  font-family: 'Roboto', sans-serif;
  color: #264967;
}

.price_section02 .plan_block .price_period .min{
  font-size: 14px;
  color: #264967;
}

.price_section02 .plan_block .plan_text{
  line-height: 1.88;
}

.price_section02 .plan_block .plan_text.text_center{
  text-align: center;
}

.price_section02 .plan_block .example_list{

}

.price_section02 .plan_block .example_list li{
  display: flex;
  margin-bottom: 20px;
}

.price_section02 .plan_block .example_list li:first-child{
  width: 60px;
  height: 35px;
  border-radius: 17.5px;
  background-color: #264967;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.price_section02 .plan_block .example_list .example_left{
  flex-shrink: 0;
  width: 150px;
  height: 40px;
  border-radius: 5px;
  border: solid 1px #264967;
  background-color: rgba(233,236,240);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #264967;
}

.price_section02 .plan_block .example_list .example_right{
  width:100%;
  padding-left: 32px;
  line-height: 1.88;
  padding-top: 4px;
}

.price_section02 .green_block{
  border: solid 3px #8ad9c7;
}

.price_section02 .green_block .plan_head::before{
  background-color: #20b392;
}

.price_section02 .green_block .plan_head .plan_head01{
  background-color: #fff;
  color: #1ab18f;
}

.price_section02 .green_block .plan_head .plan_head01::after{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 9px 0 9px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom: -5px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: -1;
}

.price_section02 .green_block .plan_head .plan_head02{
  font-family: 'Noto Serif JP', serif;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
}

.price_section02 .green_block .plan_head .plan_head02 img{
  width: 25px;
  margin-right: 8px;
}

/* .price_section02 .green_block .plan_head .plan_head02::before{
  content: "";
  width: 25px;
  height: 33px;
  background-image: url(../img/top/top_plan_icon.png);
  margin-right: 8px;
} */

.price_section02 .pink_block{
  border: solid 3px #f5b9c3;
}

.price_section02 .pink_block .plan_head::before{
  background-color: #fceaed;

}

.price_section02 .pink_block .plan_head .plan_head01{
  background-color: #808080;
  color: #fff;
}

.price_section02 .pink_block .plan_head .plan_head01::after{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 9px 0 9px;
  border-color: #808080 transparent transparent transparent;
  position: absolute;
  bottom: -5px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: -1;
}

.price_section02 .pink_block .plan_head .plan_head02{
  font-family: 'Noto Serif JP', serif;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;

}

.price_section02 .plan_remark_area{
  margin-bottom: 56px;
}

.price_section02 .plan_remark_area .plan_remark_title{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}

.price_section02 .plan_remark_area .plan_remark_title::before,
.price_section02 .plan_remark_area .plan_remark_title::after{
  content:"";
  width: 30px;
  height: 1px;
  background-color: #264967;
}

.price_section02 .plan_remark_area .plan_remark_title::before{
  margin-right: 16px;
}

.price_section02 .plan_remark_area .plan_remark_title::after{
  margin-left: 16px;
}

.price_section02 .plan_remark_area .gray_box{
  /* padding:32px 0 32px 120px; */
  padding:32px 0 32px 48px;
  border: solid 3px #dcdcdc;
}

.price_section02 .plan_remark_area .dot_list{

}

.price_section02 .plan_remark_area .dot_list li{
  margin-bottom: 16px;
  line-height: 1.5;
  position: relative;
  padding-left: 20px;
}

.price_section02 .plan_remark_area .dot_list li::before{
  content:"";
  width:9px;
  height:9px;
  background-color:#ea5c6f;
  border-radius: 50%;
  position: absolute;
  top:8px;
  left:0;
}

.price_section02 .plan_remark_area .dot_list li span{
  font-weight: bold;
  color: #ea5c6f;
}

.price_section02 .plan_remark_area .dot_list li:last-child{
  margin-bottom: 0;
}

.price_section02 .plan_remark_area02{
  margin-bottom: 0;
}

.price_section02 .plan_remark_area02 .gray_box{
  display: flex;
  align-items: center;
}

.price_section02 .plan_remark_area02 .dot_list{
  display: flex;
}

.price_section02 .plan_remark_area02 .dot_list li{
  margin-bottom: 0;
  margin-right: 40px;
}

.price_section02 .plan_remark_area02 .dot_list li:last-child{
  margin-right: 0;
}

.price_section02 .plan_remark_area02 .credit_list{
  display: flex;
  justify-content: center;
  align-items: center;
  gap:0 8px;
  margin-left: 12px;
}

.price_section02 .plan_remark_area02 .credit{
  height:39px;
  border:1px solid #dddddd;
}


/*
------------------------------------------------
浮気・不倫調査
------------------------------------------------
*/

body.uwaki_body{
  
}

main.uwaki_main{

}

main.uwaki_main .common_link_section{
  padding: 40px 0;
}

main.uwaki_main .common_uwaki_section {
  padding: 50px 0 100px;
}


.uwaki_mv_section{
  background-image: url('../img/uwaki/uwaki_mv.jpg');
}

.uwaki_section{

}

.uwaki_section01{
  padding:64px 0 64px;
}

.uwaki_section01 .p01{
  margin-bottom: 110px;
  line-height: 2;
  text-align: center;
}

.uwaki_section01 .box{
  position: relative;
  margin-bottom: 56px;
  border: solid 3px #dcdcdc;
  background-color: #fff;
}

.uwaki_section01 .box::before{
  content:"";
  width:100vw;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  z-index:-3;
  top:-50px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.uwaki_section01 .box::after{
  content:"";
  bottom:-29px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 58px 52px 0 52px;
  border-color: #7d92a4 transparent transparent transparent;
  position: absolute;
  left:0;
  right:0;
  margin:auto;
}

.uwaki_section01 .box .box_head{
  padding:20px;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #fff;
  background-color: #264967;
}

.uwaki_section01 .box_body{
  padding:40px 170px;
}

.uwaki_section01 .box_body ul{
  display: flex;
  flex-wrap: wrap;
}

.uwaki_section01 .box_body ul li{
  width:50%;
  margin-bottom: 32px;
  line-height: 1.5;
  position: relative;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.03em;
  padding-left: 54px;
  font-feature-settings: "palt";
}

.uwaki_section01 .box_body ul li::before{
  content:"";
  width: 33px;
  height: 33px;
  border-radius: 3px;
  border: solid 2px #ccc;
  position: absolute;
  left:0;
  top:-2px;
}

.uwaki_section01 .box_body ul li::after{
  content:"";
  width:33px;
  height:24px;
  background-image: url('../img/common/check_pink.png');
  position: absolute;
  left:10px;
  top:3px;
}


.uwaki_section01 .p02{
  font-size: 40px;
  font-weight: 500;
  line-height: 1.45;
  text-align: center;
  color: #ea5c6f;
}


.uwaki_section02{
  padding:72px 0 50px;
  background-image: url('../img/uwaki/uwaki_necessity_bg.jpg');
  background-position: top;
}

.uwaki_section02 .necessity_title{
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #fff;
  margin-bottom: 60px;
}

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

.uwaki_section02 .block{
  width: 585px;
  height: 626px;
  border-radius: 5px;
  background-color: #fff;
  margin-bottom: 30px;
  padding:40px 40px 0;
}

.uwaki_section02 .block .block_head{
  display: flex;
  align-items: center;
  margin-bottom: 24px;
  font-family: 'Noto Serif JP', serif;
}

.uwaki_section02 .block .block_head .num{
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: #fff;
  flex-shrink: 0;
}

.uwaki_section02 .block .block_head .block_title{
  padding-left: 14px;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  color: #ea5c6f;
}

.uwaki_section02 .block .pic{
  width:100%;
  margin-bottom: 24px;
  border-radius: 5px;
}

.uwaki_section02 .block .block_text{
  line-height: 1.75;
}

.uwaki_section03{
  padding:64px 0;
}

.uwaki_section03 .p01{
  margin-bottom: 64px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
}

.uwaki_section03 .support_bg{
  position: relative;
  padding:64px 0 190px;
}

.uwaki_section03 .support_bg::before{
  content:"";
  width:1920px;
  min-width:100vw;
  height:100%;
  background-image: url('../img/uwaki/uwaki_support_bg.jpg');
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index:-5;
}

.uwaki_section03 .support_catch{
  font-family: 'Noto Serif JP', serif;
  font-size: 40px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  color: #fff;
  width:fit-content;
  max-width: 100%;
  margin:0 auto;
  position: relative;
}

.uwaki_section03 .support_catch .icon{
  width:224px;
  position: absolute;
  z-index:-2;
  right:-224px;
  top:-50px;
}

.uwaki_section03 .support_catch p{
  color: #fff;
}

.uwaki_section03 .support_catch01{
  margin-bottom: 36px;
}

.uwaki_section03 .support_catch span{
  color: #fff;
  position: relative;
}

.uwaki_section03 .support_catch span::before{
  content:"";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  left:0;
  right:0;
  margin:0 auto;
  top:-4px;
}

.uwaki_section03 .white_box{
  background-color: #fff;
  padding: 64px 50px 54px;
  border-radius: 5px;
  background-color: #fff;
  margin-top: -130px;
  display: flex;
  justify-content: space-between;
}

.uwaki_section03 .support_block{
  width: 530px;
  padding: 54px 40px 20px 40px;
  border-radius: 5px;
  border: solid 3px #264967;
  background-color: #eef1f3;
  position: relative;
}

.uwaki_section03 .support_block .support_head{
  width: 380px;
  height: 54px;
  border-radius: 27px;
  background-color: #264967;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top:-27px;
  left:0;
  right:0;
  margin:auto;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.uwaki_section03 .support_block ul{
  display: flex;
  flex-wrap: wrap;
}

.uwaki_section03 .support_block ul li{
  min-width:50%;
  padding-right: 12px;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.45;
  letter-spacing: 0.03em;
  margin-bottom: 24px;
  display: flex;
}

.uwaki_section03 .support_block ul li::before{
  content:"";
  width: 11px;
  height: 11px;
  background-color: #ea5c6f;
  border-radius: 50%;
  flex-shrink: 0;
  margin-right: 12px;
  margin-top: 10px;
}

.uwaki_section04{
  /* padding-bottom: 120px; */
}

.uwaki_section04 .reason_list{
  margin-top: 48px;
  margin-bottom: 60px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.uwaki_section04 .block{
  width: 585px;
  height: 320px;
  border-radius: 5px;
  border: solid 3px #d4dbe1;
  background-color: #fff;
  padding:40px 40px 0;
}

.uwaki_section04 .block{
  width: 585px;
  height: 320px;
  padding: 40px;
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
  
}

.uwaki_section04 .block .head_flex{
  display: flex;
  align-items: center;
  font-family: 'Noto Serif JP', serif;  
  margin-bottom: 32px;
}

.uwaki_section04 .block .head_flex .icon{
  margin-right: 16px;
  width:110px;
  flex-shrink: 0;
}

.uwaki_section04 .block .head_flex .icon img{
  width:100%;
  border-radius: 50%;
}

.uwaki_section04 .block .head_flex .right{
  display: flex;
  align-items: center;
}

.uwaki_section04 .block .head_flex .num{
  flex-shrink: 0;
  font-size: 50px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: #264967;
  margin-right: 24px;
  padding-bottom: 12px;
  position: relative;
}

.uwaki_section04 .block .head_flex .num::after{
  content:"";
  width: 27px;
  height: 2px;
  background-color: #ea5c6f;
  position: absolute;
  bottom:0;
  right:0;
  left:0;
  margin:auto;
}

.uwaki_section04 .block .head_flex .head_text{
  font-size: 24px;
  font-weight: 500;
  color: #264967;
  line-height: 1.42;
}

.uwaki_section04 .block .head_flex .head_text span{
  font-weight: 600;
  color: #ea5c6f;
}

.uwaki_section04 .block .strength_text{
  line-height: 1.75;
}

.uwaki_section04 .block01,
.uwaki_section04 .block02{
  margin-bottom: 30px;
}

.uwaki_section05{
  padding:120px 0;
  position: relative;
  
}

.uwaki_section05::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  top:0;
  left:0;
  z-index:-3;
}

.uwaki_section05 .p01{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  margin-bottom: 40px;
  line-height: 1.3;
}

.uwaki_section05 .p02{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #ea5c6f;
  display: flex;
  justify-content: center;
  align-items: center;
}

.uwaki_section05 .point_list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.uwaki_section05 .point_block{
  width: 285px;
  height: 341px;
  border-radius: 5px;
  border: solid 1px #264967;
  background-color: #fff;
}

.uwaki_section05 .point_block .point_head{
  padding:24px 16px;
  background-color: #264967;
}

.uwaki_section05 .point_block .point_head p{
  height: 45px;
  border-radius: 22.5px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #264967;
}

.uwaki_section05 .point_block .point_body{
  padding:24px 32px;
  line-height: 1.75;
}

.uwaki_section06{

}

.uwaki_section07{
  padding:120px 0;
  position: relative;
}

.uwaki_section07::before{
  content:"";
  width:100%;
  height:100%;
  background-color: #eef1f3;
  position: absolute;
  top:0;
  left:0;
  z-index:-3;
}

.uwaki_section07 .case_block{
  margin-top: 40px;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
  border-radius: 5px;
  overflow: hidden;
}

.uwaki_section07 .case_block .case_switch{
  cursor: pointer;
  position: relative;
  padding:24px 72px 24px 40px;
  background-color: #264967;
}

.uwaki_section07 .case_block .case_switch::after{
  content:"";
  width:24px;
  height:24px;
  background-image: url('../img/common/plus_white.svg');
  position: absolute;
  right:30px;
  top:0;
  bottom:0;
  margin:auto;
}

.uwaki_section07 .case_block .case_switch.active::after{
  height:2px;
  background-image: url('../img/common/minus_white.svg');
}

.uwaki_section07 .case_block .switch01{
  width: 70px;
  height: 22px;
  border-radius: 11px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #264967;
}

.uwaki_section07 .case_block .switch02{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
}

.uwaki_section07 .case_block .case_contents{
  padding:48px 40px;
  background-color: #fff;
  display: none;
  
}

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

.uwaki_section07 .case_block .left,
.uwaki_section07 .case_block .right{
  width:530px;
}

.uwaki_section07 .case_block .border{
  height: 1px;
  background-color: #d0d0d0;
  margin:40px 0;
}

.uwaki_section07 .case_block .case_title{
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
}

.uwaki_section07 .case_block .case_title::before{
  content:"";
  width: 4px;
  height: 32px;
  background-color: #ea5c6f;
  margin-right: 12px;
}

.uwaki_section07 .case_block .case_info{
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 20px;
}

.uwaki_section07 .case_block .case_text{
  line-height: 1.88;
}

.uwaki_section07 .case_block .case_close{
  width: 260px;
  height: 50px;
  border-radius: 25px;
  border: solid 1px #264967;
  background-color: #eef1f3;
  margin:40px auto 0;
  cursor: pointer;
  font-weight: bold;
  line-height: 1;
  color: #264967;
  display: flex;
  justify-content: center;
  align-items: center;
}

.uwaki_section08{
  padding:120px 0;
}

.uwaki_section08 .p01{
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
  margin-top: 40px;
  margin-bottom: 32px;
}

.uwaki_section08 .common_link_button{
  margin-top: 50px;
}

/*
------------------------------------------------
お客様の声
------------------------------------------------
*/

body.voice_body{
  
}

main.voice_main{

}

.voice_mv_section{
  background-image: url('../img/voice/voice_mv.jpg');
}

.voice_section{

}

.voice_section01{
  padding:80px 0 120px;
}

.voice_section01 .p01{
  margin-bottom: 72px;
  line-height: 2;
  text-align: center;
}

.common_pagenation_frame{
  width:fit-content;
  max-width:100%;
  margin:64px auto 0;
}


.common_pagenation{
 
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.common_pagenation span.current{/*現在のページボタン*/
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #264967;
  color: #ffffff;
  border: 1px solid #264967;
  
  font-weight: bold;
  line-height: 1;
  transition: 0.4s;
  display: flex;
  justify-content: center;
  align-items: center;
  margin:8px 16px;
}

.common_pagenation a.page-numbers{/*指定のページ移動ボタン*/
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid #264967;
  color: #264967;
  font-weight: bold;
  line-height: 1;
  transition: 0.4s;
  display: flex;
  justify-content: center;
  align-items: center;
  margin:8px 16px;
}

.common_pagenation a.page-numbers.prev{
  background-color: none;

  background-image: url('../img/common/page_prev_off.svg');
  background-size: cover;
}

.common_pagenation a.page-numbers.next{
  background-color: none;

  background-image: url('../img/common/page_next_off.svg');
  background-size: cover;
}

@media(min-width:768px){
  .common_pagenation a.page-numbers:hover{
    background: #264967;
    color: #ffffff;
  }

  .common_pagenation a.page-numbers:hover.next{ 
    background-image: url('../img/common/page_next_on.svg');
    background-size: cover;
  }

  .common_pagenation a.page-numbers:hover.prev{ 
    background-image: url('../img/common/page_prev_on.svg');
    background-size: cover;
  }
}/*@media(min-width:768px){*/


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

body.faq_body{
  
}

main.faq_main{

}

.faq_mv_section{
  background-image: url('../img/faq/faq_mv.jpg');
}

.faq_section{

}

.faq_section01{
  padding:80px 0 120px;
}

.faq_section01 .p01{
  margin-bottom: 72px;
  line-height: 1.77;
  text-align: center;
}

.faq_section01 .flex{
  display: flex;

}

.faq_section01 .flex .left{
  width:250px;
  flex-shrink: 0;
  margin-right: 40px;
}

.faq_section01 .left ul{

}

.faq_section01 .left ul li{
  border-bottom:1px solid #dcdcdc;
}

.faq_section01 .left .faq_category_item{
  padding:24px 0;
  font-weight: bold;
  line-height: 1;
  opacity: 0.45;
  transition: 0.4s;
  position: relative;
  cursor: pointer;
}

.faq_section01 .left .faq_category_item::after{
  content:"";
  width:20px;
  height:20px;
  border-radius: 50%;
  background-image: url('../img/common/button_on.svg');
  position: absolute;
  right:12px;
  top:0;
  bottom:0;
  margin:auto;
  transition: 0.4s;
  opacity: 0;
}

.faq_section01 .left .faq_category_item.active{
  opacity: 1;
  pointer-events: none;
}

.faq_section01 .left .faq_category_item.active::after{
  opacity: 1;
}

.faq_section01 .flex .right{
  width:100%;
  position: relative;
}

.faq_section01 .faq_head{
  text-align: center;
  font-size: 22px;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  margin-bottom: 24px;
}

.faq_section01 .faq_category_sec{
  display: none;
}

.faq_section01 .faq_category_sec01{
  display: block;
}


/*
------------------------------------------------
お問い合わせ
------------------------------------------------
*/

body.contact_body{
  
}

main.contact_main{

}

.contact_mv_section{
  background-image: url('../img/contact/contact_mv.jpg');
}

.contact_section{

}

.contact_section01{
  padding:80px 0 60px;
}

.contact_section01 .p01{
  line-height: 2;
  text-align: center;
}

.contact_section02{
  padding:60px 0 160px;
  background-color: #eef1f3;

}

.contact_section02 .white_box{
  border-radius: 5px;
  background-color: #fff;
  padding:80px 100px;
  box-shadow: 0 0 32px rgba(38,73,103,0.08);
}

.contact_section02 .step_list{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32px;
}

.contact_section02 .step_block{
  width:30%;
  height:70px;
  border-radius: 35px;
  display: flex;
  align-items: center;
  padding:0 20px;
  background-color: #eee;
}

.contact_section02 .step_block .icon_frame{
  margin-right: 16px;
  flex-shrink: 0;
  
}

.contact_section02 .step_block .icon{
  width:50px;
  height:50px;
  border-radius: 50%;
  object-fit: cover;
}

.contact_section02 .step_block .icon_on{
  display: none;
}

.contact_section02 .step_block .step_text01{
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  color: #808080;
  margin-bottom: 4px;
}

.contact_section02 .step_block .step_text02{
  font-size: 18px;
  font-weight: bold;
  line-height:1;
  color: #808080;
}

.contact_section02 .step_block.active{
  background-color: #ea5c6f;
}

.contact_section02 .step_block.active .step_text01,
.contact_section02 .step_block.active .step_text02{
  color:#fff;
}

.contact_section02 .step_block.active .icon_off{
  display: none;
}

.contact_section02 .step_block.active .icon_on{
  display: block;
}

.contact_section02 .step_list .step_arrow{
  width:12px;
}


.mw_contact_block{

}

.mw_contact_block  .mw_wp_form .error{
  width:100%;
}

.mw_contact_block .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0;
}

.mw_contact_block .form_line{
  padding:30px 0;
  border-bottom:1px solid #ddd;
  position: relative;
  display: flex;
}

.mw_contact_block .form_line::before{
  content:"";
  width: 220px;
  height: 1px;
  background-color: #264967;
  position: absolute;
  left:0;
  bottom:-1px;
}

.mw_contact_block .form_line .form_left{
  width:220px;
  flex-shrink: 0;
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  color: #264967;
  line-height: 1;
  padding-top: 14px;
}

.mw_contact_block .form_line .form_left p{
  display: none;
}

.mw_contact_block .form_line .form_left::after{
  content:"必須";
  width: 42px;
  height: 24px;
  border-radius: 2px;
  background-color: #ee3847;
  font-size: 12px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  margin-top: -4px;
}

.mw_contact_block .form_line .form_left.free::after{
  content:"任意";
  background-color: #999;
}

.mw_contact_block .form_line .form_right{
  width:100%;
  padding-left: 32px;
  
}

.mw_contact_block .form_line .text_input{
  display: block;
  width:100%;
  max-width:560px;
  height:50px;
  border:none;
  background: none;
  border-radius: 4px;
  border: solid 1px #ccc;
  background-color: #f5f5f5;
  padding:0 20px;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;

}

.mw_contact_block .form_line .age_list{
  padding-top: 8px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap:16px 32px;
}


.mw_contact_block .form_line .select_frame{
  position: relative;
}

.mw_contact_block .form_line .select_frame::after{
  content:"";
  position: absolute;
  right:16px;
  top:20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 5px 0 5px;
  border-color: #333 transparent transparent transparent;
  pointer-events: none;
}

.mw_contact_block .form_line .select_frame select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width:100%;
  height: 50px;
  padding: 0 40px 0 23px;
  border-radius: 4px;
  border: solid 1px #ccc;
  background-color: #f5f5f5;
  color: #333;
  text-align: left;
  font-weight: 400;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;

}

.mw_contact_block .form_line .prefecture_block{
  width:300px;
  max-width:100%;
}

.mw_contact_block .form_line textarea{
  width: 100%;
  height: 230px;
  padding: 24px;
  border-radius: 4px;
  border:none;
  background: none;
  border: solid 1px #ccc;
  background-color: #f5f5f5;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;

}

.mw_contact_block .privacy_area{
  margin:40px 0 24px;
}

.mw_contact_block .privacy_area .privacy01{
  font-weight: bold;
  color: #264967;
  line-height: 1;
  margin-bottom: 16px;
}

.mw_contact_block .privacy_area .privacy_box{
  padding:24px 32px;
  height: 220px;
  border: solid 1px #ddd;
  overflow-y: scroll;
  margin-bottom: 24px;
}

.mw_contact_block .privacy_area .privacy_box .privacy_head{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 8px;
}

.mw_contact_block .privacy_area .privacy_box .privacy_text{
  margin-bottom: 24px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.86;
}

.mw_contact_block .privacy_area .privacy02{
  line-height: 1.75;
  text-align: center;
}

.mw_contact_block .agree_box{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding:24px;
  background-color: #eef1f3;
  gap:20px;
  margin-top: 24px;
}

.mw_contact_block .agree_box .must{
  width: 42px;
  height: 24px;
  border-radius: 2px;
  background-color: #ee3847;
  font-size: 12px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  margin-top: 0px;
}

.mw_contact_block .agree_box label{
  font-weight: bold;
}

.mw_contact_block .submit_area{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: 40px;
}

.mw_contact_block .submit_area .submit_frame{
  position: relative;
  width: 400px;
  max-width: 100%;
  cursor: pointer;
}

.mw_contact_block .submit_area .submit_frame br{
  display: none;
}

.mw_contact_block .submit_area .submit_frame::after{
  pointer-events: none;
  content:"";
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-image:url('../img/contact/submit_arrow.svg');
  background-size:cover ;
  transition: 0.4s;
  position: absolute;
  right:16px;
  top:23px;
}

.mw_contact_block .submit_area .submit_frame .submit{
  border:none;
  background: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width:100%;
  height: 70px;
  border-radius: 5px;
  border:1px solid #20b392;
  background-color: #20b392;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  cursor: pointer;
  transition: 0.4s;
}

.mw_contact_block .recaptcha_text{
  width:fit-content;
  margin:32px auto 0;

}

.mw_contact_block .recaptcha_text a{
  text-decoration: underline;
  color:#333;
}




@media(min-width:768px){
  .mw_contact_block .submit_area .submit_frame:hover::after{
    background-image:url('../img/contact/submit_arrow_on.svg');
    background-size:cover ;
  }

  .mw_contact_block .submit_area .submit_frame:hover .submit{
    background-color: #fff;
    color: #20b392;
  }
}

/*確認画面*/
.mw_contact_block .submit_area .return{
  border:none;
  background: none;
  font-size: 18px;
  padding:0 16px 4px;
  font-weight: 500;
  color:#333;
  cursor: pointer;
  border-bottom:1px solid #333;
  margin-top: 40px;
}

.mw_contact_block .mw_wp_form_confirm .form_line .form_left {
  padding-top: 4px;
}

.mw_contact_block .mw_wp_form_confirm .form_line .age_list{
  padding-top: 0;
  
}

.mw_contact_block .mw_wp_form_confirm .form_line .select_frame::after{
  content:none;
}

.mw_contact_block .mw_wp_form_confirm .privacy_area{
  display: none;
}

.mw_contact_block .mw_wp_form_confirm .recaptcha_text{
  display: none;

}

.mw_contact_block .complete_text{
  line-height: 1.5;
  display: flex;
  justify-content: center;
}


/*
------------------------------------------------
探偵読み物/お知らせ
------------------------------------------------
*/

body.column_body{
  
}

main.column_main{

}

.column_mv_section{
  background-image: url('../img/column/column_mv.jpg');
}

.column_section{

}

.column_section01{
  padding:80px 0 200px;

}


.column_section01 .flex{
  display: flex;
}

.column_section01 .column_article{
  width:100%;
}

.column_section01 .column_list{
  display: flex;
  /* justify-content: space-between; */
  flex-wrap: wrap;
  gap:24px 2%;
}

.column_section01 .column_list li{
  margin-bottom: 32px;
  width:31.5%;
}

.column_section01 .column_list .card{
  
  display: block;
  border-radius: 5px;
  overflow: hidden;
  transition: 0.4s;
  box-shadow: 0 0 32px rgba(178,55,72,0.08);
}

@media(min-width:768px){
  .column_section01 .column_list .card:hover{
    opacity: 0.7;
  }
}

.column_section01 .column_list .card .thumb{
  /* height: 220px; */
  height: 152px;
}

.column_section01 .column_list .card .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.column_section01 .column_list .card .thumb .def_thumb{
  width:100%;
  height:100%;
  background-color: #eef1f3;
}

.column_section01 .column_list .card .thumb.def{
  width:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  /* background-color: rgba(228,228,228); */
  background-color: #fff;
  padding:4px 6px;
}

.column_section01 .column_list .card .thumb.def .def_frame{
  width:100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border:1px solid #264967;
  background-color: #fff;
}

.column_section01 .column_list .card .thumb.def img{
  width:90%;
  height:auto;
}

.column_section01 .column_list .card .card_body{
  padding:16px 12px;
  height:120px;
  background-color: #fff;

}

.column_section01 .column_list .card .info_flex{
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.column_section01 .column_list .card .date{
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  line-height: 1;
  color: #ea5c6f;
  flex-shrink: 0;
  font-size: 14px;
}

.column_section01 .column_list .card .cat_box{
  min-width: 100px;
  height: 28px;
  margin-left: 12px;
  padding: 0 12px;
  border-radius: 14px;
  border: solid 1px #264967;
  background-color: rgba(233,236,240);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  color: #264967;
}

.column_section01 .column_list .card .column_title{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.56;
  color: #333;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.column_section01 #sidebar{
  width:250px;
  flex-shrink: 0;
  margin-left: 100px;
}

.column_section01 #sidebar .sidebar_head{
  display: flex;
  justify-content: center;
  align-items: center;
  height:50px;
  border-radius: 5px 5px 0 0;
  background-color: #264967;
  font-weight: bold;
  color:#fff;
  line-height: 1.3;
}

.column_section01 #sidebar .side_category_area{
  margin-bottom: 40px;
}

.column_section01 #sidebar .side_category_list li{
  border-bottom:1px solid #dcdcdc;
}

.column_section01 #sidebar .side_category_link{
  display: block;
  padding:16px 32px 16px 8px;
  position: relative;
  color:#333333;
  font-weight: 400;
  line-height: 1.3;
}

.column_section01 #sidebar .side_category_link::after{
  content:"";
  width:18px;
  height:18px;
  border-radius: 50%;
  background-image: url('../img/common/button_on.svg');
  position: absolute;
  right:12px;
  top:0;
  bottom:0;
  margin:auto;
  transition: 0.4s;
}

@media(min-width:768px){
  .column_section01 #sidebar .side_category_link:hover::after{
    transform: translateX(8px);

  }
}

.column_section01 #sidebar .recent_list{

}

.column_section01 #sidebar .recent_list li{
  border-bottom:1px solid #dcdcdc;
}

.column_section01 #sidebar .recent_list .mini_card{
  display: flex;
  padding:20px 0;
}

.column_section01 #sidebar .recent_list .mini_card .thumb{
  width:80px;
  height:60px;
  flex-shrink: 0;
}

.column_section01 #sidebar .recent_list .mini_card .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.column_section01 #sidebar .recent_list .mini_card .thumb .def_thumb{
  width:100%;
  height:100%;
  background-color: #eef1f3;
}

.column_section01 #sidebar .recent_list .mini_card .thumb.def{

  display: flex;
  justify-content: center;
  align-items: center;
  /* background-color: rgba(228,228,228); */
  background-color: #fff;
  padding:1px 2px;
}

.column_section01 #sidebar .recent_list .mini_card .thumb.def .def_frame{
  width:100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border:1px solid #264967;
  background-color: #fff;
}

.column_section01 #sidebar .recent_list .mini_card .thumb.def img{
  width:90%;
  height:auto;
}

.column_section01 #sidebar .recent_list .mini_card .card_body{
  width:100%;
  padding-left: 12px;
}

.column_section01 #sidebar .recent_list .mini_card .info_flex{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4px;
}

.column_section01 #sidebar .recent_list .mini_card .date{
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  line-height: 1;
  color: #ea5c6f;
  flex-shrink: 0;
  font-size: 14px;
  margin-right: 6px;
}

.column_section01 #sidebar .recent_list .mini_card .cat_box{
  width: 75px;
  /* height: 20px; */
  padding: 5px 2px;
  border-radius: 14px;
  border: solid 1px #264967;
  background-color: rgba(233,236,240);
  /* display: flex;
  justify-content: center;
  align-items: center; */
  text-align: center;
  
  font-size: 10px;
  font-weight: 500;
  line-height: 1;
  color: #264967;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.column_section01 #sidebar .recent_list .mini_card .column_title{
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color: #333;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}


.column_section01 .single_block{
  
}


.column_section01 #toc_container{
  border:1px solid #264967;
  overflow: hidden;
  margin-bottom: 40px;
  padding:0;
  border-radius: 5px 5px 0 0;
  background-color: #eef1f3;
}

.column_section01 #toc_container .toc_title{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #264967;
  
  font-size: 18px;
  color:#fff;
  line-height: 1;
  font-weight: bold;
  height:45px;
}

.column_section01 #toc_container .toc_title::before{
  content:"";
  width:26px;
  height:17px;
  background-image: url('../img/column/head_icon.png');
  margin-right: 10px;
}

.column_section01 #toc_container .toc_list{
  margin:0;
  padding:24px;
}

.column_section01 #toc_container .toc_list>li{
  margin-bottom: 24px;
}

.column_section01 #toc_container .toc_list>li>a{
  font-size: 18px;
  font-weight: bold;
  color:#264967;
  line-height: 1.5;
  display: flex;
  width:fit-content;
}

.column_section01 #toc_container .toc_list>li:hover>a .toc_number{
  text-decoration: none;
}

.column_section01 #toc_container .toc_list>li>a .toc_number{
  width:30px;
  height:30px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-right: 10px;
  background-color: rgba(38,73,103,0.15);
  color:#264967;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold; 
}

.column_section01 #toc_container .toc_list>li:last-child{
  margin-bottom: 0;
}

.column_section01 #toc_container .toc_list>li ul{
  margin-left: 40px;
}

.column_section01 #toc_container .toc_list>li ul li{
  margin-top: 10px;
}

.column_section01 #toc_container .toc_list>li ul li a{
  font-weight: 400;
  line-height: 1.5;
  font-size: 16px;
}

.column_section01 #toc_container .toc_list>li ul li a .toc_number{
  color:#264967;
  font-weight: bold;
}

.column_section01 .single_block mark{
  background-color: transparent;
}



.column_section01 .single_block .column_h1{
  margin-bottom: 40px;
  border-top:3px solid #264967;
  border-bottom:3px solid #264967;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
  color:#264967;
  padding:16px 2px;
}

.column_section01 .single_block h2{
  margin: 32px 0;
  pointer-events: none;
  position: relative;
  padding-left: 20px;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
}

.column_section01 .single_block h2::before{
  content:"";
  width:5px;
  height:100%;
  background-color: #264967;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);

}

.column_section01 .single_block h3{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin: 24px 0;
  border-bottom:1px solid #dddddd;
  padding-bottom: 12px;
}

.column_section01 .single_block p{
  line-height: 2;
  margin: 32px 0;
}

.column_section01 .single_block a{
  color: #ea5c6f;
}

.column_section01 .single_block a:hover{
  opacity: 0.7;
}

.column_section01 .single_block a em{
  color: #ea5c6f;
}

.column_section01 .single_block a strong{
  color: #ea5c6f;
}

.column_section01 .single_block figure{
  margin-top: 32px;
  margin-bottom: 32px;
}

.column_section01 .single_link_flex{
  margin-top: 120px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding:0 50px;
}

.column_section01 .single_link_flex .link{
  width:30%;
}

.column_section01 .single_link_flex .link a{
  display: flex;
  justify-content: center;
  align-items: center;
  width:100%;
  height:60px;
  border-radius: 5px;
  position: relative;
  transition: 0.4s;
  border:1px solid #264967;
  font-weight: bold;
  line-height: 1;
  color: #264967;
}

.column_section01 .single_link_flex .link a::after{
  content:"";
  transition: 0.4s;
  width:20px;
  height:20px;
  border-radius: 50%;
  background-image: url('../img/common/button_on.svg');
  position: absolute;
  top:0;
  bottom:0;
  margin:auto;
}

.column_section01 .single_link_flex .link_next a::after{
  right:16px;
}

.column_section01 .single_link_flex .link_prev a::after{
  left:16px;
  transform: rotateZ(180deg);
}

.column_section01 .single_link_flex .link_home{
  width:32.5%;
  height:60px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
  font-weight: bold;
  line-height: 1;
  color:#fff;
  background-color: #264967;
}

.column_section01 .single_link_flex .link_home::before{
  content:"";
  width:15px;
  height:15px;
  background-image: url('../img/column/link_home_white.png');
  margin-right: 8px;
}

@media(min-width:768px){
  .column_section01 .single_link_flex .link_next:hover a::after{
    transform: translateX(8px);
  }
  
  .column_section01 .single_link_flex .link_prev:hover a::after{
    transform: rotateZ(180deg) translateX(8px);
  }

  .column_section01 .single_link_flex .link_home:hover{
    opacity: 0.7;
  }
}

/*
------------------------------------------------
404
------------------------------------------------
*/

body.def_body{
  
}

main.def_main{

}

.def_section{

}

.def_section01{
  padding:80px 0;
}

.def_section01 .p01{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 32px;
}

.def_section01 .p02{
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.7;
}