@charset "utf-8";
/* ------------------------------
RESET
------------------------------ */
html{font-size: 62.5%; -webkit-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1;}
body{color: #242424; background: #ffffff; line-height: 1.6; word-spacing: 0; font-size: 1.6rem; font-family: 'Noto Sans JP', sans-serif;
-webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -moz-text-size-adjust: 100%; overflow-x: hidden;}

*{margin: 0; padding: 0; box-sizing: border-box; border: 0; outline: none;}
h1, h2, h3, h4, h5, h6{font-size: 100%; font-weight: bold;}
ol, ul{list-style: none;}
table{border-collapse: collapse; border-spacing: 0;}
a{color: inherit; text-decoration: none;cursor: pointer;}
img{vertical-align: bottom; max-width: 100%; height: auto;}

/* ------------------------------
TOOLS
------------------------------ */
.container{margin: 0 auto; max-width: 1000px; width: calc(100% - 20px);}
.clearFix:after{display: block; clear: both; height: 0; visibility: hidden; content: ".";}
.cap{text-align: center;font-size: 1.2rem;}
.center{text-align: center !important;}
.left{text-align: left !important;}
.right{text-align: right !important;}
.bold{font-weight: bold;}
.w-full{width: 100%;}
.clr-Orange{color: #ff4700;}
.anchorlink{position: relative;}
.anchorlink > div{position: absolute; top: 0; left: 0;}
.txtlink{text-decoration: underline; color: #5c1bc6;}
.txtlink:hover{opacity: .7;}
.mt-15{margin-top: 15px;}
.text-shadow{text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 3px #fff, 0 0 4px #fff, 0 0 5px #fff, 0 0 6px #fff, 0 0 7px #fff, 0 0 8px #fff, 0 0 9px #fff, 0 0 10px #fff, 0 0 11px #fff, 0 0 12px #fff, 0 0 13px #fff;}
.dFlex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media (min-width: 768px){
  a[href^="tel:"]{pointer-events: none;}
  .only-sp{display: none !important;}
}

@media (max-width: 767px){
  :root {
    --Font-size-10: calc( ( 100vw / 390 ) * 10 );
    --Font-size-12: calc( ( 100vw / 390 ) * 12 );
    --Font-size-14: calc( ( 100vw / 390 ) * 14 );
    --Font-size-16: calc( ( 100vw / 390 ) * 16 );
    --Font-size-18: calc( ( 100vw / 390 ) * 18 );
    --Font-size-19: calc( ( 100vw / 390 ) * 19 );
    --Font-size-20: calc( ( 100vw / 390 ) * 20 );
    --Font-size-21: calc( ( 100vw / 390 ) * 21 );
    --Font-size-24: calc( ( 100vw / 390 ) * 24 );
    --Font-size-28: calc( ( 100vw / 390 ) * 28 );
    --Font-size-30: calc( ( 100vw / 390 ) * 30 );
    --Font-size-32: calc( ( 100vw / 390 ) * 32 );
    --Font-size-34: calc( ( 100vw / 390 ) * 34 );
    --Font-size-36: calc( ( 100vw / 390 ) * 36 );
    --Font-size-42: calc( ( 100vw / 390 ) * 42 );
    --Font-size-46: calc( ( 100vw / 390 ) * 46 );
    --Font-size-52: calc( ( 100vw / 390 ) * 52 );
    --Font-size-64: calc( ( 100vw / 390 ) * 64 );
    --Font-size-96: calc( ( 100vw / 390 ) * 96 );
  }

  .only-pc{display: none !important;}
  body{font-size: 1.4rem; line-height: 1.6;}
  .anchorlink > div{top: -64px;}   
}

@media print {
  body{color-adjust: exact; -webkit-print-color-adjust: exact; print-color-adjust: exact;}
}

/* ------------------------------
HEADER
------------------------------ */
header {
  position: sticky;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 999;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
  & .content {
    display: flex; 
    align-items: center;
    justify-content: space-between; 
    padding: 16px;
  }
  & .menu {
    display: flex;
    justify-content: flex-end;
  }
  & .login {
    padding: 8px 20px;
    border-radius: 20px;
    background-color: #ff4700;
    line-height: 1;
    color: #ffffff;
    &:hover {
      opacity: 0.7;
    }
  }
  & .link-user2 { 
    flex-basis: 280px; position: relative;
    & .balloon { 
      position: absolute; 
      width: 22.85%; 
      top:-26.92%; 
      left: -18.57%; 
    }
    & a {
      transition: opacity 0.5s linear 0s;
      &:hover {
        opacity: 0.7;
      }
    }
  }
  & .join__company__link {
    background: #FA8C1E;
    display: flex;
    flex-basis: 246px;
    height: 40px;
    border-radius: 8px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    gap:5px;
    justify-content: center;
    align-items: center;
    align-self: center;
    margin-right: 60px;
    font-weight: normal;
    & .text {
      & br {
        display: none;
      }
    }
    & .icon {
      width: 1em;
      height: 1em;
      background: url(../img/icon_arrow_participation.svg) center center / 100% 100% no-repeat;
    }
    &:hover {
      opacity: 0.7;
      transition: opacity 0.5s linear 0s;
    }
  }
  & .agent__link {
    display: flex;
    border: var(--red01) solid 2px;
    border-radius: 10px;
    font-size: var(--size16);
    background: var(--red01);
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 1em;
    height: 2.5em;
    color: #fff;
    align-items: center;
    gap:0.5em;
    line-height: 1;
    align-self: center;
    &:hover {
      opacity: 0.7;
    }
    &:after {
      display: block;
      content: '';
      width: 0.6em;
      height: 0.8em;
      clip-path: polygon(0 0,0 100%, 100% 50%);
      background: #fff;
      transform: translateY(1px);
    }
  }
}
.group__logo {
  width: 100%; 
  padding: 8px 16px;
  border-bottom: #f1f1f1 solid 1px;
  & a {
    display: block; 
    width: 75%; 
    max-width: 240px; 
    line-height: 1;
  }
}
@media (max-width: 767px){
  .group__logo { 
    padding: 8px 0;
  }
  header {
    padding: 0 0 0 16px;
    & .content {
      padding: 0;
    }
    & h1 {
      width: unset;
    }
    & .menu {
      height: 65px;
    }
    & .login {
      width: 65px;
      font-size: 1.2rem;
      border-radius: 0;
      flex-direction: column;
      align-items: center;
      padding: 8px;
    }
    & .link-user2 {
      height: 50px; 
      align-self: center; 
      flex-basis: 168px; 
      margin-right: 10px;
      & .balloon {
        width: 33.33%; 
        top:-2px; 
        left: -22.61%;
      }
    }
    & .join__company__link {
      flex-basis: 150px;
      height: 46px;
      border-radius: 8px;
      font-size: 12px;
      transform: translateY(-1px);
      line-height: 1.1;
      margin-right: 40px;
      & .text {
        & br {
          display: inline;
          &.sp480 {
            display: none;
          }
        }
      }
      & .icon {
        width: 1.5em;
        height: 1.5em;
      }
    }
    .agent__link {
      margin-right: 10px;
    }
  }
}
@media screen and ( max-width:480px) {
  header {
    & .join__company__link {
      flex-basis: 10em;
      font-size: 2.5vw;
      line-height: 1.1;
      height: 40px;
      & .text {
        & br {
          &.sp480 {
            display: inline;
          }
        }
      }
      & .icon {
        width: 1.2em;
        height: 1.2em;
      }
    }
    & .link-user2 {
      flex-basis: 140px;
      height: 40px;
    }
  }
}

/* ------------------------------
FOOTER
------------------------------ */
footer{ 
  background-color: #f4f4f4;
  padding: 50px 0;
  & .tit-f {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    & p {
      font-size: 2.2rem;
    }
  }
  & .note {
    font-size: 1.4rem;
  }
  & .mv-txt-f {
    margin: 40px 0;
  }
}
#float_btn {
  position: fixed; 
  bottom:20px; 
  right: 43px; 
  width: 147px; 
  z-index: 2;
  & a {
    transition: opacity 0.5s linear 0s;
    &:hover {
      opacity: 0.7;
    }
  }
  & .baloon {
    position: absolute; 
    width: 57px; 
    top:5px; 
    right: -9.52%;
  }
}
@media (max-width: 1920px){
  footer {padding-bottom:120px;}
}
@media ( max-width:768px) {
	#float_btn { 
    width: 112px; 
    right: 20px; 
    bottom: 10px;
    & .balloon {
      width: 44px;
    }
  }
}
@media (max-width: 480px){
  footer {
    & .mv-txt-f {
      width: 60%;
      margin-top: 10px;
    }
  }
}


/* ------------------------------
MAIN VISUAL
------------------------------ */
.main__visual {
  position: relative;
  background: url(../img/agent/bg_main_01.png) center center / 100% 100% no-repeat;
  & .content {
    & img {
      width: 100%;
      height: auto;
    }
  }
}
@media screen and ( max-width:767px) {
  .main__visual {
    & .only-sp {
      background: var(--gold01);
      & p {
        font-size: var(--Font-size-14);
        padding: 0.5em 0;
        text-align: center;
        color: #fff;
        & .line {
          font-size: var(--Font-size-16);
          text-decoration: underline;
        }
      }
    }
    & .content {
      
    }
  }
}
/* ------------------------------
COMPANY
------------------------------ */
.company {
  padding: 80px 0 100px 0;
  background: #fff;
  text-align: center;
  & .content {
    & h3 {
      font-size: var(--size26);
      font-weight: 700;
      margin: 0 auto 40px auto;
    }
    & .list__track {
      width: max-content;
      display: flex;
      animation: marquee 20s linear infinite;
      margin: 40px 0 0 0;
    }
    & ul {
      max-width: none;
      width: auto;
      display: inline-flex;
      white-space: nowrap;
      flex-wrap: nowrap;
      justify-content: space-between;
      gap:20px;
      align-items: center;
      padding: 0 20px 0 0;
      & li {
        border-radius: 10px;
        height: 68px;
        background: #fff;
        overflow: hidden;
        padding: 10px 20px;
        flex-shrink: 0;
        flex-grow: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        &.no__space {
          padding: 0;
          & img {
            height: 68px;
            width: auto;
          }
        }
        & img {
          height: 48px;
          width: auto;
        }
      }
    }
    & .note {
      margin: 40px auto 0 auto;
      & p {
        font-size: var(--size12);
      }
    }
    & .link {
      margin: 10px 0 0 0;
      & a {
        font-size: var(--size16);
        text-decoration: underline;
      }
    }
  }
}
@keyframes marquee {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX( calc( -100% / 2 ) );
  }
}
@media screen and ( max-width:767px ) {
  .company {
    padding: var(--Font-size-36) 0 var(--Font-size-36);
    & .content {
      & h3 {
        font-size: var(--Font-size-24);
      }
      & .note {
        & p {
          font-size: var(--Font-size-12);
        }
      }
      & .link {
        & p {
          font-size: var(--Font-size-16);
        }
      }
    }
  }
}
/* ------------------------------
WORRIES
------------------------------ */
.worries {
  background: var(--cream01) url(../img/agent/bg_worries_01.png) center bottom / 100% auto no-repeat;
  padding: 100px 0 13.19vw 0 ;
  & .content {
    width: calc( 100% - 40px );
    max-width: 1100px;
    margin: 0 auto;
    & h3 {
      font-size: var(--size36);
      font-weight: 700;
      text-align: center;
    }
    & .card__list {
      width: 100%;
      max-width: 820px;
      margin: 36px auto 0 auto;
      & ul {
        gap:20px;
        flex-basis: calc( ( 100% - 40px ) / 3 );
      }
    }
    & .arrow {
      display: block;
      width: 100px;
      height: 40px;
      background: var(--gold01);
      clip-path: polygon(0 0 , 50% 100% , 100% 0);
      margin: 50px auto 0 auto;
    }
    & h4 {
      font-size: var(--size24);
      text-align: center;
      font-weight: 700;
      margin: 40px auto 0 auto;
      & .big {
        color: var(--red01);
        font-size: var(--size40);
        text-decoration: underline;
        text-decoration-thickness: 10px;
        text-underline-offset: -5px;
        text-decoration-color: var(--yellow02);
      }
    }
    & figure {
      margin: 24px auto 0 auto;
    }
  }
}
@media screen and ( max-width:767px ) {
  .worries {
    padding: var(--Font-size-36) 0 var(--Font-size-64) 0;
    background: var(--cream01) url(../img/agent/bg_worries_01.png) center bottom / 170% auto no-repeat;
    & .content {
      width: 100%;
      & h3 {
        font-size: var(--Font-size-24);
      }
      & .card__list {
        width: 71.28%;
        max-width: none;
      }
      & h4 {
        font-size: var(--Font-size-24);
        & .big {
          font-size: var(--Font-size-42);
        }
      }
      & figure {
        width: 73.3%;
      }
    }
  }
}
/* ------------------------------
OPERATION
------------------------------ */
.operation {
  background: url(../img/agent/bg_operation_01.png) center center / cover no-repeat;
  padding: 10px 0;
  & .content {
    width: calc( 100% - 40px );
    max-width: 1240px;
    margin: 0 auto;
    background: linear-gradient(270deg, rgba(255, 255, 255, 0.00) 0%, #FFF 15%, #FFF 85%, rgba(255, 255, 255, 0.00) 100%);
    padding: 40px 40px 50px 40px;
    & h3 {
      text-align: center;
      font-size: var(--size36);
      font-weight: 700;
    }
    & .logo {
      width: 80%;
      max-width: 560px;
      margin: 12px auto 0 auto
    }
    & .dFlex {
      width: 100%;
      max-width: 630px;
      margin:60px auto 0 auto;
      gap:50px;
      & .text__box {
        flex-basis: calc( ( 100% - 50px ) / 2 );
        & h4 {
          font-size: var(--size24);
          font-weight: 600;
          text-align: center;
          padding: 0 0 0.75em 0;
          margin: 0 0 0.75em 0;
          border-bottom: var(--red01) solid 2px;
        }
        & p {
          font-size: var(--size16);
        }
      }
    }
  }
}
@media screen and ( max-width:767px ) {
  .operation {
    padding: 0 0 var(--Font-size-32) 0;
    background: url(../img/agent/bg_operation_01_sp.png) center bottom / cover no-repeat;
    & .content {
      width: 100%;
      padding: 0;
      background: none;
      & h3 {
        background: #fff;
        padding: 1em 0 0 0;
        margin: 0;
        font-size: var(--Font-size-24);
      }
      & .logo {
        width: 100%;
        background: #fff;
        max-width: none;
        margin:0;
        padding: 0 0 20px 0;
        & img {
          display: block;
          width: 80%;
          margin: 0 auto;
        }
      }
      & .dFlex {
        background: #fff;
        width: 80%;
        margin: var(--Font-size-32) auto 0 auto;
        gap:var(--Font-size-32);
        padding:var(--Font-size-24) ;
        & .text__box {
          flex-basis: 100%;
          & h4 {
            font-size: var(--Font-size-21);
          }
          & p {
            font-size: var(--Font-size-16);
          }
        }
      }
    }
  }
}
/* ------------------------------
SERVICE
------------------------------ */
.service {
  padding: 40px 0 40px 0;
  & .content {
    width: calc( 100% - 40px );
    max-width: 780px;
    margin: 0 auto;
    & h3 {
      text-align: center;
      font-size: var(--size36);
      font-weight: 700;
    }
    & p {
      text-align: center;
      color: var(--red01);
      line-height: 1.5;
      font-size: var(--size24);
    }
    & figure {
      margin: 24px auto 0 auto;
    }
  }
}
@media screen and ( max-width:767px ) {
  .service {
    & .content {
      & h3 {
        font-size: var(--Font-size-24);
      }
      & p {
        font-size: var(--Font-size-20);
        margin-top: 1em;
      }
      & figure {
        margin-top: var(--Font-size-24);
      }
    }
  }
}
/* ------------------------------
CONNECT
------------------------------ */
.connect {
  background: var(--yellow01) url(../img/agent/bg_connect_01.png) left center / auto 100% no-repeat;
  padding: 60px 0;
  & .content {
    width: calc( 100% - 40px );
    max-width: 720px;
    margin: 0 auto;
    & h3 {
      font-size: var(--size36);
      font-weight: 700;
      text-align: center;
    }
    & p {
      font-size: var(--size20);
      margin: 1em 0 0 0;
      text-align: center;
    }
    & ul {
      gap:20px;
      margin: 32px auto 0 auto;
      & li {
        flex-basis: calc( ( 100% - 20px ) / 2 );
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        font-size: var(--size22);
        background: var(--gold01);
        height: 4em;
        border-radius: 2em;
        color: #fff;
        text-align: center;
      }
    }
    & .arrow {
      display: block;
      width: 100px;
      height: 40px;
      background: var(--red01);
      clip-path: polygon(0 0 , 50% 100% , 100% 0);
      margin: 50px auto 0 auto;
    }
    & h4 {
      font-size: var(--size40);
      color: var(--red01);
      text-align: center;
      font-weight: 700;
      margin: 40px auto 0 auto;
    }
  }
}
@media screen and ( max-width:767px ) {
  .connect {
    background: var(--yellow01) url(../img/agent/bg_connect_01_sp.png) center top / 100% auto no-repeat;
    padding: 50vw 0 var(--Font-size-46) 0;
    & .content {
      & h3 {
        font-size: var(--Font-size-24);
      }
      & p {
        font-size: var(--Font-size-20);
      }
      & ul {
        &.dFlex {
          & li {
            flex-basis: 100%;
            font-size: var(--Font-size-20);
          }
        }
      }
      & h4 {
        font-size: var(--Font-size-36);
      }
    }
  }
}
/* ------------------------------
REASON
------------------------------ */
.reason {
  background: url(../img/agent/bg_reason_01.png) center bottom / cover no-repeat;
  padding: 100px 0;
  & .content {
    width: calc( 100% - 40px );
    max-width: 900px;
    margin: 0 auto;
    & h3 {
      font-size: var(--size40);
      text-align: center;
      font-weight: 700;
      margin: 0 auto 50px auto;
      line-height: 1.3;
      & .red {
        color: var(--red01);
      }
    }
    & .reason__box {
      position: relative;
      overflow: hidden;
      border-radius: 20px;
      background: #fff;
      padding: 50px ;
      box-shadow: 0 5px 5px 5px rgba(0,0,0,0.1);
      & .num {
        position: absolute;
        background: var(--red01);
        color: #fff;
        left: 0;
        top:0;
        font-size: var(--size18);
        display: block;
        text-align: center;
        padding: 1.5em 2em 1.5em 1em; 
        line-height: 1;
        width: 10em;
        box-sizing: border-box;
        clip-path: polygon(0 0 , 0 100% , 60% 100%, 100% 0);
        & span {
          font-size: 200%;
          display: block;
        }
      }
      & h4 {
        font-size: var(--size32); padding: 0 0 0 4em;
        margin: 0 0 50px 0;
        
      }
      & .reason__list {
        & ul {
          & li {
            display: block;
            position: relative;
            background: var(--yellow01);
            border-radius: 10px;
            font-size: var(--size22);
            padding: 0.75em 1em 0.75em 3.5em;
            & + li {
              margin-top: 16px;
            }
            &:before {
              content: '';
              display: block;
              width: 1.72em;
              height: 1.72em;
              background: url(../img/agent/icon_reason_01.png) center center / 100% 100% no-repeat;
              position: absolute;
              left:0.75em;
              top:50%;
              transform: translateY(-50%);
            }
          }
        }
      }
      & + .reason__box {
        margin-top: 50px;
      }
    }
  }
}
@media screen and ( max-width:767px ) {
  .reason {
    background: url(../img/agent/bg_reason_01_sp.png) center bottom / cover no-repeat;
    & .content {
      & .reason__box {
        padding: var(--Font-size-64) var(--Font-size-24) var(--Font-size-32) var(--Font-size-24);
        & .num {
          font-size: var(--Font-size-18);
          padding: 0.5em 0 0.5em 1.5em;
          width: 9em;
          text-align: left;
          clip-path: polygon(0 0 , 0 100% , 80% 100%, 100% 0);
          & span {
            display: inline-block;
            margin: 0 0 0 0.5em;
            vertical-align: ideographic;
          }
        }
        & h4 {
          padding: 0;
          font-size: var(--Font-size-24);
          margin: 0 0 1em 0;
        }
        .reason__list {
          & ul {
            & li {
              font-size: var(--Font-size-16);
            }
          }
        }
        & .note {
          margin-top: 10px;
          & p {
            text-align: right;
            font-size: var(--Font-size-12);
          }
        }
      }
    }
  }
}
/* ------------------------------
COMPARE
------------------------------ */
.compare {
  padding: 100px 0;
  & .content {
    width: calc( 100% - 40px );
    max-width: 1020px;
    margin: 0 auto;
    & .compare__box {
      padding: 0 0 70px 0;
      & h3 {
        font-size: var(--size40);
        font-weight: 700;
        text-align: center;
        & .light {
          display: inline-block;
          width: 2em;
          vertical-align: sub;
        }
        & .small {
          font-size: 65%;
        }
      }
      & h4 {
        font-size: var(--size36);
        font-weight: 700;
        text-align: center;
        & .balloon {
          display: block;
          width: 25rem;
          margin: 0 auto 20px auto;
        }
        & .red {
          color: var(--red01);
        }
      }
      & p {
        text-align: center;
        margin: 20px auto 0 auto;
      }
      & table {
        width: 100%;
        margin: 40px auto 0 auto;
        & thead {
          & tr {
            & th {
              border: var(--gold01) solid 1px;
              font-size: var(--size28);
              text-align: center;
              background: var(--gray01);
              padding: 0.5em 0.5em;
              &.taqsie {
                background: var(--gold01);
                color: #fff;     
              }
              & .sub {
                font-size: var(--size12);
                display: block;
              }
            }
          }
        }
        & tbody {
          & tr {
            & th {
              background: var(--yellow01);
              border: var(--gold01) solid 1px;
              padding: 0.5em 1em;
              width: 36%;
              font-size: var(--size20);
            }
            & td {
              font-size: var(--size20);
              border: var(--gold01) solid 1px;
              padding: 0.5em 1em;
              &.taqsie {
                color: var(--gold01);
                width: 30%;
                font-weight: bold;
              }
              & .sub {
                display: block;
                font-size: var(--size12);
              }
            }
          }
        }
        & + h4 {
          margin-top: 40px;
          & .gold {
            color: var(--gold01);
          }
        }
      }
      & + .compare__box {
        border-top: var(--gold01) solid 1px;
        padding: 70px 0;
      }
    }
    & .btn__box {
      width: 100%;
      max-width: 800px;
      margin: 0 auto 0 auto;
      & a {
        display: block;
        background: var(--orange01);
        color: #fff;
        text-align: center;
        border-radius: 20px;
        font-size: var(--size30);
        padding: 10px 20px; line-height: 1.25;
        pointer-events: none;
        & .sub {
          display: block;
          font-size: var(--size16);
        }
      }
      & .note {
        margin-top: 10px;
        & p {
          font-size: var(--size12);
          max-width: 720px;
          margin: 0 auto;
        }
      }
    }
  }
}
@media screen and ( max-width:767px ) {
  .compare {
    & .content {
      width: 100%;
      & .compare__box {
        & h3 {
          font-size: var(--Font-size-24);
          & .light {
            display: none;
          }
          & .small {
            font-size: 100%;
          }
          &:has(.light) {
            &:before {
              content: '';
              display: block;
              background: url(../img/agent/img_compare_01_sp.png) center center / 100% 100% no-repeat;
              width: 2em;
              height: 2.75em;
              margin: 0 auto 10px auto;
            }
          }
        }
        & p {
          font-size: var(--Font-size-16);
        }
        & table {
          width: calc( 100% - 40px);
          & thead {
            & tr {
              & th {
                font-size: var(--Font-size-12);
                &.taqsie {
                  font-size: var(--Font-size-18);
                }
              }
            }
          }
          & tbody {
            & tr {
              & th {
                font-size: var(--Font-size-12);
                padding: 0.5em 1em;
                text-align: left;
              }
              & td {
                font-size: var(--Font-size-12);
                padding: 0.5em 1em;
                & .sub {
                  font-size: var(--Font-size-10);
                }
              }
            }
          }
          & + h4 {
            font-size: var(--Font-size-24);
          }
        }
        & h4 {
          font-size: var(--Font-size-24);
          & .balloon {
            width: 63vw;
          }
        }
      }
      & .btn__box {
        width: calc( 100% - 40px );
        & a {
          font-size: var(--Font-size-30);
          padding: 0.5em 0;
          & .sub {
            font-size: var(--Font-size-16);
          }
        }
        & .note {
          & p {
            max-width: none;
            font-size: var(--Font-size-12);
          }
        }
      }
    }
  }

}
/* ------------------------------
FEE
------------------------------ */
.fee {
  background: var(--gray01);
  padding: 100px 0;
  & .content {
    & .fee__box {
      position: relative;
      &.nofee {
        &:before {
          font-size: var(--size20);
          background: url(../img/agent/img_fee_02.png) center center / 100% 100% no-repeat;
          display: block;
          content: '';
          width: 7.2em;
          height: 12em;
          position: absolute;
          left: 50%;
          top:0;
          transform: translateX(-270%) translateY(10%);
        }
      }
      & h3 {
        font-size: var(--size36);
        text-align: center;
        font-weight: 700;
        margin: 0 auto 0.5em auto;
        &:after {
          width: 1.25em;
          height: 1px;
          background: #000;
          display: block;
          content: '';
          margin: 0.25em auto 0 auto;
        }
        & .red {
          color: var(--red01);
        }
      }
      & p {
        text-align: center;
        margin-bottom: 30px;
        & .red {
          color: var(--red01);
        }
      }
      & .card__list {
        width: 100%;
        max-width: 860px;
        margin: 0 auto 10px auto;
        & ul {
          gap:30px;
          & li {
            flex-basis: calc( ( 100% - 60px ) / 3 );
            background: var(--gray03);
            border-radius: 10px;
            padding: 20px;
            font-size: var(--size24);
            font-weight: 700;
            color: #fff;
            text-align: center;
            &:before {
              content: '';
              display: block;
              width: 1.6em;
              height: 1.6em;
              background: url(../img/agent/img_fee_01.png) center center / 100% 100% no-repeat;
              margin: 0 auto 10px auto;
            }
          }
        }
      }
      & table {
        width: 100%;
        max-width: 780px;
        margin: 0 auto 10px auto;
        & tbody {
          & tr {
            & th {
              border: var(--gold01) solid 1px;
              font-size: var(--size20);
              vertical-align: middle;
              font-weight: normal;
              padding: 0.5em 1em;
              background: var(--yellow01);
              width: 36rem;
              text-align: left;
            }
            & td {
              border: var(--gold01) solid 1px;
              font-size: var(--size20);
              vertical-align: middle;
              padding: 0.5em 1em;
              background: #fff;
              text-align: left;
            }
          }
        }
        & + .note {
          & p {
            text-align: center;
          }
        }
      }
      & .note {
        width: 100%;
        max-width: 860px;
        margin: 0 auto 10px auto;
        & p {
          text-align: left;
          font-size: var(--size12);
        }
      }
      & + .fee__box {
        margin-top: 60px;
      }
    }
    

  }
}
@media screen and ( max-width:767px ) {
  .fee {
    padding: 37vw 0 var(--Font-size-64) 0;
    & .content {
      & .fee__box {
        &.nofee {
          &:before {
            content: '';
            left: 100%;
            top:0;
            font-size: var(--Font-size-10);
            transform: translateX(-180%) translateY(-110%);
            width: 10.5em;
            height: 17.5em;
          }
        }
        & h3 {
          font-size: var(--Font-size-36);
        }
        & p {
          font-size: var(--Font-size-16);
        }
        & .card__list {
          width: 68vw;
          & ul {
            & li {
              flex-basis: 100%;
              font-size: var(--Font-size-24);
              padding: var(--Font-size-24);
            }
          }
        }
        & .note {
          width: 68vw;
          margin: 0 auto;
        }
        & table {
          width: calc( 100% - 40px );
          margin: 0 auto;
          & tbody {
            & tr {
              & th {
                width: 50%;
                font-size: var(--Font-size-12);
              }
              & td {
                font-size: var(--Font-size-12);
              }
            }
          }
          & + .note {
            width: calc( 100% - 40px );
            margin: 10px auto 0 auto;
          }
        }
      }
      
    }
  }
}
/* ------------------------------
POWERUP
------------------------------ */
.powerup {
  background: linear-gradient(to bottom , #ffdf8b , #fff9e8 );
  & .content {
    padding: 100px 0 calc( 11.18vw + 30px + 40px ) 0;
    position: relative;
    & .img01 {
      background: url(../img/agent/img_powerup_05.png) center center / 100% 100% no-repeat;
      font-size: var(--size24);
      width: 10em;
      height: 10.3125em;
      display: block;
      position: absolute;
      left: 50%;
      top:100px;
      transform: translateX(-250%) translateY(50%);
    }
    & .img02 {
      background: url(../img/agent/img_powerup_04.png) center center / 100% 100% no-repeat;
      font-size: var(--size24);
      width: 10em;
      height: 11.77em;
      display: block;
      position: absolute;
      left:50%;
      top:100px;
      transform: translateX(130%) translateY(5%);
    }
    & h3 {
      text-align: center;
      font-size: var(--size40);
      font-weight: 700;
      & .big {
        font-size: 221.25%;
        color: var(--red01);
        display: block;
        line-height: 1.05;
        text-decoration: underline;
        text-decoration-color: var(--yellow01);
        text-decoration-thickness: 0.3em;
        text-underline-offset: -0.1em;
      }
    }
    & p {
      text-align: center;
      font-size: var(--size24);
      line-height: 1.5;
      margin: 40px 0;
    }
    & .recruitment__box {
      border-radius: 20px;
      border: var(--red01) solid 5px;
      background: var(--pink01);
      width: calc( 100% - 40px ) ;
      max-width: 760px;
      margin: 0 auto 40px auto;
      & h4 {
        background: var(--red01);
        color: #fff;
        text-align: center;
        font-size: var(--size48);
        padding: 0.25em 0;
        margin: 0 0 0.25em 0;
      }
      & h5 {
        font-size: var(--size48);
        text-align: center;
        color: var(--red01);
      }
      & p {
        margin:0;
        font-size: var(--size40);
        text-align: center;
        padding: 0 0 0.5em 0;
      }
    }
    & .target__area {
      & p {
        margin: 0 auto 20px auto;
        font-size: var(--size18);
        padding: 0 3em;
        position: relative;
        display: block;
        width: calc( 100% - 40px ) ;
        max-width: 760px;
        &:before {
          content: '';
          height: 100%;
          width: 1px;
          background: #000;
          display: block;
          transform: rotate(15deg) translateY(-50%);
          position: absolute;
          right:2em;
          top:50%;
        }
        &:after {
          content: '';
          height: 100%;
          width: 1px;
          background: #000;
          display: block;
          transform: rotate(-15deg) translateY(-50%);
          position: absolute;
          left:2em;
          top:50%;
        }
      }
      & dl {
        width: calc( 100% - 40px ) ;
        max-width: 760px;
        margin: 0 auto 20px auto;
        background: var(--gray03);
        padding: 14px 28px;
        border-radius: 10px;
        & dt {
          background: var(--gray03);
          color: #fff;
          width: 7.77em;
          font-size: var(--size18);
          display: flex;
          margin: 0 auto -0.5em auto;
          height: 1.77em;
          border-radius: 0.9em;
          justify-content: center;
          align-items: center;
          flex-wrap: wrap;
          position: relative;
          z-index: 2;
        }
        & dd {
          background: #fff;
          padding: 24px;
          border-radius: 10px;
        }
      }
      & .note {
        & p {
          padding: 0;
          margin: 0 auto;
          text-align: center;
          font-size: var(--size12);
          &:before , &:after {
            display: none;
          }
          & a {
            text-decoration: underline;
          }
        }
      }
    }
  }
  & .photo {
    position: relative;
    overflow: visible;
    &::before {
      content: '';
      display: block;
      position: absolute;
      bottom:calc( 100% + 30px );
      background: url(../img/agent/bg_powerup_01.png) center bottom / auto 100% no-repeat;
      width: 100%;
      height: 11.18vw;
    }
    & ul {
      & li {
        flex-basis: calc( 100% / 3 );
        & img {
          width: 100%;
          height: auto;
          max-width: none;
        }
      }
    }
  }
}
@media screen and ( max-width:767px ) {
  .powerup {
    padding: 0;
    background: var(--yellow02);
    & .content {
      width: 100%;
      padding: 13vw 0 calc(38.50vw + 30px ) 0;
      & .img01 {
        font-size: var(--Font-size-10);
        width: 12em;
        height: 12em;
        top:0;
        left: 4.6vw;
        transform: translateY(-40%) translateX(0);
      }
      & .img02 {
        font-size: var(--Font-size-10);
        width: 9.3em;
        height: 10.8em;
        right: 0;
        top:0;
        left: auto;
        transform: translateY(270%);
      }
      & h3 {
        font-size: var(--Font-size-24);
        & .big {
          font-size: var(--Font-size-64);
        }
      }
      & p {
        font-size: var(--Font-size-16);
        line-height: 1.5;
      }
      & .recruitment__box {
        margin: var(--Font-size-52) auto 0 auto;
        & h4 {
          font-size: var(--Font-size-46);
        }
        & h5 {
          font-size: var(--Font-size-42);
        }
        & p {
          font-size: var(--Font-size-30);
        }
      }
      & .target__area {
        margin-top: var(--Font-size-24);
        & p {
          font-size: var(--Font-size-16);
          &:before {
            content: '';
            height: 60%;
            width: 1px;
            background: #000;
            display: block;
            transform: rotate(15deg) translateY(0);
            position: absolute;
            right:2em;
            top:auto;
            bottom:0;
          }
          &:after {
            content: '';
            height: 60%;
            width: 1px;
            background: #000;
            display: block;
            transform: rotate(-15deg) translateY(0);
            position: absolute;
            left:2em;
            top:auto;
            bottom:0;;
          }
        }
        & dl {
          padding: 14px 14px 28px 14px;
          & dt {
            font-size: var(--Font-size-18);
          }
          & dd {
            font-size: var(--Font-size-16);
          }
        }
        & .note {
          & p {
            font-size: var(--Font-size-12);
            text-align: left;
          }
        }
      }
    }
    & .photo {
      &::before {
        content: '';
        display: block;
        position: absolute;
        bottom:calc( 100% + 30px );
        background: url(../img/agent/bg_powerup_01_sp.png) center bottom / 100% 100% no-repeat;
        width: 100%;
        height: 38.50vw;
      }
    }
  }
}
/* ------------------------------
VOICE
------------------------------ */
.voice {
  padding: 70px 0 100px 0;
  & .content {
    & h3 {
      text-align: center;
      font-size: var(--size26);
      font-weight: 700;
      & .big {
        font-size: 138.4%;
      }
    }
    & .voice__list {
      width: 100%;
      max-width: 784px;
      margin: 24px auto 0 auto;
      position: relative;
      &:before {
        content: '';
        display: block;
        font-size: var(--size16);
        width: 10em;
        height: 10em;
        position: absolute;
        background: url(../img/agent/img_voice_01.png) center center / 100% 100% no-repeat;
        left: 50%;
        top:0%;
        transform: translateY(-50%) translateX(100%);
      }
      & .voice__box {
        border:var(--gray02) solid 1px;
        border-radius: 10px;
        padding: 24px;
        & h4 {
          font-size: var(--size20);
          color: var(--gold01);
          font-weight: 700;
          line-height: 1.35;
        }
        & .detail__box {
          padding: 8px 0;
          & p {
            font-size: var(--size12);
          }
        }
        & .text__box {
          border-top: var(--gold01) solid 1px;
          padding: 24px 0 0 0;
          & p {
            font-size: var(--size16);
          }
        }
        & + .voice__box {
          margin-top: 40px;
        }
      }
    }
  }  
}
@media screen and ( max-width:767px ) {
  .voice {
    & .content {
      & h3 {
        font-size: var(--Font-size-24);
        padding: 0 3.25em 0 0;
        line-height: 1.5;
        position: relative;
        width: 72vw;
        margin: 0 auto;
        white-space: nowrap;
        & .big {
          font-size: 150%;
        }
        &:after {
          content: '';
          display: block;
          font-size: var(--Font-size-24);
          width: 3.25em;
          height: 3.25em;
          position: absolute;
          background: url(../img/agent/img_voice_01.png) center center / 100% 100% no-repeat;
          right: 0;
          top:50%;
          transform: translateY(-50%);
        }
      }
      & .voice__list {
        width: calc( 100% - 40px );
        margin: var(--Font-size-28) auto 0 auto;
        &:before {
          display: none;
        }
        & .voice__box {
          & h4 {
            font-size: var(--Font-size-20);
          }
          & .detail__box {
            & p {
              font-size: var(--Font-size-12);
            }
          }
          & .text__box {
            & p {
              font-size: var(--Font-size-16);
            }
          }
        }
      }
    }
  }
}
/* ------------------------------
ENTRY FLOW
------------------------------ */
.entry__flow {
  padding: 80px 0 100px 0;
  background: var(--gray01);
  & .content {
    width: calc( 100% - 160px ) ;
    max-width: 900px;
    margin: 0 auto;
    & h3 {
      display: flex;
      align-items: center;
      font-size: var(--size28);
      background: var(--gold01);
      color: #fff;
      justify-content: center;
      width: 7.15em;
      height: 2.15em;
      border-radius: 1.15em;
      margin: 0 auto 1em auto;
    }
    & .flow__list {
      background: #fff;
      padding: 30px 60px;
      position: relative;
      & h4 {
        font-size: var(--size18);
        font-weight: 400;
        text-align: center;
        line-height: 1.5;
        margin: 0 auto 20px auto;
      }
      & ul {
        & li {
          display: block;
          position: relative;
          padding: 0.5em 0 0.5em 3em;
          font-size: var(--size16);
          & .check__icon {
            background: url(../img/agent/icon_entry_flow_01.png) center center / 100% 100% no-repeat;
            width: 1.625em;
            height: 1.625em;
            position: absolute;
            left: 0;
            top:50%;
            transform: translateY(-50%);
            display: block;
          }
          & .gold {
            color: var(--gold01);
          }
          & + li {
            border-top: var(--gold01) solid 1px;
          }
        }
        
      }
      & .note {
        border-top: var(--gold01) solid 1px;
        padding: 1em 0 0 0;
        & p {
          font-size: var(--size16);
        }          
      }
      & + .flow__list {
        margin-top: 24px;
      }
      & + .note {
        & p {
          text-align: right;
          font-size: var(--size14);
        }
        & + h3 {
          width: 9.14em;
          margin-top: 3.15em;
        }
      }
    }
    & .flow__list2 {
      background: #fff;
      padding: 30px 60px;
      position: relative;
      & ul {
        & li {
          font-size: var(--size16);
          margin: 0 5.625em 0 4.625em;
          position: relative;
          display: block;
          padding: 0.75em 0;
          & h5 {
            font-size:var(--size18);
            color: var(--gold01);
            font-weight: 700;
          }
          & .num {
            position: absolute;
            width: 3.375em;
            height: 3.375em;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            border-top-right-radius: 50%;
            border-bottom-right-radius: 50%;
            align-items: center;
            font-weight: 700;
            left: -4.625em;
            top:50%;
            transform: translateY(-50%);
            background: var(--gray02);
          }
          & + li {
            border-top: var(--gold01) solid 1px;
          }
        }
      }
      & .arrow {
        position: absolute;
        font-size: var(--size16);
        background: url(../img/agent/img_entry_flow_03.png) center center / 100% 100% no-repeat;
        width: 7rem;
        height: calc( 100% - 60px );
        top:30px;
        right: 60px;
      }
      .img01 {
        position: absolute;
        font-size: var(--size16);
        width: 8.75em;
        height: 11.5625em;
        left: 0;
        top:50%;
        transform: translateX(-60%) translateY(-50%);
        background: url(../img/agent/img_entry_flow_01.png) center center / 100% 100% no-repeat;
      }
      .img02 {
        position: absolute;
        font-size: var(--size16);
        right: 8.75em;
        top:0;
        transform: translateY(-50%);
        width: 7.5em;
        height: 7.49em;
        background: url(../img/agent/img_entry_flow_02.png) center center / 100% 100% no-repeat;
      }
      & + .note {
        & p {
          text-align: right;
          font-size: var(--size14);
        }
      }
    }
  }
}
@media screen and ( max-width:767px ) {
  .entry__flow {
    & .content {
      width: calc( 100% - 40px );
      & h3 {
        font-size: var(--Font-size-24);
        margin: 0 auto 1.5em auto;
      }
      & .flow__list {
        padding: 0;
        
        & h4 {
          background: var(--gray03);
          color: #fff;
          font-size: var(--Font-size-20);
          padding: 0.25em 0;
          margin: 0;
        }
        & ul {
          padding: var(--Font-size-12) var(--Font-size-24);
          & li {
            font-size: var(--Font-size-16);
          }
        }
        & .note {
          padding: var(--Font-size-12) var(--Font-size-24);
          border-top: none;
          & p {
            font-size: var(--Font-size-16);
          }
        }
        & + .note {
          margin-top: 10px;
          & p {
            text-align: center;
            font-size: var(--Font-size-12);
          }
          & + h3 {
            width: 9.14em;
            margin-top: 3.15em;
          }
        }
      }
      & .flow__list2 {
        padding: var(--Font-size-12) var(--Font-size-24) var(--Font-size-12) 0;
        & ul {
          & li {
            margin:0 0 0 0;
            padding: 0.5em 2em 0.5em 4em;
            font-size: var(--Font-size-16);
            & h5 {
              font-size: var(--Font-size-18);
            }
            & .num {
              font-size: var(--Font-size-16);
              left: 0;
            }
            & p {
              font-size: var(--Font-size-16);
            }
          }
        }
        & .arrow {
          font-size: var(--Font-size-10);
          width: 2.3em;
          height: calc( 100% - var(--Font-size-12) - var(--Font-size-12) );
          right: 3em;
          background: url(../img/agent/img_entry_flow_03_sp.png) center center / 100% 100% no-repeat;
        }
        .img01 {
          font-size: var(--Font-size-10);
          width: 7em;
          height: 9.2em;
          left: auto;
          right: 5em;
          top:50%;
          transform: none;
          z-index: 2;
        }
        .img02 {
          font-size: var(--Font-size-10);
          right: 7.5em;
          top:1em;
          transform: translateY(-50%);
          width: 7.5em;
          height: 7.49em;
        }
        & + .note {
          margin: 10px auto 0 auto;
          & p {

          }
        }
      }
    }
  }
}



/* ------------------------------
FAQ
------------------------------ */
.faq {
  padding: 80px 0 160px 0;
  & .content {
    width: calc( 100% - 40px ) ;
    max-width: 980px;
    margin: 0 auto;
    & h3 {
      font-weight: 700;
      font-size: var(--size40);
      text-align: center;
      margin: 0 auto 1.25em auto;
      line-height: 1;
      &:before {
        content: '';
        display: block;
        background: url(../img/agent/icon_faq_01.png) center center / 100% 100% no-repeat;
        width: 1.5em;
        height: 1.45em;
        margin: 0 auto 0.7em auto;
      }
    }
    & .faq__list {
      & ul {
        & li {
          & h4 {
            background: var(--orange01);
            font-size: var(--size24);
            margin: 0 0 10px 0;
            color: #fff;
            padding: 10px;
            text-align: center;
          }
          & p {
            font-size: var(--size18);
          }
          & + li {
            margin-top: 46px;
          }
        }
      }
    }
  }
}
@media screen and ( max-width: 767px ) {
  .faq {
    & .content {
      & h3 {
        font-size: var(--Font-size-24);
        &:before {
          width: 2.5em;
          height: 2.41em;
        }
      }
      & .faq__list {
        & ul {
          & li {
            & h4 {
              font-size: var(--Font-size-18);
            }
            & p {
              font-size: var(--Font-size-16);
            }
            & + li {
              margin-top: var(--Font-size-24);
            }
          }
        }
      }
    }
  }
}
/* ------------------------------
CTA
------------------------------ */
.cta {
  position: relative;
  background: var(--cream01);
  & .content {
    padding: 40px 0;
    width: calc( 100% - 40px ) ;
    max-width: 980px;
    margin: 0 auto;
    & h4 {
      font-size: var(--size30);
      color: var(--red01);
      text-align: center;
      margin: 0 auto 20px auto;
      &.black {
        color: #000;
        font-size: var(--size24);
      }
    }
    & .btn__box {
      width: 100%;
      & a {
        display: block;
        max-width: 676px;
        margin: 0 auto 20px auto;
        &:hover {
          opacity: 0.7;
        }
      }
    }
    & p {
      font-weight: 600;
      font-size: var(--size20);
      text-align: center;
    }
    & .note {
      width: 100%;
      max-width: 540px;
      margin: 20px auto 0 auto;
      & p {
        text-align: left;
        font-weight: 400;
        font-size: var(--size12);
        & a {
          text-decoration: underline;
        }
      }
    }
  }
  & .photo {
    & ul {
      & li {
        flex-basis: calc( 100% / 3 );
        & img {
          width: 100%;
          height: auto;
          max-width: none;
        }
      }
    }
  }
}
@media screen and ( max-width: 767px ) {
  .cta {
    & .content {
      & h4 {
        &.black {
          font-size: var(--Font-size-24);
        }
      }
      & p {
        font-size: var(--Font-size-16)
      }
      & .note {
        & p {
          font-size: var(--Font-size-12);
        }
      }
    }
  }
}
