@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root{
  --bg-img-setting: no-repeat center center / contain;
  
  --content-width: min((335vw / 3.75), 1104px);
  --font-size-pc: 14px;
  --font-size-sp: calc(16vw / 3.75);
  --font-sans: 'Noto Sans JP', sans-serif;
  --content-font-size: min(var(--font-size-sp), var(--font-size-pc));
  --content-hover-speed: 0.3s;
  --content-icon-link: url(/cmn/icon/icon_launch_white.svg);
}
.breadcrumb ul.breadlist{
  width: min(100%, 1280px);
  margin: auto;
}
.main{
  width: min(100%, 1280px);
  margin: auto;
  font-family: var(--font-sans);
  font-size: var(--content-font-size);
  font-weight: normal;
  color: #2C2A29;
  position: relative;
  line-height: 1.5
}
.main *{
  box-sizing: border-box;
}
.pc .nopc{
  display: none;
}
.sp .nosp{
  display: none
}
.inner{
  width: var(--content-width);
  margin: auto
}
.pc .head__wrapper{
  width: 100%;
  height: 489px;
  background: url("../img/pc.jpg") no-repeat center top / cover;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sp .head__wrapper{
  width: 100%;
  height: 100%;
  margin-bottom: calc(4vw / 3.75);
}
.mv-title{
  text-align: center
}

.main__wrapper{
  background: #F5F7FA;
}
.about__container{
  padding: min((40vw / 3.75), 64px) 0 min((40vw / 3.75), 88px);
  background: #E0EDFF;
  position: relative
}
.about__container::before{
  content: "";
  background: var(--bg-img-setting) url("../img/peaple_1.png");
  position: absolute;
}
.about__container::after{
  content: "";
  background: var(--bg-img-setting) ;
  position: absolute;
}
.pc .about__container::before{
  width: 134px;
  height: 120px;
  top: min((20vw / 3.75), 95px);
  left: 54px;
}
.pc .about__container::after{
  background-image: url("../img/peaple_2_pc.png");
  width: 124px;
  height: 141px;
  top: min((20vw / 3.75), 84px);
  right: 66px;
}
.pc.is-ipad .about__container::before{
  left: 0
}
.pc.is-ipad .about__container::after{
  right: 0
}

.sp .about__container::before{
  width: calc(122vw / 3.75);
  height: calc(109vw / 3.75);
  top: calc(255vw / 3.75);
  left: calc(-17vw / 3.75);
}
.sp .about__container::after{
  background-image: url("../img/peaple_2_sp.png");
  width: calc(115vw / 3.75);
  height: calc(122vw / 3.75);
  top: calc(248vw / 3.75);
  right: calc(5vw / 3.75);
  z-index: 5
}

.head-title{
  font-size: min((36vw / 3.75), 36px);
  text-align: center;
  margin-bottom: min((40vw / 3.75), 40px);
  padding-bottom: min((24vw / 3.75), 24px);
  position: relative;
  line-height: 1.0
}
.head-title::after{
  content: "";
  background-color: #10069F;
  width: min((60vw / 3.75), 60px);
  height: min((4vw / 3.75), 4px);
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto
}
.about__txt{
  font-size: min((16vw / 3.75), 16px);
  color: #333;
  text-align: center;
  line-height: 180%;
  margin-bottom: min((40vw / 3.75), 40px);
}
.about__list{
  display: flex;
  flex-wrap: wrap;
  gap: min((24vw / 3.75), 24px);
  position: relative;
  z-index: 10
}
.about__list>li{
  width: calc((100% - 24px) / 2);
  background: #FFF;
  border-radius: min((8vw / 3.75), 8px);
  box-shadow: 0 1px 4px 1px rgba(0 0 0 / 15%);
  padding: min((24vw / 3.75), 24px);
  text-align: center;
}
.sp .about__list>li{
  width: 100%;
  
}
.about__name{
  font-size: min((26vw / 3.75), 26px);
  padding-top: min((72vw / 3.75), 48px);
  margin-bottom: min((16vw / 3.75), 16px);
  position: relative;
}
.about__name::before{
  content: "";
  background: var(--bg-img-setting) url("../img/verified_user.png");
  width: min((36vw / 3.75), 36px);
  height: min((36vw / 3.75), 36px);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto
}
.about__link{
  width: min((256vw / 3.75), 256px);;
  margin: auto;
}
.about__link>a{
  display: block;  
  background: #10069F;
  border-radius: 100px;
  color: #FFF;
  text-align: center;
  padding: min((16vw / 3.75), 16px);;
  line-height: 1.0;
  position: relative;
}
.about__link>a::after{
  content: "";
  background: var(--bg-img-setting) var(--content-icon-link);
  width: 18px;
  height: 18px;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto
}

.condition__container{
  padding: 40px 0 96px;
}
.is-14b{
  font-weight: bold;
  text-align: center;
}
.company_wrapper{
  margin-bottom: 40px;
}
.company__midashi{
  margin-bottom: 40px;
}
.company__list{
  display: flex;
  flex-wrap: wrap;
  gap: min((40vw / 3.75), 24px);
}
.company__list>li{
  width: 100%;
  background: #FFF;
}
.pc .company__list>li{
  padding: 24px 0 24px 65px;
  display: flex;
  gap: 79px;
  align-items: center
}
.sp .company__list>li{
  padding: calc(24vw / 3.75);
}
 
.company__logo{
  width: min((221vw / 3.75), 221px);
}
.sp .company__logo{
  margin: 0 auto calc(16vw / 3.75);
  position: relative
}
.sp .company__logo::before{
  content: "＜引受保険会社＞";
  display: block;
  font-size: calc(12vw / 3.75);
  text-align: center;
  margin-bottom: calc(16vw / 3.75)
}
.company__txt{
  flex: 1;
  font-size: min((12vw / 3.75), 12px);
  line-height: 150%
}
.notice__wrapper{
  padding: min((24vw / 3.75), 24px) 0;
  margin-bottom: min((24vw / 3.75), 40px);
}
.notice__for__customer{
  font-size: min((12vw / 3.75), 12px);
  text-align: center;
}
.notice__midashi{
  margin: min((14vw / 3.75), 16px) auto;
}
.notice__list>li{
  font-size: min((12vw / 3.75), 12px);
  line-height: 200%;
}
.notice__list>li>a{
  text-decoration: underline
}
.sp .notice__list>li{
  line-height: 150%;
}
.sp .notice__list>li+li{
  margin-top: calc(16vw / 3.75)
}
.notice__end__txt{
  letter-spacing: 2.0em
}
.sp .shop__midashi{
  font-size: calc(14vw / 3.75);
  margin-bottom: calc(24vw / 3.75)
}
.shop__list{
  display: flex;
  gap: min((24vw / 3.75), 24px);
  padding-bottom: min((24vw / 3.75), 24px);
}
.sp .shop__list{
  flex-wrap: wrap
}
.pc .shop__list>li{
  width: calc((100% - 24px) / 2);
  text-align: center;
  padding: 24px 0;
  display: flex;
}
.sp .shop__list>li{
  width: 100%;
  text-align: center;
}
.pc .shop__list>li:first-child{
  flex-direction: row-reverse
}
.pc .shop__list__data{
  min-width: 260px;
}

.shop__ad,
.shop__txt{
  font-size: min((12vw / 3.75), 12px);
  text-align: center
}