@charset "UTF-8";
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important;
  }
}

.sponly {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sponly {
    display: block !important;
  }
}

@media screen and (max-width: 768px) {
  br.sponly,
img.sponly,
span.sponly {
    display: inline !important;
  }
}

@media screen and (max-width: 768px) {
  tr.sponly {
    display: table-row !important;
  }
}

@media screen and (max-width: 768px) {
  th.sponly,
td.sponly {
    display: table-cell !important;
  }
}

/**
 * rem起因の表示崩れを簡易修正（リファクタ時）
 */
html {
  font-size: 16px;
}

body {
  line-height: 24px;
  font-size: 14px;
  color: #333;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 16px;
  }
}
.container {
  width: 960px;
}

@media screen and (max-width: 768px) {
  .container {
    width: 100%;
  }
}
/**
 * mainHeader__header
 */
.mainHeader__logo {
  width: 208px;
}

.mainHeader__info {
  font-size: 10px;
  padding: 0 11px 0 20px;
}

.mainHeader__toushouLogo img {
  height: 58px;
}

.mainHeader__buttonEntry .button {
  width: 250px;
}

/**
 * mainHeader__nav
 */
.mainHeader__menu {
  max-width: 922.25px;
}

.mainHeader__menuItem {
  padding: 12px 0;
}

.mainHeader__menuSub {
  width: 960px;
}

.mainHeader__menuItem--02 .mainHeader__menuSub::before {
  left: 255px;
}

.mainHeader__menuItem--03 .mainHeader__menuSub::before {
  left: 405px;
}

.mainHeader__menuItem--04 .mainHeader__menuSub::before {
  left: 56px;
}

.mainHeader__menuItem--05 .mainHeader__menuSub::before {
  left: 705px;
}

.mainHeader__menuItem--06 .mainHeader__menuSub::before {
  left: 855px;
}

.mainHeader__menuSubItemCaption {
  font-size: 14px;
}

.mainHeader__menuSubMenuListItem {
  margin-right: 0.4rem;
  width: 128px;
}

.mainHeader__menuItem--02 .mainHeader__menuSubMenuListItem,
.mainHeader__menuItem--04 .mainHeader__menuSubMenuListItem {
  width: 118px;
}

.mainHeader__menuItem--04 .mainHeader__menuSubMenuListItem:nth-child(3) img {
  width: 128px;
}

.mainHeader__menuSubMenuListItemLargeItem {
  font-size: 14px;
  margin-right: 7px;
}

.mainHeader__menuSubMenuListItemOther #menu_list .nav_title {
  font-size: 11px;
}

/**
 * mainFooter
 */
.mainFooter {
  padding-bottom: 10px;
}

/**
 * 1ブロック目
 */
.mainFooter__row01 {
  font-size: 11px;
  padding: 3px 0;
}

/**
 * 2ブロック目
 */
.mainFooter__row02 {
  padding: 15px 0 21px;
}

.mainFooter__row02LeftLabel {
  border-radius: 20px;
  font-size: 15px;
  margin: 6px 0 0 0;
}

.mainFooter__row02LeftTelList {
  padding: 2px 0 0 0;
  margin: -9px 0 9px;
}

.mainFooter__row02LeftTelListItem {
  margin-top: 15px;
}

.mainFooter__row02LeftTelListItemTollFree {
  font-size: 50px;
  padding-right: 10px;
}

.mainFooter__row02LeftTelListItemText {
  font-size: 15px;
}

.mainFooter__row02LeftTelListItemNumber {
  font-size: 32px;
  margin-top: 1px;
}

.mainFooter__row02LeftBusinessHours {
  margin: -1px 0 0 0;
}

.mainFooter__row02LeftLinkWrapper {
  margin-top: 15px;
}

.mainFooter__row02Right {
  padding: 0 0 0 30px;
}

.mainFooter__row02RightButtonList {
  gap: 10px;
}

.mainFooter__row02RightSns {
  margin-right: 2px;
}

.mainFooter__row02RightSnsListWrapper {
  margin-top: 5px;
}

.mainFooter__row02RightSnsListCaption {
  padding: 5px;
  font-size: 11px;
}

.mainFooter__row02RightSnsListItem {
  padding: 3px;
  max-width: 36px;
}

.mainFooter__row02RightCreditCardImage {
  margin-top: 8px !important;
}
.mainFooter__row02RightCreditCardImage img {
  width: 315px;
  margin-bottom: -1px;
}

/**
 * 3ブロック目
 */
.mainFooter__row03 {
  padding: 20px 0;
}

.mainFooter__row03Menu {
  margin-top: -10px;
  margin-left: 5px;
}

.mainFooter__row03MenuItem {
  margin-top: 10px;
  padding: 0 15px;
  font-size: 13px;
}
.mainFooter__row03MenuItem:first-child {
  margin-left: -5px;
}

.mainFooter__row03Info {
  margin-top: 20px;
}

.mainFooter__row03InfoLogo {
  margin-right: 10px;
}

.mainFooter__row03InfoCompanyName {
  margin-top: -0.5px;
}

.mainFooter__row03InfoSecuritiesCode {
  font-size: 10px;
  margin-top: -1px;
}

.mainFooter__row03InfoAddress {
  font-size: 10px;
}

.mainFooter__row03InfoIsms img {
  width: 132px;
  padding-top: 1px;
}

.mainFooter__row03InfoBanner img {
  width: 190px;
}

/**
 * コピーライト
 */
.mainFooter__copyright {
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  /*
  *  spのスタイル
  */
  footer .bnr_box:nth-child(2) img {
    padding-left: 0.3px !important;
  }
}

.button {
  width: 170px;
}
.button::before {
  width: 7px;
  height: 7px;
  right: 12px;
}

.button__text {
  border-radius: 20px;
  font-size: 16px;
  padding: 5px 30px;
}
.button__text button {
  font-size: 16px;
}

.main__snsLinkButton {
  margin: 0 5px;
}

.main__snsListCaption {
  font-size: 12px;
  padding: 0 15px;
}

.main__snsListItem {
  padding: 5px;
}
.main__snsListItem img {
  width: 30px;
}

.mainContentHeader__read {
  font-size: 19.2px;
}

.mainContentHeader__caption {
  font-size: 36px;
}

.moreLink {
  font-size: 16px;
}
.moreLink::after {
  font-size: 19.2px;
}

.jsMoreLink {
  font-size: 19.2px;
  padding: 8px;
  margin: 10px auto 0;
  border-radius: 20px;
}

/*
*  default_pc.cssからの移植
*/
body {
  background-color: #f3f3f3;
}

/*テキスト書体*/
.bold {
  font-weight: bold !important;
}

/*テキスト位置*/
.txtL {
  text-align: left !important;
}

.txtC {
  text-align: center !important;
}

/*カラー*/
.c_fff {
  color: #fff !important;
}

.bg_fff {
  background-color: #fff !important;
}

/*マージン*/
.mt10 {
  margin-top: 10px !important;
}

/*コンテンツ*/
.container {
  width: 960px;
  margin: 0 auto;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/*
*  style_pc.cssからの移植
*/
section.mainArea img {
  height: auto;
}

/*
*  pcのスタイル
*/
#agency .mainArea {
  width: 100%;
}

section.agency {
  margin: 0 auto;
}

/* セクション1 */
.agency.sec01 {
  background-color: #F5FAEB;
  padding: 20px 0;
}

.agency_page_header {
  text-align: left;
}

.agency_page_header_title {
  margin: 0;
  color: #333;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.3;
}

.agency_page_header_en {
  color: #92CC34;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.3;
}

@media screen and (max-width: 768px) {
  .agency.sec01 .agency_page_header {
    text-align: left;
    width: 90%;
  }
  .agency_page_header_title {
    font-size: 28px;
  }
  .agency_page_header_en {
    font-size: 18px;
  }
}
/* セクション1 */

/* セクション2 */
#agency .agency_intro_box {
  margin: 40px auto 10px;
  padding: 30px 40px;
  background: #92CC34;
  border-radius: 10px;
  width: 90%;
}

#agency .agency_intro_text {
  font-size: 16px;
  line-height: 1.8;
  color: #fff;
  text-align: left;
}

#agency .agency_intro_text + .agency_intro_text {
  margin-top: 1.5em;
}

#agency .agency_intro_text_bold {
  font-weight: bold;
  margin-left: -0.5em;
}

@media screen and (max-width: 768px) {
  #agency .agency_intro_box {
    width: 90%;
    padding: 24px 20px;
    margin-bottom: 0;
  }

  #agency .agency_intro_text {
    font-size: 18px;
  }
}
/* セクション2 */

/* セクション3 */
#agency .agency.sec03 {
  padding: 10px 0 40px;
}

#agency .agency_products_box {
  position: relative;
  margin: 40px auto 0;
  padding: 56px 48px 40px;
  width: 75%;
  background: #fff9e6;
  border: 3px solid #f39800;
  border-radius: 16px;
}

#agency .agency_products_badge {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 10px 80px;
  background: #f39800;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
  border-radius: 999px;
}

#agency .agency_products_list {
  display: flex;
  justify-content: space-around;
  align-items: stretch;
  gap: 48px;
}

#agency .agency_products_item {
  display: flex;
  flex-direction: column;
  flex: 1;
  text-align: center;
}

#agency .agency_products_img {
  display: block;
  margin-top: auto;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  height: auto;
}
#agency .agency_products_label {
  margin-top: 20px;
  padding-top: 0;
  font-size: 20px;
  font-weight: bold;
  color: #333;
  letter-spacing: 0.04em;
}

@media screen and (max-width: 768px) {
  #agency .agency_products_box {
    width: 90%;
    padding: 40px 16px 28px;
  }
  #agency .agency_products_list {
    flex-direction: row;
    align-items: stretch;
    justify-content: space-around;
    gap: 12px;
  }
  #agency .agency_products_img {
    max-width: 100%;
    width: auto;
  }
  #agency .agency_products_label {
    margin-top: 12px;
    font-size: 14px;
  }
  #agency .agency_products_badge {
    font-size: 16px;
    padding: 6px 28px;
    width: 50%;
    text-align: center;
  }
}
/* セクション3 */

/* セクション4 */
#agency .agency.sec04 {
  padding: 40px 0 0;
  background-color: #F5FAEB;
}
#agency .agency_agreement_box {
  padding-bottom: 40px;
}

#agency .agency_agreement_title {
  margin: 0 0 28px;
  color: #222;
  font-size: 28px;
  font-weight: bold;
  text-align: left;
  border-bottom: 2px dashed #8cc63f;
  padding-bottom: 10px;
  display: table;
}

#agency .agency_agreement_card {
  border-radius: 16px;
  padding: 40px 60px;
}

#agency .agency_agreement_card + .agency_agreement_card {
  margin-top: 28px;
}

#agency .agency_agreement_card_referral {
  background: #FCE0DA;
}

#agency .agency_agreement_card_agency {
  background: #DEF2C6;
}

#agency .agency_agreement_card_consignment {
  background: #C5E4EF;
}

#agency .agency_agreement_heading {
  margin: 0 0 8px;
  font-size: 24px;
  font-weight: bold;
  border-bottom: 2px dashed;
  padding-bottom: 8px;
  padding-right: 1.5em;
  display: inline-block;
}

#agency .agency_agreement_heading_referral {
  color: #E24949;
  border-color: #E24949;
}

#agency .agency_agreement_heading_agency {
  color: #778C34;
  border-color: #778C34;
}

#agency .agency_agreement_heading_consignment {
  color: #3a7ab8;
  border-color: #5ba0d4;
}

#agency .agency_agreement_desc {
  margin: 0 0 24px;
  color: #333;
  font-size: 16px;
  line-height: 1.8;
  font-weight: bold;
}

#agency .agency_agreement_merit {
  position: relative;
  margin-bottom: 24px;
  padding-top: 14px;
}

#agency .agency_agreement_merit_badge {
  position: absolute;
  top: -10px;
  left: 20px;
  padding: 6px 12px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 6px;
}

#agency .agency_agreement_merit_badge_referral {
  background: #E24949;
}

#agency .agency_agreement_merit_badge_agency {
  background: #778C34;
}

#agency .agency_agreement_merit_badge_consignment {
  background: #3a7ab8;
}

#agency .agency_agreement_merit_list {
  margin: 0 0 0 20px;
  padding: 20px 18px;
  border-radius: 10px;
  width: 95%;
  list-style: none;
}

#agency .agency_agreement_merit_list_referral {
  background: #FEF6F4;
}

#agency .agency_agreement_merit_list_agency {
  background: #F5FAEB;
}

#agency .agency_agreement_merit_list_consignment {
  background: #F0F6FC;
}

#agency .agency_agreement_merit_list li {
  position: relative;
  padding-left: 1.2em;
  font-size: 15px;
  line-height: 1.8;
  color: #333;
}

#agency .agency_agreement_merit_list li::before {
  content: "・";
  position: absolute;
  left: 0;
}

#agency .agency_agreement_diagram {
  background: #fff;
  border-radius: 10px;
  padding: 24px;
  text-align: center;
  width: 90%;
  margin: 0 auto;
}

#agency .agency_agreement_diagram_img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

#agency .agency_agreement_diagram_img_sp {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  #agency .agency_agreement_title {
    font-size: 18px;
  }

  #agency .agency_agreement_card {
    padding: 28px 15px 15px;
  }

  #agency .agency_agreement_heading {
    font-size: 22px;
  }

  #agency .agency_agreement_desc {
    font-size: 14px;
  }

  #agency .agency_agreement_merit_badge {
    left: 0;
    font-size: 14px;
  }

  #agency .agency_agreement_merit_list {
    padding: 28px 16px 16px;
    margin: 0;
    width: 100%;
  }

  #agency .agency_agreement_merit_list li {
    font-size: 14px;
  }

  #agency .agency_agreement_diagram {
    padding: 16px;
    width: 100%;
  }
  #agency .agency.sec04 {
    padding: 40px 0;
  }
  #agency .agency_agreement_box {
    width: 90%;
    padding-bottom: 0;
  }
  #agency .agency_agreement_title {
    margin-bottom: 20px;
  }
}
/* セクション4 */

/* セクション5 */
#agency .agency.sec05 {
  padding: 40px 0;
}

#agency .agency_contract_flow {
  position: relative;
  margin: 20px auto 0;
  padding: 56px 48px 48px;
  width: 50%;
  background: #fff;
  border: 3px solid #ef5b2b;
  border-radius: 16px;
}

#agency .agency_contract_flow_title {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 15px 30px;
  background: #ef5b2b;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  border-radius: 24px;
  width: 75%;
  text-align: center;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.18);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

#agency .agency_contract_flow_list {
  margin: 0;
  padding: 0;
  list-style: none;
}

#agency .agency_contract_flow_item {
  position: relative;
  display: flex;
  align-items: stretch;
  border: 2px solid;
  border-radius: 4px;
  background: #fff;
}

#agency .agency_contract_flow_item:not(:last-child) {
  margin-bottom: 32px;
}

#agency .agency_contract_flow_item:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 15px solid;
}

#agency .agency_contract_flow_step {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 16px 12px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}

#agency .agency_contract_flow_text {
  display: flex;
  align-items: center;
  padding: 12px 24px;
  background: #fff;
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  text-align: left;
}

#agency .agency_contract_flow_item_01 {
  border-color: #99CB3C;
}

#agency .agency_contract_flow_item_01 .agency_contract_flow_step {
  background: #99CB3C;
}

#agency .agency_contract_flow_item_01:not(:last-child)::after {
  border-top-color: #99CB3C;
}

#agency .agency_contract_flow_item_02 {
  border-color: #85B73C;
}

#agency .agency_contract_flow_item_02 .agency_contract_flow_step {
  background: #85B73C;
}

#agency .agency_contract_flow_item_02:not(:last-child)::after {
  border-top-color: #85B73C;
}

#agency .agency_contract_flow_item_03 {
  border-color: #76A83D;
}

#agency .agency_contract_flow_item_03 .agency_contract_flow_step {
  background: #76A83D;
}

#agency .agency_contract_flow_item_03:not(:last-child)::after {
  border-top-color: #80b742;
}

#agency .agency_contract_flow_item_04 {
  border-color: #64963E;
}

#agency .agency_contract_flow_item_04 .agency_contract_flow_step {
  background: #64963E;
}

#agency .agency_contract_flow_item_04:not(:last-child)::after {
  border-top-color: #68ab3a;
}

#agency .agency_contract_flow_item_05 {
  border-color: #54863E;
}

#agency .agency_contract_flow_item_05 .agency_contract_flow_step {
  background: #54863E;
}

#agency .agency_contract_flow_item_05:not(:last-child)::after {
  border-top-color: #509f32;
}

#agency .agency_contract_flow_item_06 {
  border-color: #43743F;
}

#agency .agency_contract_flow_item_06 .agency_contract_flow_step {
  background: #43743F;
}

@media screen and (max-width: 768px) {
  #agency .agency_contract_flow {
    width: 90%;
    padding: 44px 16px 32px;
    margin: 0 auto;
  }

  #agency .agency_contract_flow_title {
    padding: 5px;
    font-size: 16px;
  }

  #agency .agency_contract_flow_item:not(:last-child) {
    margin-bottom: 28px;
  }

  #agency .agency_contract_flow_step {
    width: 25%;
    padding: 14px 8px;
    font-size: 14px;
  }

  #agency .agency_contract_flow_text {
    padding: 12px 14px;
    font-size: 14px;
  }
}
/* セクション5 */

/* セクション6：お問い合わせCTA */
#agency .agency.sec06 {
  padding: 40px 0;
  background-color: #F9F9F2;
  text-align: center;
}

#agency .agency_inquiry_text {
  margin: 0 0 28px;
  color: #333;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.8;
}

#agency .agency_inquiry_btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 58px 12px 54px;
  border-radius: 999px;
  background: #F25C0C;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  transition: opacity 0.3s ease;
}

#agency .agency_inquiry_btn:hover {
  opacity: 0.8;
  color: #fff;
}

#agency .agency_inquiry_btn span {
  position: absolute;
  right: 24px;
  width: 14px;
  height: 14px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

@media screen and (max-width: 768px) {
  #agency .agency_inquiry_cta {
    width: 90%;
    margin: 0 auto;
  }
  #agency .agency_inquiry_text {
    font-size: 14px;
    margin-bottom: 20px;
  }
  #agency .agency_inquiry_btn {
    width: 70%;
    padding: 6px 40px 6px 28px;
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .wrapper {
    margin-top: 50px;
    width: 100%;
    overflow-x: hidden;
  }

  .container {
    width: 100%;
  }

  section.mainArea img {
    max-width: 100%;
    height: auto;
    margin-top: 0;
  }

  body {
    font-size: 16px;
    min-width: unset;
  }

  #agency .mainArea {
    padding-top: 0;
  }
}