@charset "UTF-8";
/* ■■■■■■■■■■global■■■■■■■■■■ */
:root {
  --NUM_ORANGE: var(--MAIN_ORANGE);
  --TABLE_GRAY_01: #ddd;
  --TABLE_GRAY_02: #aaa;
  --TABLE_BORDER_GRAY: #B4B4B4;
  --TABLE_YELLOW: var(--MAIN_YELLOW);
  --TABLE_ORANGE: #FFA000;
  --TABLE_RED: #F07D00;
  --TABLE_BLUE: #508CA0;
  --TABLE_TAG_YELLOW: #FFF092;
  --TABLE_TAG_ORANGE: #FFD266;
  --TABLE_TAG_RED: #F7B46C;
  --TABLE_TAG_BLUE: #B4CED6;
  --OPTION_YELLOW: var(--MAIN_YELLOW);
  --OPTION_ORANGE: var(--GRADATION_ORANGE);
  --OPTION_RED: var(--MAIN_ORANGE);
  --ATTENTION_TAG: #787878;
  --ATTENTION_TAG02: #3c3c3c;
  --STEP_BORDER: #1b1616;
  --RENTAL_QUESTION_BG: #F7F7F7;
  --CONTACT_RED: #EB5A5A;
  --CONTACT_BLUE: #1283C3;
  --CONTACT_GREEN: #00AA8C;
  --CONTACT_RED_NAVY: rgb(215, 70, 70);
  --CONTACT_BLUE_NAVY: rgb(0, 111, 175);
  --CONTACT_GREEN_NAVY: rgb(0, 150, 120);
  --CONTAINER_BORDER: #FFE6AA;
  --CONTENTS_BORDER_GRAY: #A0A0A0;
  --ADD_TABLE_GRAY: #EDEDED;
  --ADD_TABLE_BTN: #5B5B5B;
  --ADD_CONTACT_GRAY: #e3e3e3;
  --ADD_CONTACT_YELLOW: #fdc831;
  --ADD_CONTACT_TITLE_GRAY: #9b9b9b;
  --CAUTION_TXT_RED: #b50000;
  --sp_mag: calc(1 - (375 / 816));
  --contents_gap_col: 20px;
  --contents_gap_row: 20px;
  --TABLE_COMENT_RED: #c00000;
  --BG_GRAY: #f1f1f1;
  --BG_ORANGE: #ffe8c8;
  --TTL_BG_GRAY: #3c3c3c;
}

@media screen and (min-width: 768px) {
  :root {
    --margin_template_s: 40px;
    --margin_template_l: 80px;
  }
}
@media screen and (max-width: 767px) {
  :root {
    --margin_template_s: 20px;
    --margin_template_l: 60px;
  }
}
.font_m_plus {
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.tp-mgb__s {
  margin-bottom: var(--margin_template_s);
}

.tp-mgb__l {
  margin-bottom: var(--margin_template_l);
}

.tp-wrapper {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

.tp-border {
  position: relative;
  display: block;
  background-color: var(--MAIN_WHITE);
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 20px;
  margin: 60px 0;
  counter-reset: section_counter;
  padding: var(--padding_block) 0;
}

.tp-border-new {
  position: relative;
  display: block;
  background-color: var(--MAIN_WHITE);
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 20px;
  margin: 60px 0;
  counter-reset: section_counter;
  padding: var(--padding_block) 0;
}

.tp-nav__list {
  background-color: var(--GRADATION_ORANGE);
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  top: 0;
  left: -2px;
  padding: 5px 20px 5px 15px;
  border-radius: 20px 0 20px 0;
  font-size: 12px;
  z-index: 40;
  font-weight: bold;
  flex-wrap: wrap;
  margin-right: 20px;
}

.tp-nav__list > li:not(:last-child)::after {
  content: ">";
  display: inline-block;
  padding: 0 0.5em;
}

.tp-counter {
  counter-increment: section_counter;
  color: var(--NUM_ORANGE);
  font-size: 32px;
}

.tp-counter::after {
  content: counter(section_counter, decimal-leading-zero);
}

/** タイトル関連 **/
.tp-ttl {
  font-weight: bold;
}

.tp-ttl:not(.__mgb):not(.tp-ttl__balloon__span) {
  color: var(--MAIN_ORANGE);
  margin-bottom: var(--margin_template_s);
}

.tp-ttl.__mgb {
  color: var(--MAIN_ORANGE);
  margin-bottom: var(--margin_template_l);
}

.tp-ttl:has(.tp-ttl__balloon__span) {
  color: var(--MAIN_ORANGE);
  margin-bottom: calc(var(--margin_template_s) + 10px);
}

.tp-ttl > span.small {
  font-size: 20px;
  display: inline-block;
  transform: translateY(10px);
}

.tp-ttl.__center {
  text-align: center;
}

.tp-ttl__balloon-bottom {
  flex-grow: 1;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: var(--MAIN_ORANGE);
  color: var(--MAIN_WHITE);
  margin-bottom: 15px;
  padding: 3px 5px;
  font-size: 14px;
  margin: 0 auto 2rem;
}

.tp-ttl__balloon-bottom::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 1px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: var(--MAIN_ORANGE) transparent transparent transparent;
}

.tp-ttl__balloon-bottom.__witdh-s {
  width: 12rem;
}

/* border有、タイトル */
.tp-ttl.__border,
.kg-ttl.__border {
  text-align: center;
}

.tp-ttl.__border > span:not(.__no-border) {
  --border_child_position: -14px;
  --border_parent_position: -11px;
  position: relative;
}

.tp-ttl.__border > span:not(.__no-border):after,
.tp-ttl.__border > span:not(.__no-border):before,
.kg-ttl.__border > span:after,
.kg-ttl.__border > span:before {
  content: "";
  position: absolute;
  width: 1px;
  display: inline-block;
  background-color: var(--MAIN_BLACK);
}

.tp-ttl.__border > span:not(.__no-border):after,
.kg-ttl.__border > span:after {
  height: 1em;
  bottom: 7px;
}

.tp-ttl.__border > span:not(.__no-border):before,
.kg-ttl.__border > span:before {
  height: 0.6em;
  bottom: 3px;
}

.tp-ttl.__border > span:not(.__no-border):first-child:after,
.kg-ttl.__border > span:first-child:after {
  transform: rotateZ(-20deg);
  left: var(--border_parent_position);
}

.tp-ttl.__border > span:not(.__no-border):first-child:before,
.kg-ttl.__border > span:first-child:before {
  transform: rotateZ(-35deg);
  left: var(--border_child_position);
}

.tp-ttl.__border > span:not(.__no-border):last-child:after,
.kg-ttl.__border > span:not(.__no-border):last-child:after {
  transform: rotateZ(20deg);
  right: var(--border_parent_position);
}

.tp-ttl.__border > span:not(.__no-border):last-child:before,
.kg-ttl.__border > span:last-child:before {
  transform: rotateZ(35deg);
  right: var(--border_child_position);
}

/* ナンバー付き */
.tp-ttl[class*=__num] {
  position: relative;
}

.tp-ttl[class*=__num]:before {
  --small_size: 52;
  --large_size: 64;
  --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 950) * 100vw), calc(var(--large_size) * 1px));
  font-size: var(--clamp);
  line-height: 1;
  position: absolute;
  left: 0;
  top: 50%;
  color: var(--MAIN_YELLOW);
  transform: translateY(-50%);
}

.tp-ttl.__num01:before {
  content: "01";
}

.tp-ttl.__num02:before {
  content: "02";
}

.tp-ttl.__num03:before {
  content: "03";
}

.tp-ttl.__num04:before {
  content: "04";
}

.tp-ttl.__num05:before {
  content: "05";
}

.tp-ttl:has(.tp-ttl__balloon__span) {
  text-align: center;
}

[class*=tp-ttl__balloon__span] {
  background-color: var(--MAIN_ORANGE);
  color: var(--MAIN_WHITE);
  border-radius: 50px;
  position: relative;
  display: inline-block;
}

[class*=tp-ttl__balloon__span]::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 1px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: var(--MAIN_ORANGE) transparent transparent transparent;
}

.tp-black {
  color: var(--MAIN_BLACK);
}

.tp-bglg {
  background: linear-gradient(transparent 70%, var(--MAIN_YELLOW) 30%);
  color: var(--MAIN_BLACK);
}

.tp-check__list > li {
  padding-left: 25px;
  display: inline-block;
  background: url(../images/template/icon_checkbox.svg) no-repeat left 8px/1em;
}

.tp-check__list > li:not(:last-child) {
  margin-bottom: 10px;
}

.tp-local {
  line-height: 2;
}

/*-----------------------
テキスト関連
-----------------------*/
.tp-text__red {
  color: var(--TABLE_COMENT_RED);
}

.tp-text__orange {
  color: var(--MAIN_ORANGE);
}

.tp-text__right {
  text-align: right;
}

/** テーブル関連 **/
/* シンプルな方 */
.tp-table {
  width: 104%;
  margin-left: -2%;
}

.tp-case__section .tp-table > tbody th {
  color: var(--MAIN_ORANGE);
}

.tp-table > tbody tr {
  display: flex;
  border-bottom: 1px solid var(--TABLE_BORDER_GRAY);
}

.tp-table > tbody tr > * {
  display: flex;
  flex: 1;
  padding: 8px 10px;
  align-items: center;
  justify-content: center;
}

.tp-table > tbody tr > th {
  font-weight: 500;
}

.tp-table > tbody tr > *:not(:last-child) {
  border-right: 1px solid var(--TABLE_BORDER_GRAY);
}

.tp-table > tbody tr:first-child td:nth-child(2) {
  color: var(--MAIN_WHITE);
  background-color: var(--MAIN_ORANGE);
  font-weight: bold;
}

.tp-table > tbody tr:not(:first-child) td:nth-child(2) {
  font-weight: bold;
  background-color: var(--MAIN_YELLOW);
}

.tp-table > tbody tr:first-child td:nth-child(3) {
  background-color: var(--TABLE_GRAY_01);
}

.tp-table > tbody tr:first-child td:nth-child(4) {
  background-color: var(--TABLE_GRAY_02);
}

/* ゴージャスな方 */
.tp-table__plan tr {
  display: flex;
}

.tp-table__plan > tbody tr:first-child > *:nth-child(1) {
  background-color: var(--TABLE_YELLOW);
}

.tp-table__plan > tbody tr:first-child > *:nth-child(2) {
  background-color: var(--TABLE_ORANGE);
  color: var(--MAIN_WHITE);
}

/*.tp-table__plan>tbody tr:first-child>*:nth-child(2):after {
  position: absolute;
  content: "";
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/common/img_popular_01.png) no-repeat center center/contain;
  width: calc(100% - 40px);
  aspect-ratio: 143/32;
}*/
.tp-table__plan > tbody:not(.tp-table__plan__tbodyBottom) tr:first-child > *:nth-child(1):after {
  position: absolute;
  content: "";
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/common/img_popular_01.png) no-repeat center center/contain;
  width: calc(100% - 220px);
  aspect-ratio: 143/32;
}

.tp-table__plan tr:first-child > *:nth-child(2) > .Ttl {
  margin-top: 40px;
}

.tp-table__plan tr:first-child > *:nth-child(3) {
  background-color: var(--TABLE_RED);
  color: var(--MAIN_WHITE);
}

.tp-table__plan tr:first-child > *:nth-child(4) {
  background-color: var(--TABLE_BLUE);
  color: var(--MAIN_WHITE);
}

.tp-table__plan tr > * {
  flex: 1;
  position: relative;
}

.tp-table__plan .Ttl {
  margin-bottom: 10px;
  font-weight: bold;
}

.tp-table__plan tbody:not(.tp-table__plan__tbodyBottom) tr:first-child > *:nth-child(1) > .Ttl {
  margin-top: 40px;
}

.tp-table__plan .Local {
  font-weight: 500;
}

.tp-table__plan tr:first-child .Local {
  text-align: center;
}

.tp-table__plan > tbody td {
  text-align: center;
}

.tp-table__plan > tfoot td {
  text-align: end;
}

.tp-table__plan .no-border {
  position: static;
}

.tp-table__plan .Tag {
  font-size: 13px;
  margin-bottom: 10px;
}

.tp-table__plan td:nth-child(1) .Tag {
  background-color: var(--TABLE_TAG_YELLOW);
}

.tp-table__plan td:nth-child(2) .Tag {
  background-color: var(--TABLE_TAG_ORANGE);
}

.tp-table__plan td:nth-child(3) .Tag {
  background-color: var(--TABLE_TAG_RED);
}

.tp-table__plan td:nth-child(4) .Tag {
  background-color: var(--TABLE_TAG_BLUE);
}

.tp-table__plan .Price {
  font-weight: bold;
  font-size: 18px;
  line-height: 1;
}

.tp-table__plan .Caption {
  font-size: 13px;
  line-height: 2.4;
  color: var(--TABLE_RED);
}

.tp-table__plan .Btn {
  background-color: var(--MAIN_ORANGE);
  border-radius: 50px;
  line-height: 1.2;
}

.tp-table__plan .Btn > a {
  font-size: 11px;
  color: var(--MAIN_WHITE);
  font-weight: bold;
}

.table-mgb {
  margin-bottom: 5px;
}

/*-----------------------
デザインイメージ tp-pay__section 決済テーブルデザイン
-----------------------*/
/*-----------------------
デザインイメージ tp-pay__section
-----------------------*/
/** テーブル関連 **/
@media screen and (max-width: 767px) {
  .tp-pay__section .tp-scroll__container {
    white-space: nowrap;
  }
}
.tp-table__pay {
  width: 104%;
  margin-left: -2%;
  border-collapse: collapse;
}

@media screen and (max-width: 767px) {
  .tp-table__pay {
    width: 100%;
    margin-left: 0;
    border-collapse: collapse;
  }
}
.tp-table__pay > tbody tr > th {
  padding: 8px 10px;
}

.tp-table__pay > tbody tr > th {
  font-weight: bold;
  background-color: var(--MAIN_YELLOW);
}

.tp-table__pay tbody th,
.tp-table__pay tbody td {
  border: 1px solid var(--TABLE_BORDER_GRAY);
}

.tp-table__pay tbody td {
  width: 75%;
  padding: 20px;
}

.tp-table__pay tbody td img {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .tp-table__pay tbody td img {
    width: 50%;
  }
}
.tp-table__pay .coment-red {
  color: var(--TABLE_COMENT_RED);
}

/** ラッパー関連 **/
[class*=tp-wrapper] {
  margin-right: auto;
  margin-left: auto;
}

.tp-wrapper__m {
  width: 85%;
}

.tp-2c2r__list {
  display: grid;
  gap: 10px;
}

.tp-3c2r__list {
  display: grid;
  gap: 10px;
}

.tp-4c2r__list {
  display: grid;
  gap: 10px;
}

/** ボタン関連 **/
.tp-btn {
  text-align: center;
}

.tp-btn > a {
  position: relative;
  font-weight: bold;
  display: inline-block;
  border-radius: 50px;
  text-align: center;
}

.tp-btn > a:after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  width: 0.2em;
  aspect-ratio: 97/150;
}

/* -----thanks.htmlボタンの設定ここから　pc用----- */
.tp-btn.__gray > a {
  background-color: var(--ADD_TABLE_BTN);
  color: #fff;
  width: 50%;
  font-weight: normal;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 1rem;
}

.tp-btn.__gray > a:after {
  left: 7%;
  transform: rotate(180deg);
  background: url(../images/common/icon_arrow.svg) no-repeat center center/contain;
}

/* -----thanks.htmlボタンの設定ここまで----- */
/* -----thanks.html 高さ調整ここから pc用----- */
.thanksHight {
  height: 500px;
}

/* -----thanks.html 高さ調整ここまで----- */
.tp-btn.__yellow > a {
  background-color: var(--MAIN_YELLOW);
}

.tp-btn.__yellow > a:after {
  right: 7%;
  background: url(../images/common/icon_arrow_black.svg) no-repeat center center/contain;
}

.tp-btn.__white > a {
  border: 1px solid var(--GRADATION_ORANGE);
}

.tp-btn.__white > a:after {
  right: 10%;
  background: url(../images/common/icon_arrow_orange.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .tp-table__plan .Ttl {
    font-size: 18px;
  }
  .tp-border {
    --padding_block: 40px;
    --padding_inline: 50px;
  }
  .tp-wrapper__l {
    width: 88%;
  }
  .tp-wrapper__s {
    width: 65%;
  }
  .tp-table__plan tbody {
    display: block;
  }
  .tp-table__plan .Caption {
    margin-bottom: 10px;
  }
  .tp-table__plan > tbody tr:not(:last-child):not(:first-child) > *:not(.no-border):after {
    content: "";
    position: absolute;
    width: calc(100% - 40px);
    height: 1px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-image: linear-gradient(to right, var(--TABLE_BORDER_GRAY), var(--TABLE_BORDER_GRAY) 1.5px, transparent 2px, transparent 2.5px);
    background-size: 2.5px 1px;
    background-repeat: repeat-x;
  }
  .tp-table__plan > tbody tr:first-child > *,
  .tp-table__plan > tbody tr:not(:first-child) > * {
    padding: 2.5%;
  }
  .tp-table__plan {
    width: 104%;
    margin-left: -2%;
  }
  .tp-table__plan > tbody tr > *:not(:last-child) {
    border-right: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-table__plan tbody {
    border: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-check__list {
    font-weight: bold;
    font-size: 20px;
  }
  .tp-ttl:not(.__border) {
    font-size: 26px;
  }
  .tp-ttl.__border,
  .tp-ttl__balloon__span {
    font-size: 28px;
  }
  .tp-2c2r__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-3c2r__list {
    grid-template-columns: repeat(3, 1fr);
  }
  .tp-4c2r__list {
    grid-template-columns: repeat(4, 1fr);
  }
  .tp-btn > a {
    font-size: 18px;
    padding: 1em 3em;
  }
  .tp-table__plan .Local {
    font-size: 13px;
  }
  .tp-table__plan > tbody tr:first-child > *:nth-child(2):after {
    width: calc(100% - 40px);
  }
  .tp-table__plan > tbody:not(.tp-table__plan__tbodyBottom) tr:first-child > *:nth-child(1) {
    margin-top: -40px;
    margin-left: -1px;
    border-top: 1px solid var(--TABLE_BORDER_GRAY);
    border-left: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-btn.__white > a:hover {
    background-color: var(--RENTAL_QUESTION_BG);
  }
  .tp-btn.__yellow > a:hover {
    background-color: var(--GRADATION_ORANGE);
  }
  [class*=tp-ttl__balloon__span] {
    padding: 4px 1.5em 5px;
  }
  .tp-table__plan .Btn {
    padding: 3px 8px 6px;
  }
}
@media screen and (max-width: 767px) {
  .tp-table__plan .Ttl {
    font-size: 15px;
  }
  .tp-border {
    --padding_block: 20px;
    --padding_inline: 5%;
  }
  .tp-wrapper__l {
    width: 94%;
  }
  .tp-scroll__container {
    overflow-x: scroll;
  }
  .tp-scroll__container::-webkit-scrollbar {
    height: 10px;
  }
  .tp-scroll__container::-webkit-scrollbar-thumb {
    background: var(--TABLE_ORANGE);
    border-radius: 5px;
  }
  .tp-scroll__container::-webkit-scrollbar-track {
    background: var(--CONTAINER_BORDER);
    border-radius: 5px;
  }
  .tp-table__plan tbody {
    display: flex;
  }
  .tp-table__plan > tbody tr {
    flex-flow: column;
    flex-shrink: 0;
    width: 200px;
  }
  .tp-table__plan > tbody tr {
    height: 650px;
  }
  .tp-table__plan > tbody tr > * {
    border-top: 1px solid var(--TABLE_BORDER_GRAY);
    border-left: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-table__plan > tbody tr > *:last-child {
    border-bottom: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-table__plan tr:last-child > tbody > * {
    border-right: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .tp-table__plan {
    flex-grow: 1.55;
  }
  .tp-table__plan > tbody tr:first-child > *,
  .tp-table__plan > tbody tr:not(:first-child) > * {
    padding: 25px;
  }
  .tp-table > tbody tr > * {
    min-width: 180px;
  }
  .tp-check__list {
    font-size: 15px;
  }
  .tp-ttl:not(.__border) {
    font-size: 20px;
  }
  .tp-ttl.__border {
    font-size: 20px;
  }
  .tp-2c2r__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .tp-3c2r__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-4c2r__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-btn > a {
    font-size: 15px;
    padding: 0.6em 2em;
  }
  /* -----thanks.htmlボタンの設定ここから　sp用----- */
  .tp-btn.__gray > a {
    /* background-color: var(--ADD_TABLE_BTN);
    color: #fff; */
    width: 80%;
    font-weight: normal;
    padding-top: 10px;
    padding-bottom: 8px;
    font-size: 14px;
  }
  /* -----thanks.htmlボタンの設定ここまで----- */
  /* -----thanks.html 高さ調整ここから pc用----- */
  .thanksHight {
    height: 10px;
  }
  /* -----thanks.html 高さ調整ここまで----- */
  /* ---thanks.htmlのテキスト配置調整ここから--- */
  .thanksTitle {
    text-align: center;
  }
  /* ---thanks.htmlのテキスト配置調整ここまで--- */
  .tp-table__plan .Local {
    font-size: 12px;
  }
  .tp-table__plan > tbody tr:first-child > *:nth-child(2):after {
    width: 60%;
  }
  .tp-ttl[class*=__num]:not(.__balloon) {
    padding-left: 80px;
    text-align: left;
  }
  [class*=tp-ttl__balloon__span] {
    padding: 2px 1.5em;
  }
  .tp-table__plan .Btn {
    padding: 3px 8px;
  }
}
/* ------------------ tp-front__section -------------------- */
.tp-front__section {
  background-image: url(../images/template/front.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 20px 20px 0 0;
  width: 100%;
  transform: translateY(calc(var(--padding_block) * -1));
  text-align: center;
}

.cc-front__section {
  background-image: url(../images/template/front.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 20px 20px 0 0;
  width: 100%;
  transform: translateY(calc(var(--padding_block) * -1));
}

.tp-front__ttl,
.btm-front__ttl,
.add-front__ttl {
  display: inline-block;
  --large_size: 36;
  --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 375) * 100vw), calc(var(--large_size) * 1px));
  font-size: var(--clamp);
  background-color: var(--MAIN_WHITE);
  color: var(--MAIN_ORANGE);
  line-height: 2.2;
  border-radius: 50px;
  letter-spacing: -1px;
  margin-bottom: var(--contents_mgb);
}

.tp-front__ttl {
  --small_size: calc(36 * var(--sp_mag));
}

.btm-front__ttl,
.add-front__ttl {
  --small_size: 24;
}

.tp-front__ttl {
  font-weight: bold;
}

.tp-front__ttl > span,
.btm-front__ttl > span,
.add-front__ttl > span {
  background: linear-gradient(transparent 70%, var(--MAIN_YELLOW) 30%);
}

.tp-front__caption {
  width: 90%;
  margin: 0 auto var(--contents_mgb);
  font-weight: bold;
}

.add-front__caption {
  font-weight: bold;
}

.add-front__caption > span {
  display: block;
  color: var(--CONTACT_RED);
  margin-bottom: 0.5em;
}

.tp-front__contact > a {
  display: block;
  margin: 0 auto;
  --small_size: 12;
  --large_size: 16;
  --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 375) * 100vw), calc(var(--large_size) * 1px));
  font-size: var(--clamp);
  border-radius: 50px;
  background: #ff5500;
  color: var(--MAIN_WHITE);
  position: relative;
  font-weight: bold;
}

.tp-front__contact > a::before,
.tp-front__contact > a::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
}

.tp-front__contact > a::before {
  left: 10%;
  width: 1.5em;
  aspect-ratio: 200/150;
  background: url(../images/common/icon_mail.svg) no-repeat center center/contain;
}

.tp-front__contact > a::after {
  right: 10%;
  width: 0.4em;
  aspect-ratio: 97/150;
  background: url(../images/common/icon_arrow.svg) no-repeat center center/contain;
}

.tp-front__contact > a:hover {
  background-color: #e52c00;
}

@media screen and (min-width: 768px) {
  .tp-front__section,
  .cc-front__section {
    --contents_mgb: 40px;
  }
  .tp-front__contact > a {
    padding: 18px 0;
    width: 380px;
  }
  .tp-front__section,
  .cc-front__section {
    padding: 120px 0 60px;
    text-align: center;
  }
  .tp-front__ttl,
  .btm-front__ttl,
  .add-front__ttl {
    padding: 0 30px 5px;
  }
  .tp-front__caption,
  .add-front__caption {
    font-size: 16px;
  }
  .add-front__caption > span {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .tp-front__section,
  .cc-front__section {
    --contents_mgb: 20px;
  }
  .tp-front__contact > a {
    padding: 10px 0;
    max-width: 300px;
    width: 70%;
  }
  .tp-front__section,
  .cc-front__section {
    padding: 80px 0 60px;
  }
  .cc-front__section {
    min-height: 200px;
    margin-bottom: 120px;
  }
  .tp-front__ttl,
  .btm-front__ttl,
  .add-front__ttl {
    padding: 0 30px;
  }
  .tp-front__caption,
  .add-front__caption {
    font-size: 14px;
  }
  .add-front__caption > span {
    font-size: 21px;
  }
}
/* ------------------ tp-design__section -------------------- */
.tp-design__contents {
  gap: 20px;
}

.tp-design__section .tp-local__wrap {
  display: flex;
  flex-direction: column;
  gap: 2em;
}

.tp-design__thumb {
  flex-shrink: 0;
  display: flex;
}

.tp-want__thumb {
  margin-right: auto;
  margin-left: auto;
}

.tp-design__section .fit-content {
  height: -moz-fit-content;
  height: fit-content;
}

.tp-design__contents.__center {
  text-align: center;
}

.tp-design__contents.__center .tp-design__thumb {
  max-width: 200px;
  width: 100%;
  margin: 35px auto 0;
}

@media screen and (min-width: 768px) {
  .tp-design__thumb {
    width: 30%;
  }
  .tp-design__thumb.center {
    margin: 0 auto;
  }
  .tp-design__thumb-100 {
    width: 100%;
    margin-top: 30px;
  }
  .tp-design__thumb.width-40 {
    width: 40%;
  }
  .tp-design__thumb.width-70 {
    width: 70%;
    margin-top: 30px;
  }
  .tp-want__thumb {
    width: 300px;
  }
  .tp-want__thumb.width-50 {
    width: 50%;
  }
  .tp-want__thumb.width-55 {
    width: 55%;
  }
  .tp-want__thumb.width-60 {
    width: 60%;
  }
  .tp-want__thumb.width-65 {
    width: 65%;
  }
  .tp-want__thumb.width-70 {
    width: 70%;
  }
  .tp-want__thumb.width-75 {
    width: 75%;
  }
  .tp-want__thumb.width-80 {
    width: 80%;
  }
  .tp-want__thumb.width-85 {
    width: 80%;
  }
  .tp-want__thumb.width-100 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .tp-design__contents {
    flex-flow: column;
  }
  .tp-design__thumb {
    max-width: 200px;
    width: 80%;
    margin: 0 auto;
  }
  .tp-design__thumb-100 {
    margin-top: 30px;
  }
  .tp-design__contents.__center .tp-design__thumb {
    width: 80%;
  }
  .tp-want__thumb {
    max-width: 300px;
    width: 60%;
  }
}
/* ------------------ tp-want__section -------------------- */
.tp-want__local {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.7;
  text-align: center;
}

.tp-want__local__wrap {
  margin-bottom: var(--margin_template_s);
}

@media screen and (max-width: 767px) {
  .tp-want__local {
    font-size: 16px;
  }
}
/* ------------------ tp-price__section -------------------- */
.tp-table_caption {
  width: 104%;
  text-align: end;
}

.tp-attention__price {
  text-align: center;
  font-weight: bold;
  color: var(--MAIN_ORANGE);
  margin-bottom: 10px;
}

.tp-attention__price > .First {
  width: 4.2em;
  aspect-ratio: 1/1;
  display: inline-flex;
  line-height: 1.2;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--MAIN_ORANGE);
  border-radius: 50%;
  vertical-align: text-bottom;
  margin-right: -3px;
  font-weight: 500;
}

.tp-attention__price > .Yen {
  font-size: 28px;
  position: relative;
  margin-left: -8px;
}

.tp-attention__price > .Yen:after {
  position: absolute;
  content: "(税込)";
  bottom: calc(100% - 5px);
  left: 0;
  font-size: 12px;
}

.tp-attention__caption {
  text-align: center;
  font-size: 18px;
}

.tp-attention__caption > span {
  border: 1.5px solid var(--ATTENTION_TAG);
  color: var(--ATTENTION_TAG);
  border-radius: 50px;
  margin-right: 6px;
  font-size: 15px;
}

@media screen and (min-width: 768px) {
  .tp-attention__price {
    font-size: 56px;
  }
  .tp-attention__price .First {
    font-size: 16px;
  }
  .tp-attention__caption > span {
    padding: 2px 8px 3px;
  }
}
@media screen and (max-width: 767px) {
  .tp-attention__price {
    font-size: 46px;
  }
  .tp-attention__price .First {
    font-size: 14px;
  }
  .tp-attention__caption > span {
    padding: 2px 8px;
  }
}
/* ------------------ tp-option__section -------------------- */
.tp-option__list {
  position: relative;
  gap: 60px;
  display: flex;
  flex-flow: column;
}

.tp-option__list > li.__orange {
  --theme_color: var(--OPTION_ORANGE);
}

.tp-option__list > li.__yellow {
  --theme_color: var(--OPTION_YELLOW);
}

.tp-option__list > li.__red {
  --theme_color: var(--OPTION_RED);
}

.tp-option__listTtl {
  font-weight: bold;
  font-size: var(--ttl_size);
  padding-left: 1em;
  border-left: 2px solid var(--theme_color);
  margin-bottom: 1.5em;
}

.tp-option__listTtl.__caption {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}

.tp-option__iconlist {
  gap: 20px;
  display: flex;
  flex-flow: column;
}

.tp-option__iconlist .Ttl {
  justify-content: space-between;
  font-size: var(--ttl_size);
  font-weight: 500;
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--MAIN_BLACK);
  gap: 20px;
}

.tp-option__iconlist .Ttl span {
  font-size: calc(var(--ttl_size) - 2px);
}

.tp-option__iconlist .Ttl > .Min {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  position: relative;
  padding-left: 1.2em;
  font-weight: bold;
}

.tp-option__iconlist .Ttl > .Min:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "■";
  display: block;
  color: var(--theme_color);
  margin-right: 5px;
}

.tp-option__iconlist .Ttl > .Sub {
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .tp-option__list {
    --ttl_size: 18px;
  }
  .tp-option__listTtl.__caption:after {
    font-size: 15px;
  }
  .tp-option__iconlist {
    padding-left: 3.4em;
  }
  .tp-option__iconlist .Local {
    padding-left: 2em;
  }
  .tp-option__listTtl.__caption:after {
    content: "※価格は税込表記です";
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .tp-option__list {
    --ttl_size: 14px;
  }
  .tp-option__listTtl.__caption:after {
    font-size: 13px;
  }
  .tp-option__list:after {
    position: absolute;
    content: "※価格は税込表記です";
    font-weight: 400;
    right: 0;
    top: calc(100% + 10px);
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
  }
  .tp-option__listTtl,
  .tp-option__iconlist .Ttl {
    font-size: 16px;
  }
}
/* ------------------ tp-heed__section -------------------- */
.tp-heed__container {
  border: 1px solid #9b9b9b;
  padding: 35px 75px;
}

.tp-heed__txt {
  font-size: 16px;
  line-height: 1.75;
  color: var(--CAUTION_TXT_RED);
}

.tp-heed__txt:before {
  content: "※";
}

@media screen and (max-width: 767px) {
  .tp-heed__container {
    padding: 20px;
  }
  .tp-heed__txt {
    font-size: 14px;
  }
}
/* ------------------ tp-frow__section -------------------- */
.tp-flow__list {
  gap: 40px;
  display: flex;
  flex-flow: column;
  counter-reset: flow_counter;
}

.tp-flow__list > article {
  position: relative;
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 10px;
}

.tp-flow__listL {
  position: relative;
  color: var(--MAIN_WHITE);
  width: 6.1em;
  font-weight: bold;
  counter-increment: flow_counter;
  text-align: center;
}

.tp-flow__listL > p {
  background-color: var(--MAIN_ORANGE);
  font-size: 16px;
  display: inline-block;
  padding: 0 0.5em;
}

.tp-flow__listL > p::after {
  content: counter(flow_counter, decimal-leading-zero);
  font-size: 21px;
}

.tp-frow__listR {
  flex: 1;
}

.tp-frow__listR > .Ttl {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
  color: var(--MAIN_ORANGE);
}

.tp-frow__listR .List > li:before {
  color: var(--MAIN_ORANGE);
}

.tp-frow__listR .List > li:nth-child(1):before {
  content: "①";
}

.tp-frow__listR .List > li:nth-child(2):before {
  content: "②";
}

.tp-frow__listR .List > li:nth-child(3):before {
  content: "③";
}

.tp-frow__listR .List > li:nth-child(4):before {
  content: "④";
}

.tp-frow__listR .List > li:nth-child(5):before {
  content: "⑤";
}

.tp-frow__listR .List > li:nth-child(6):before {
  content: "⑥";
}

.tp-frow__listR .List > li:nth-child(7):before {
  content: "⑦";
}

.tp-frow__listR .List > li:nth-child(8):before {
  content: "⑧";
}

.tp-frow__listR .List > li:nth-child(9):before {
  content: "⑨";
}

.tp-frow__txtList {
  gap: 10px;
  display: flex;
  flex-flow: column;
}

.tp-frow__txtList .Ttl {
  color: var(--MAIN_ORANGE);
  font-weight: bold;
}

.tp-frow__txtList .Ttl:before,
.tp-frow__txtList .Ttl:after {
  color: var(--MAIN_BLACK);
  letter-spacing: -2px;
}

.tp-frow__txtList .Ttl:before {
  content: "【";
}

.tp-frow__txtList .Ttl:after {
  content: "】";
}

@media screen and (min-width: 768px) {
  .tp-flow__listL:after {
    position: absolute;
    content: "";
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 1px;
    height: calc(100% - 3.5em);
    background-color: var(--TABLE_BORDER_GRAY);
  }
  .tp-frow__listR .Local {
    min-height: 1.7em;
  }
}
/* ------------------ tp-plan__section -------------------- */
@media screen and (max-width: 767px) {
  .tp-flow__list > article {
    flex-flow: column;
  }
}
/* ------------------ tp-case__section -------------------- */
.tp-case__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: var(--contents_gap_row);
}

.tp-case__list > article {
  display: flex;
  flex-flow: column;
}

.tp-case__list > article .Thumb {
  margin-bottom: 10px;
}

.tp-case__list > article .Caption {
  font-size: 12px;
}

.tp-case__list > article .Ttl {
  font-weight: bold;
  margin-bottom: 10px;
}

.tp-case__list > article .Link,
.tp-voice__list > article .Link {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  font-weight: bold;
  flex-grow: 1;
}

.tp-case__list > article .Link > a,
.tp-voice__list > article .Link > a {
  position: relative;
  padding-right: 25px;
}

.tp-case__list > article .Link > a:after,
.tp-voice__list > article .Link > a:after {
  position: absolute;
  content: "";
  aspect-ratio: 1/1;
  width: 1.2em;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background: url(../images/common/icon_next.svg) no-repeat center center/contain;
  transition: 0.8s;
}

.tp-case__list > article .Link > a:hover:after,
.tp-voice__list > article .Link > a:hover:after {
  right: -5px;
  background: url(../images/common/icon_next_active.svg) no-repeat center center/contain;
}

.tp-case__listTags {
  font-size: 12px;
  gap: 5px;
  flex-wrap: wrap;
  padding: 1.5em 0;
}

.tp-case__listTags > li {
  border-radius: 50px;
  padding: 0 1.25em;
  border: 1px solid var(--border);
  background-color: var(--bg);
  color: var(--color);
}

.tp-case__listTags > li.__regular {
  --border: var(--MAIN_BLACK);
  --bg: var(--MAIN_WHITE);
  --color: var(--MAIN_BLACK);
}

.tp-case__listTags > li.__light {
  --border: var(--MAIN_YELLOW);
  --bg: var(--MAIN_YELLOW);
  --color: var(--MAIN_BLACK);
}

.tp-case__listTags > li.__standard {
  --border: var(--TABLE_ORANGE);
  --bg: var(--TABLE_ORANGE);
  --color: var(--MAIN_WHITE);
}

.tp-case__listTags > li.__premium {
  --border: var(--MAIN_ORANGE);
  --bg: var(--MAIN_ORANGE);
  --color: var(--MAIN_WHITE);
}

@media screen and (min-width: 768px) {
  .tp-case__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .tp-case__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .tp-case__section .tp-bglg {
    line-height: 2.5;
  }
  .tp-case__section .tp-table {
    padding-bottom: 3em;
    display: block;
  }
}
/* ------------------ tp-point__section -------------------- */
.tp-point__ttl__span {
  font-size: 16px;
  display: block;
  margin-bottom: 10px;
  font-weight: bold;
}

.tp-point__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: var(--contents_gap_row);
}

.tp-point__list > li {
  border: 2px solid var(--GRADATION_ORANGE);
  padding: 50px 30px;
  border-radius: 30px;
}

.tp-point__list .Thumb {
  margin-bottom: 10px;
}

.tp-point__list .Ttl {
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 18px;
  margin-bottom: 1em;
  line-height: 1.4;
}

.tp-point__list .Ttl__txt {
  width: calc(100% - 50px);
}

.tp-point__list > li > .Ttl:before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  margin-right: 10px;
  width: 40px;
}

.tp-point__list > li:nth-child(1) > .Ttl::before {
  background: url(../images/template/icon_point01.svg) no-repeat center center/contain;
}

.tp-point__list > li:nth-child(2) > .Ttl::before {
  background: url(../images/template/icon_point02.svg) no-repeat center center/contain;
}

.tp-point__list > li:nth-child(3) > .Ttl::before {
  background: url(../images/template/icon_point03.svg) no-repeat center center/contain;
}

.tp-point__list > li:nth-child(4) > .Ttl::before {
  background: url(../images/template/icon_point04.svg) no-repeat center center/contain;
}

.tp-point__list > li:nth-child(5) > .Ttl::before {
  background: url(../images/template/icon_point05.svg) no-repeat center center/contain;
}

.tp-point__list > li:nth-child(6) > .Ttl::before {
  background: url(../images/template/icon_point06.svg) no-repeat center center/contain;
}

.tp-ttl__balloon__span > span {
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .tp-point__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-point__list.__1clm {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 6px;
  }
  .tp-ttl__balloon__span > span {
    font-size: 36px;
  }
}
@media screen and (max-width: 767px) {
  .tp-point__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .tp-ttl__balloon__span > span {
    font-size: 28px;
  }
}
/* ------------------ tp-others__section -------------------- */
.tp-others__section {
  margin-top: 80px;
  margin-bottom: 0;
}

.tp-others__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: var(--contents_gap_row);
}

.tp-others__list > article .Thumb {
  margin-bottom: 10px;
  max-width: 375px;
  margin-right: auto;
  margin-left: auto;
}

.tp-others__list > article .Thumb img {
  border-radius: 20px;
  border: 2px solid var(--GRADATION_ORANGE);
  aspect-ratio: 304/231;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.tp-others__list > article .Ttl {
  text-align: center;
  font-weight: bold;
  --small_size: 15;
  --large_size: 18;
  --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 768) * 100vw), calc(var(--large_size) * 1px));
  font-size: var(--clamp);
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .tp-others__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .tp-others__section {
    margin-top: 40px;
  }
  .tp-others__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
/* ------------------ tp-works__section -------------------- */
.tp-local__list {
  display: grid;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 30px;
}

.tp-local__list > article {
  display: flex;
  flex-flow: column;
}

.tp-local__list .Tag {
  flex-grow: 1;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: var(--MAIN_ORANGE);
  color: var(--MAIN_WHITE);
  margin-bottom: 15px;
  padding: 3px 5px;
  font-size: 14px;
}

.tp-local__list .Tag::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 1px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: var(--MAIN_ORANGE) transparent transparent transparent;
}

.tp-local__list .Thumb {
  max-width: 150px;
  margin-right: auto;
  margin-left: auto;
}

.tp-local__list .Thumb img {
  /* border-radius: ; */
}

@media screen and (min-width: 1221px) {
  .br-1220 {
    display: none;
  }
}
@media screen and (min-width: 951px) and (max-width: 1220px) {
  .br-1220 {
    display: block;
  }
}
@media screen and (min-width: 1041px) {
  .br-1040 {
    display: none;
  }
}
@media screen and (min-width: 951px) and (max-width: 1040px) {
  .br-1040 {
    display: block;
  }
}
@media screen and (max-width: 950px) {
  .br-1040,
  .br-1220 {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .tp-works__wrapper--s {
    width: 95%;
    margin-right: auto;
    margin-left: auto;
  }
  .tp-local__list {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .tp-local__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* ------------------ tp-seo__section -------------------- */
.tp-seo__thumb {
  width: 50%;
  max-width: 220px;
  margin-right: auto;
  margin-left: auto;
}

/* ------------------ tp-merit**__section -------------------- */
.tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:before {
  font-size: 60px;
  left: 64px;
}

.tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:after {
  content: "メリット";
  font-size: 16px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  color: var(--MAIN_YELLOW);
}

.tp-sec[class*=tp-merit] .tp-ttl.__num01:before {
  content: "1";
}

.tp-sec[class*=tp-merit] .tp-ttl.__num02:before {
  content: "2";
}

.tp-sec[class*=tp-merit] .tp-ttl.__num03:before {
  content: "3";
}

.tp-sec[class*=tp-merit] p[class$=__thumb] {
  max-width: 300px;
  margin: 0 auto;
}

.tp-sec[class*=tp-merit] p[class$=__thumb-470] {
  max-width: 470px;
  margin: 0 auto;
}

@media screen and (max-width: 1200px) {
  .tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:not(.__balloon) {
    padding-left: 124px;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:not(.__balloon) {
    padding: 40px 0 0;
  }
  .tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:before {
    font-size: 40px;
    left: 56px;
    top: 0;
    transform: none;
  }
  .tp-sec[class*=tp-merit] .tp-ttl[class*=__num]:after {
    font-size: 14px;
    left: 0;
    top: 20px;
    transform: translateY(-50%);
  }
  .tp-sec[class*=tp-merit] p[class$=__thumb] {
    width: 80%;
  }
}
/* ------------------ tp-voice__section -------------------- */
.tp-voice__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: var(--contents_gap_row);
}

.tp-voice__list > article {
  display: flex;
  flex-flow: column;
}

.tp-voice__list .Caption,
.tp-rental__listCaption {
  position: relative;
  border-bottom: 2px solid var(--MAIN_ORANGE);
  padding-bottom: 0.8em;
  font-weight: bold;
  margin-bottom: 25px;
}

.tp-voice__list .Caption::before,
.tp-rental__listCaption::before {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% + 2px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: var(--MAIN_ORANGE) transparent transparent transparent;
}

.tp-voice__list .Caption::after,
.tp-rental__listCaption::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 0.5px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: var(--MAIN_WHITE) transparent transparent transparent;
}

.tp-voice__list .Thumb img {
  margin-bottom: 15px;
  border-radius: 20px;
}

.tp-voice__info {
  margin-bottom: 15px;
}

.tp-voice__info > .Industry,
.tp-voice__info > .Area {
  font-size: 12px;
}

@media screen and (min-width: 768px) {
  .tp-voice__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .tp-voice__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
/* ------------------ tp-faq__section -------------------- */
.g-acodion dl:not(:last-child) {
  position: relative;
}

.g-acodion dl:not(:last-child):after {
  content: "";
  background-image: linear-gradient(to right, var(--GRADATION_ORANGE), var(--GRADATION_ORANGE) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1.5px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1.5px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.g-acodion dt {
  cursor: pointer;
  position: relative;
}

.g-acodion dd {
  display: none;
  font-weight: bold;
  line-height: 2;
  position: relative;
}

.g-acodion dt::before,
.g-acodion dd::before {
  font-weight: bold;
  position: absolute;
  border: 1.5px solid var(--MAIN_ORANGE);
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.g-acodion dt::before {
  content: "Q";
  top: 0px;
  color: var(--MAIN_ORANGE);
}

.g-acodion dd::before {
  content: "A";
  background-color: var(--MAIN_ORANGE);
  color: var(--MAIN_WHITE);
}

.g-acodion dt::after {
  position: absolute;
  content: "";
  background: url(../images/template/icon_accodion_plus.svg) no-repeat center center/contain;
  width: 1.2em;
  aspect-ratio: 1/1;
  transition: 0.3s;
}

.g-acodion dt.active::after {
  background: url(../images/template/icon_accodion_minus.svg) no-repeat center center/contain;
}

.tp-faq__addTxt {
  display: block;
  margin: 20px 0;
  font-size: 0.9em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .g-acodion dl:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 40px;
  }
  .g-acodion dt {
    padding: 0 60px;
  }
  .g-acodion dd {
    margin-top: 20px;
    padding: 10px 60px 10px;
  }
  .g-acodion dt::before,
  .g-acodion dd::before {
    left: 20px;
    font-size: 12px;
    width: 25px;
  }
  .g-acodion dt::after {
    top: 3.5px;
    right: 5px;
  }
  .g-acodion dd::before {
    top: 13px;
  }
}
@media screen and (max-width: 767px) {
  .g-acodion dl:not(:last-child) {
    padding-bottom: 15px;
    margin-bottom: 30px;
  }
  .g-acodion dt {
    padding: 0 35px;
  }
  .g-acodion dd {
    padding: 10px 35px 10px;
  }
  .g-acodion dt::before,
  .g-acodion dd::before {
    left: 5px;
    font-size: 10px;
    width: 20px;
  }
  .g-acodion dt::after {
    font-size: 16px;
    top: 3.5px;
    right: 5px;
  }
  .g-acodion dd::before {
    top: 14px;
  }
}
/* ------------------ tp-preparation__section -------------------- */
@media screen and (min-width: 801px) {
  .br-800 {
    display: none;
  }
}
@media screen and (max-width: 800px) {
  .br-800 {
    display: block;
  }
}
/* ------------------ tp-preparation__section -------------------- */
.tp-preparation__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: var(--contents_gap_row);
  counter-reset: num_counter;
}

.tp-preparation__list > article {
  counter-increment: num_counter;
  display: flex;
  flex-flow: column;
}

.tp-preparation__list .Thumb img {
  border-radius: 20px;
  margin-bottom: 15px;
}

.tp-preparation__list .List > li {
  position: relative;
  padding-left: 25px;
}

.tp-preparation__list .List > li > span {
  color: var(--MAIN_ORANGE);
  display: block;
  font-size: 14px;
}

.tp-preparation__list .Ttl {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 15px;
  position: relative;
  display: flex;
  align-items: center;
  flex-grow: 1;
}

.tp-preparation__list .List > li:not(:first-child):not(:last-child) {
  margin-bottom: 10px;
}

.tp-preparation__list .List > li:before {
  position: absolute;
  left: 0;
  width: 20px;
  aspect-ratio: 1/1;
}

.tp-preparation__list .Ttl:before {
  content: counter(num_counter, decimal-leading-zero);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  background-color: var(--TABLE_RED);
  border-radius: 50%;
  color: var(--MAIN_WHITE);
  width: 21px;
  height: 21px;
  margin-right: 5px;
  flex-shrink: 0;
}

.tp-preparation__list .List > li:nth-child(1):before {
  content: "";
  top: 2px;
  background: url(../images/template/icon_picture.svg) no-repeat center center/contain;
}

.tp-preparation__list .List > li:nth-child(2):before {
  content: "";
  top: 2px;
  background: url(../images/template/icon_youtube.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .tp-preparation__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .tp-preparation__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* ------------------ tp-generator__section -------------------- */
.tp-generator__list {
  gap: 20px;
}

.tp-generator__list > li {
  position: relative;
}

.tp-generator__list > li .Thumb {
  margin-right: auto;
  margin-left: auto;
}

.tp-generator__list .Caption {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  margin-bottom: 15px;
  font-size: 14px;
  white-space: nowrap;
}

.tp-generator__list > li.__arrow {
  flex-shrink: 0;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  position: relative;
  margin: 0 auto;
}

.tp-generator__list > li.__arrow.__orange {
  --color: var(--GRADATION_ORANGE);
}

.tp-generator__list > li.__arrow.__red {
  --color: var(--TABLE_RED);
}

.tp-generator__list > li.__arrow > .Txt {
  width: 100%;
  text-align: center;
  background-color: var(--color);
  color: var(--MAIN_WHITE);
  border-radius: 4px;
  position: relative;
}

.tp-generator__list > li.__arrow > .Txt:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
}

.tp-generator__list > li.__arrow > .Small {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
}

.tp-generator__list > li.__arrow > .Balloon {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
  color: var(--color);
  font-weight: bold;
  padding: 0.2em 0.5em;
  background-color: var(--MAIN_WHITE);
  border: 1.5px solid var(--color);
  border-radius: 6px;
}

.tp-generator__list > li.__arrow > .Balloon::before,
.tp-generator__list > li.__arrow > .Balloon::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
}

@media screen and (min-width: 768px) {
  .tp-generator__list > li.__obj,
  .tp-generator__list > li.__arrow {
    padding-top: 35px;
  }
  .tp-generator__list > li.__generator .Thumb {
    flex: 1.2;
    height: 50px;
  }
  .tp-generator__list > li.__company .Thumb {
    flex: 1;
    height: 50px;
  }
  .tp-generator__list > li.__shop .Thumb {
    flex: 1;
    height: 50px;
  }
  .tp-generator__list > li.__arrow {
    --small_size: 12;
    --large_size: 16;
    --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 950) * 100vw), calc(var(--large_size) * 1px));
    font-size: var(--clamp);
    width: 6em;
  }
  .tp-generator__list > li.__arrow > .Balloon {
    top: calc(100% + 15px);
    left: 50%;
    transform: translateX(-50%);
  }
  .tp-generator__list > li.__arrow > .Small {
    top: calc(100% + 10px);
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .tp-generator__list > li.__arrow > .Txt:after {
    top: 0;
    right: -5px;
    border-radius: 5px 8px;
    border-color: transparent var(--color) var(--color) transparent;
    transform: translateY(-0.28em) rotate(-45deg);
    border-width: 1.2em;
  }
  .tp-generator__list > li.__arrow > .Balloon {
    font-size: 18px;
  }
  .tp-generator__list > li.__arrow > .Small {
    font-size: 13px;
  }
  .tp-generator__list > li.__arrow > .Balloon::before,
  .tp-generator__list > li.__arrow > .Balloon::after {
    left: 50%;
    transform: translateX(-50%);
    border-width: 0 8px 8px 8px;
  }
  .tp-generator__list > li.__arrow > .Balloon::before {
    bottom: 100%;
    border-color: transparent transparent var(--color) transparent;
  }
  .tp-generator__list > li.__arrow > .Balloon::after {
    bottom: calc(100% - 1.5px);
    border-color: transparent transparent var(--MAIN_WHITE) transparent;
  }
}
@media screen and (max-width: 767px) {
  .tp-generator__list {
    flex-flow: column;
  }
  .tp-generator__list > li.__obj {
    padding-top: 40px;
  }
  .tp-generator__list > li.__arrow {
    margin-bottom: 30px;
    width: 4.75em;
  }
  .tp-generator__list > li.__arrow .Txt {
    height: 3.5em;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .tp-generator__list > li.__arrow > .Balloon {
    top: 50%;
    transform: translateY(-50%);
    left: calc(100% + 20px);
  }
  .tp-generator__list > li.__arrow > .Small {
    top: 50%;
    transform: translateY(-50%);
    left: calc(100% + 20px);
  }
  .tp-generator__list > li.__arrow > .Txt:after {
    top: calc(100% - 8px);
    left: 50%;
    border-radius: 5px 5px;
    border-color: var(--color) transparent transparent var(--color);
    transform: translate(-50%, -50%) rotateZ(225deg);
    border-width: 30px;
  }
  .tp-generator__list > li .Thumb img {
    max-height: 100px;
  }
  .tp-generator__list > li.__arrow > .Balloon {
    font-size: 16px;
  }
  .tp-generator__list > li.__arrow > .Small {
    font-size: 11px;
  }
  .tp-generator__list > li.__arrow > .Balloon::before,
  .tp-generator__list > li.__arrow > .Balloon::after {
    top: 50%;
    transform: translateY(-50%);
    border-width: 8px 8px 8px 0;
  }
  .tp-generator__list > li.__arrow > .Balloon::before {
    right: 100%;
    border-color: transparent var(--color) transparent transparent;
  }
  .tp-generator__list > li.__arrow > .Balloon::after {
    right: calc(100% - 1.5px);
    border-color: transparent var(--MAIN_WHITE) transparent transparent;
  }
}
/* ------------------ tp-rental__section -------------------- */
.tp-rental__list {
  display: grid;
  -moz-column-gap: var(--contents_gap_col);
       column-gap: var(--contents_gap_col);
  row-gap: 40px;
}

.tp-rental__listTtl {
  text-align: center;
  font-weight: bold;
  color: var(--MAIN_ORANGE);
  font-size: 14px;
}

.tp-rental__listQuestion {
  font-size: 14px;
  background: var(--RENTAL_QUESTION_BG) url(../images/template/obj_staff.svg) no-repeat 15px center/min(40px, 20%);
  margin-bottom: 10px;
  min-height: 95px;
  display: flex;
  align-items: center;
}

.tp-rental__contents {
  color: var(--MAIN_WHITE);
  gap: 10px;
  display: grid;
  flex-grow: 1;
}

.tp-rental__contents > li {
  background-color: var(--MAIN_ORANGE);
  padding: 10px 15px;
  flex: 1;
}

.tp-rental__contents > li .Ttl {
  margin-bottom: 5px;
}

.tp-rental__contents > li .Local {
  font-size: 12px;
}

.tp-rental__listCaption {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1261px) {
  .tp-rental__list {
    grid-template-columns: repeat(3, 1fr);
  }
  .tp-rental__listQuestion {
    padding: 10px 15px 10px 65px;
  }
}
@media screen and (min-width: 951px) and (max-width: 1260px) {
  .tp-rental__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-rental__listQuestion {
    padding: 10px 15px 10px 65px;
  }
}
@media screen and (min-width: 768px) and (max-width: 950px) {
  .tp-rental__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .tp-rental__listQuestion {
    padding: 10px 15px 10px 65px;
    background: var(--RENTAL_QUESTION_BG) url(../images/template/obj_staff.svg) no-repeat 15px center/12%;
  }
}
@media screen and (min-width: 768px) {
  .tp-rental__listTtl {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .tp-rental__list > article {
    display: grid;
    grid-template-rows: 0.4fr auto auto 1fr;
  }
  .tp-rental__contents {
    grid-template-rows: repeat(auto-fit, minmax(100px, 1fr));
    min-height: 200px;
  }
}
@media screen and (max-width: 767px) {
  .tp-rental__listQuestion {
    --small_size: var(--large_size) * var(--sp_mag);
    --large_size: 100;
    --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 375) * 100vw), calc(var(--large_size) * 1px));
    padding: 10px 15px 10px var(--clamp);
    background: var(--RENTAL_QUESTION_BG) url(../images/template/obj_staff.svg) no-repeat 10px center/min(45px, 12%);
  }
  .tp-rental__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .tp-rental__listTtl {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
/* ------------------ tp-service__section -------------------- */
.tp-service__flexcontainer {
  display: flex;
  gap: 40px;
}

.tp-service__thumb {
  display: flex;
  flex-shrink: 0;
  margin-right: auto;
  margin-left: auto;
}

.tp-service__thumb img {
  border: 1.5px solid var(--GRADATION_ORANGE);
  border-radius: 20px;
}

@media screen and (min-width: 768px) {
  .tp-service__thumb {
    width: 35%;
  }
}
@media screen and (max-width: 767px) {
  .tp-service__flexcontainer {
    flex-flow: column;
  }
  .tp-service__thumb {
    max-width: 300px;
    max-height: 160px;
  }
  .tp-service__thumb img {
    -o-object-position: center 20%;
       object-position: center 20%;
  }
}
/* ------------------ tp-contact__section -------------------- */
.tp-contact__container {
  position: relative;
  background-color: var(--MAIN_YELLOW);
  padding: 40px 20px;
  border-radius: 20px;
}

.tp-contact__container:after {
  position: absolute;
  width: 19%;
  aspect-ratio: 1/1;
  background: url(../images/common/img_operator.png) no-repeat center/contain;
}

@media screen and (min-width: 1151px) {
  .tp-contact__container:after {
    top: -10px;
    right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1150px) {
  .tp-contact__container:after {
    top: -10%;
    right: 20px;
  }
}
@media screen and (min-width: 768px) {
  .tp-contact__container:after {
    content: "";
  }
}
@media screen and (max-width: 767px) {
  .tp-contact__container:after {
    top: -10%;
    right: 10px;
    min-width: 80px;
  }
  .tp-contact__section .tp-ttl__balloon__span {
    font-size: 17px;
    width: 100%;
    line-height: 1.3;
    padding: 0.5em 0;
    max-width: 255px;
  }
}
.tp-contact__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  -moz-column-gap: 10px;
       column-gap: 10px;
}

.tp-contact__list > li {
  position: relative;
}

.tp-contact__list > li.__mail > .Btn:after,
.tp-contact__list > li.__line > .Btn:after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 10%;
  width: 10px;
  aspect-ratio: 1/1;
  background: url(../images/common/icon_arrow.svg) no-repeat center center/contain;
}

.tp-contact__list > li.__mail > .Btn {
  background: var(--CONTACT_BLUE) url(../images/common/icon_mail.svg) no-repeat 15% center/20px;
}

.tp-contact__list > li.__line > .Btn {
  background: var(--CONTACT_GREEN) url(../images/template/icon_line.svg) no-repeat 15% center/26px;
}

.tp-contact__list > li.__phone > .Btn:hover {
  background-color: var(--CONTACT_RED_NAVY);
}

.tp-contact__list > li.__mail > .Btn:hover {
  background-color: var(--CONTACT_BLUE_NAVY);
}

.tp-contact__list > li.__line > .Btn:hover {
  background-color: var(--CONTACT_GREEN_NAVY);
}

.tp-contact__list .Btn {
  position: relative;
  display: flex;
  /* padding: 6px; */
  justify-content: center;
  color: var(--MAIN_WHITE);
  border-radius: 50px;
  text-align: center;
  line-height: 1.4;
  height: 65px;
  flex-flow: column;
}

.tp-contact__list .Btn > span {
  display: block;
}

.tp-contact__list > li.__phone > .Btn > span:first-child {
  margin-left: 15px;
}

.tp-contact__list .Btn > span:first-child {
  font-size: 20px;
}

.tp-contact__list > li.__phone .Btn > span:last-child {
  font-size: 13px;
}

.tp-contact__list > li:is(.__mail, .__line) .Btn > span:last-child {
  font-size: 16px;
}

.tp-contact__list .Caption {
  position: absolute;
  display: block;
  width: -moz-max-content;
  width: max-content;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(transparent 70%, var(--MAIN_WHITE) 30%);
  font-size: 17px;
}

.tp-contact__list .Caption > span {
  --border_child_position: -14px;
  --border_parent_position: -11px;
  position: relative;
}

.tp-contact__list .Caption > span:after,
.tp-contact__list .Caption > span:before {
  content: "";
  position: absolute;
  width: 1px;
  display: inline-block;
  background-color: var(--MAIN_BLACK);
}

.tp-contact__list .Caption > span:after {
  height: 1em;
  bottom: 7px;
}

.tp-contact__list .Caption > span:before {
  height: 0.6em;
  bottom: 3px;
}

.tp-contact__list .Caption > span:first-child:after {
  transform: rotateZ(-20deg);
  left: var(--border_parent_position);
}

.tp-contact__list .Caption > span:first-child:before {
  transform: rotateZ(-35deg);
  left: var(--border_child_position);
}

.tp-contact__list .Caption > span:last-child:after {
  transform: rotateZ(20deg);
  right: var(--border_parent_position);
}

.tp-contact__list .Caption > span:last-child:before {
  transform: rotateZ(35deg);
  right: var(--border_child_position);
}

@media screen and (min-width: 768px) {
  .tp-contact__list > li {
    padding-top: 35px;
  }
  .tp-contact__list > li {
    width: 220px;
  }
  .tp-contact__list > li.__phone > .Btn {
    background: var(--CONTACT_RED) url(../images/common/icon_phone_white.svg) no-repeat 10% 23%/20px;
  }
}
@media screen and (max-width: 767px) {
  .tp-contact__list {
    row-gap: 20px;
  }
  .tp-contact__list > li:not(:last-child) {
    padding-top: 35px;
  }
  .tp-contact__list > li {
    width: 100%;
    max-width: 255px;
  }
  .tp-contact__list > li.__phone > .Btn {
    background: var(--CONTACT_RED) url(../images/common/icon_phone_white.svg) no-repeat 39px calc(23% + 2px)/20px;
  }
}
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■下層ページ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ------------------ global -------------------- */
.btm-front__section,
.add-front__section {
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  transform: translateY(calc(var(--padding_block) * -1));
  text-align: center;
}

.add-front__section {
  border-radius: 18px 18px 0 0;
}

/* ★24.1作業　mv */
/* -----　open/index.html　販促物制作事例ページ用mvここまで　----- */
.btm-front__section.promotionlist {
  background-image: url(../images/promotiondesign-jirei/front.png);
}

/* -----　open/index.html　開業相談ページ用mvここから　----- */
.btm-front__section.kaigyou {
  background-image: url(../images/kaigyousoudan/front.jpg);
}

/* -----　open/index.html　開業相談ページ用mvここまで　----- */
.btm-front__section.logolist {
  background-image: url(../images/logolist/front.jpg);
}

.btm-front__section.homepage {
  background-image: url(../images/homepagelist/front.jpg);
}

.btm-front__section.kaigyoumae {
  background-image: url(../images/kaigyoumae/front.jpg);
}

.btm-front__section.kaigyougo {
  background-image: url(../images/kaigyougo/front.jpg);
}

/* -----　menu/index.html　食材仕入れページ用mv　----- */
.btm-front__section.menu {
  background-image: url(../images/menu/mv_menu.jpg);
}

/* -----　telecom/index.html　店舗インフラページ用mv_sp　----- */
.btm-front__section.telecom {
  background-image: url(../images/telecom/mv_telecom.jpg);
  background-position: 50% 50%;
}

/* -----　marketing/index.html　集客ページ用mv　----- */
.btm-front__section.marketing {
  background-image: url(../images/marketing/mv_marketing.jpg);
}

/* -----　promotion/index.html　販促デザインページ用mv　----- */
.btm-front__section.promotion {
  background-image: url(../images/promotion/mv_promotion.jpg);
}

/* -----　resources/index.html　人材・求人ページ用mv　----- */
.btm-front__section.resources {
  background-image: url(../images/resources/mv_resources.jpg);
}

/* -----　hygiene/index.html　衛生管理ページ用mv　----- */
.btm-front__section.hygiene {
  background-image: url(../images/hygiene/mv_hygiene.jpg);
}

/* -----　cost/index.html　経費削減ページ用mv_sp　----- */
.btm-front__section.cost {
  background-image: url(../images/cost/sp/mv_cost_sp.jpg);
  background-position: 50% 50%;
  background-size: cover;
}

/* -----　management/index.html　店舗運営支援ページ用mv　----- */
.btm-front__section.management {
  background-image: url(../images/management/mv_management.jpg);
}

/* -----　news/index.html　新着情報一覧ページ　PC(min-width: 768px)用mv　----- */
.btm-front__section.news {
  background-image: url(../images/news/mv_news.jpg);
  background-position: 45% 0%;
  background-size: 175%;
}

.btm-front__ttl {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: -moz-max-content;
  width: max-content;
  box-shadow: 3px 3px 0px -1px var(--MAIN_ORANGE);
}

.btm-grid__list__caption ~ .btm-link {
  justify-content: center;
}

.btm-grid__list__caption ~ p {
  width: -moz-max-content;
  width: max-content;
  margin-inline: auto;
}

.btm-link {
  position: relative;
  padding-inline: 25px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  font-weight: bold;
}

.btm-link:after {
  position: absolute;
  content: "";
  aspect-ratio: 1/1;
  width: 1.2em;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background: url(../images/common/icon_next.svg) no-repeat center center/contain;
  transition: 0.8s;
}

a:hover .btm-link:after,
a.btm-link:hover:after {
  right: -5px;
  background: url(../images/common/icon_next_active.svg) no-repeat center center/contain;
}

.btm-sec {
  container-type: inline-size;
}

/* オレンジ横線 */
.btm-sec:not(:last-child):after {
  content: "";
  background-image: linear-gradient(to right, var(--GRADATION_ORANGE), var(--GRADATION_ORANGE) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.btm-grid__wrapper {
  margin-top: 50px;
}

.btm-grid__wrapper h2 {
  font-size: 27px;
  font-weight: bold;
  text-align: center;
  color: var(--TABLE_RED);
}

.btm-grid__wrapper .btm-grid__list {
  padding-block: 30px;
}

.btm-grid__wrapper .btm-grid__list__thumb:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  height: 100%;
  border: 2px solid var(--GRADATION_ORANGE);
  background: transparent;
  z-index: 2;
  border-radius: 20px;
}

.btm-grid__wrapper .btm-grid__list .btm-grid__list__thumb {
  /*border: 2px solid var(--GRADATION_ORANGE);*/
}

.btm-grid__wrapper .btm-grid__list .btm-grid__list__thumb img {
  max-width: 100%;
  max-height: 100%;
}

.jirei-backbtn {
  padding: 18px 0;
  width: 380px;
  display: block;
  margin: 60px auto 0;
  --small_size: 12;
  --large_size: 16;
  --clamp: clamp(calc(var(--small_size)* 1px), calc((var(--small_size) / 375)* 100vw), calc(var(--large_size)* 1px));
  font-size: var(--clamp);
  border-radius: 50px;
  background: #ffcd00;
  color: #000;
  position: relative;
  font-weight: bold;
  text-align: center;
}

.jirei-backbtn::before {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  left: 10%;
  width: 0.4em;
  aspect-ratio: 97/150;
  background: url(../images/promotional_design/icon-arrow-black.png) no-repeat center center/contain;
}

@media (max-width: 768px) {
  .jirei-backbtn {
    margin: 20px auto 0;
    padding: 10px 0;
    max-width: 300px;
    width: 90%;
    font-size: 14px;
  }
  .jirei-backbtn::before {
    left: 8%;
  }
}
.btm-grid__list {
  display: grid;
}

.btm-grid__list__thumb {
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: var(--MAIN_WHITE);
  border-radius: 20px;
  transition: 0.8s;
}

.btm-grid__list__thumb:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  background: var(--MAIN_GRADATION);
  z-index: -1;
  border-radius: 22px;
}

.btm-grid__list__container {
  display: flex;
  flex-flow: column;
  flex-grow: 1;
}

.btm-grid__list__caption {
  color: var(--MAIN_ORANGE);
  font-weight: bold;
  display: flex;
  padding-block: 15px;
}

.btm-grid__list__thumb img {
  aspect-ratio: 1;
  max-height: 60%;
  max-width: 50%;
}

.btm-grid__list__character .btm-grid__list__thumb img {
  width: auto;
  aspect-ratio: unset;
}

/* btm-order__section */
.btm-order__section {
  container-type: inline-size;
  background-color: var(--MAIN_BLUE);
  border-radius: 0 0 18px 18px;
  margin-bottom: calc(-1 * var(--padding_block));
}

.btm-order__ttl {
  position: relative;
  --border_color: var(--MAIN_WHITE);
  color: var(--MAIN_YELLOW);
  font-weight: bold;
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  margin-inline: auto;
}

[class*=btm-border--] {
  --border_child_position: -14px;
  --border_parent_position: -11px;
  position: relative;
}

[class*=btm-border--]::before,
[class*=btm-border--]::after {
  content: "";
  position: absolute;
  width: 1px;
  display: inline-block;
  background-color: var(--border_color);
}

[class*=btm-border--]::before {
  height: 0.6em;
  bottom: 3px;
}

[class*=btm-border--]::after {
  height: 1em;
  bottom: 7px;
}

.btm-border--left::before {
  left: var(--border_child_position);
  transform: rotateZ(-35deg);
}

.btm-border--left::after {
  left: var(--border_parent_position);
  transform: rotateZ(-20deg);
}

.btm-border--right::before {
  left: calc(var(--border_child_position) * -1);
  transform: rotateZ(35deg);
}

.btm-border--right::after {
  left: calc(var(--border_parent_position) * -1);
  transform: rotateZ(20deg);
}

.btm-order__wrapper {
  display: flex;
  flex-flow: column;
  width: 90%;
  margin-inline: auto;
}

.btm-order__caption {
  font-weight: bold;
  color: var(--MAIN_WHITE);
}

.btm-order__local {
  font-size: 16px;
  color: var(--MAIN_WHITE);
  margin-bottom: 10px;
}

.btm-order__btns {
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}

.btm-order__btns a {
  display: block;
  border-radius: 50px;
  font-size: 16px;
  color: var(--color);
  background: var(--background-color) var(--url) no-repeat 90% center/var(--size);
  padding: 0.8em;
  width: 230px;
  text-align: center;
  font-weight: bold;
  border: 1.5px solid var(--border);
}

.btm-order__btns--orange {
  --border: var(--MAIN_ORANGE);
  --size: 5px;
  --color: var(--MAIN_WHITE);
  --background-color: var(--MAIN_ORANGE);
  --url: url(../images/common/icon_arrow.svg);
}

.btm-order__btns--orange:hover {
  --color: var(--MAIN_ORANGE);
  --background-color: var(--MAIN_WHITE);
  --url: url(../images/common/icon_arrow_orange.svg);
}

.btm-order__btns--yellow {
  --border: var(--MAIN_YELLOW);
  --size: 5px;
  --color: var(--MAIN_BLACK);
  --background-color: var(--MAIN_YELLOW);
  --url: url(../images/common/icon_arrow_black.svg);
}

.btm-order__btns--yellow:hover {
  --color: var(--MAIN_BLACK);
  --background-color: var(--MAIN_WHITE);
  --url: url(../images/common/icon_arrow_black.svg);
}

.btm-order__btns--white {
  --border: var(--MAIN_ORANGE);
  --size: 5px;
  --color: var(--MAIN_ORANGE);
  --background-color: var(--MAIN_WHITE);
  --url: url(../images/common/icon_arrow_orange.svg);
}

.btm-order__btns--white:hover {
  --color: var(--MAIN_WHITE);
  --background-color: var(--MAIN_ORANGE);
  --url: url(../images/common/icon_arrow.svg);
}

.btm-order__btns--blue {
  --border: var(--MAIN_BLUE);
  --color: var(--MAIN_BLUE);
  --size: .8em;
  --background-color: var(--MAIN_WHITE);
  --url: url(../images/bottom/icon_page.svg);
}

.btm-order__btns--blue > a {
  margin-inline: auto;
}

.btm-order__btns--blue:hover {
  --color: var(--MAIN_WHITE);
  --background-color: var(--MAIN_BLUE);
  --url: url(../images/bottom/icon_page_white.svg);
}

.btm-wrapper {
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .btm-sec,
  .ba-sec {
    padding-block: 60px;
  }
  .add-sec {
    padding-bottom: 60px;
  }
  .new-sec {
    padding-bottom: 60px;
  }
  .btm-front__section {
    height: 320px;
    border-radius: 18px 18px 0 0;
  }
  /* ★24.1作業　mv */
  /* -----　open/index.html　開業相談ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.kaigyou {
    background-position: 50% 35%;
  }
  /* -----　menu/index.html　食材仕入れページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.menu {
    background-position: 50% 35%;
  }
  /* --------追加ここから------- */
  /* -----　telecom/index.html　店舗インフラページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.telecom {
    background-position: 50% 35%;
  }
  /* -----　marketing/index.html　集客ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.marketing {
    background-position: 50% 35%;
  }
  /* -----　promotion/index.html　販促デザインページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.promotion {
    background-position: 50% 35%;
  }
  /* -----　resources/index.html　人材・求人ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.resources {
    background-position: 50% 35%;
  }
  /* -----　hygiene/index.html　衛生管理ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.hygiene {
    background-position: 50% 35%;
  }
  /* -----　cost/index.html　経費削減ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.cost {
    background-image: url(../images/cost/mv_cost.jpg);
    background-position: 50% 35%;
  }
  /* -----　management/index.html　店舗運営支援ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.management {
    background-position: 50% 35%;
  }
  /* -----　news/index.html　新着情報一覧ページ　PC(min-width: 768px)用mv　----- */
  .btm-front__section.management {
    background-image: url(../images/news/mv_news.jpg);
    background-position: 50% 50%;
  }
  /* --------追加ここまで------- */
  .btm-link {
    font-size: 15px;
  }
  .btm-grid__list {
    grid-template-columns: repeat(4, 1fr);
  }
  .btm-grid__list > li > a {
    display: flex;
    flex-flow: column;
    height: 100%;
  }
  .btm-grid__list__caption {
    font-size: 18px;
    flex-grow: 1;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
  .btm-order__section {
    padding-block: 80px;
  }
  .btm-order__ttl {
    font-size: 28px;
  }
  .btm-order__ttl:after {
    position: absolute;
    content: "";
    top: 20px;
    left: calc(100% + 10px);
    max-width: 100px;
    width: 100px;
    aspect-ratio: 1;
    background: url(../images/bottom/obj_order.svg) no-repeat center/contain;
  }
  .btm-order__caption,
  .btm-order__local {
    text-align: center;
  }
  .btm-grid__list {
    -moz-column-gap: 40px;
         column-gap: 40px;
    row-gap: 60px;
  }
  .btm-order__btns a {
    padding-bottom: calc(0.8em + 3px);
  }
  .btm-order__caption {
    font-size: 20px;
  }
  .btm-order__wrapper {
    gap: 30px;
  }
  .btm-wrapper {
    width: 90%;
  }
  .btm-grid__list a:hover .btm-grid__list__thumb {
    background-color: var(--MAIN_YELLOW_THIN);
  }
}
@media screen and (max-width: 767px) {
  .btm-sec,
  .ba-sec {
    padding-block: 40px;
  }
  .add-sec {
    padding-top: 20px;
    padding-bottom: 40px;
  }
  .new-sec {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .btm-front__section {
    height: 200px;
    border-radius: 18px 18px 0 0;
  }
  /* ★24.1作業　mv */
  /* -----　open/index.html　開業相談ページ　SP(max-width: 767px)用mv　----- */
  .btm-front__section.kaigyou {
    background-position: center;
  }
  /* -----　menu/index.html　食材仕入れページ　SP(max-width: 767px)用mv　----- */
  /* sp用に画像を差しかえ */
  .btm-front__section.menu {
    background-image: url(../images/menu/sp/mv_menu_sp.jpg);
  }
  .btm-front__section.menu {
    background-position: center;
  }
  .btm-front__section.logolist {
    background-position: 50% 50%;
  }
  .btm-link {
    font-size: 15px;
  }
  .btm-grid__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .btm-grid__list > li > a {
    display: flex;
    max-width: 400px;
    gap: 20px;
    margin-inline: auto;
    justify-content: space-between;
    align-items: center;
  }
  .btm-grid__list__thumb {
    width: 45%;
  }
  .btm-grid__list__caption {
    font-size: 17px;
  }
  .btm-grid__list__container {
    width: 55%;
  }
  .btm-order__section {
    padding: 40px 0 60px;
  }
  .btm-order__ttl {
    font-size: 20px;
  }
  .btm-grid__list {
    row-gap: 30px;
  }
  .btm-order__caption {
    font-size: 18px;
  }
  .btm-order__wrapper {
    gap: 20px;
  }
  .btm-wrapper {
    width: 80%;
  }
}
/* ■■■■■■■■■■開業相談■■■■■■■■■■ */
/* ------------------ global -------------------- */
.kg-ttl {
  text-align: center;
}

.kg-link__list {
  display: grid;
  -moz-column-gap: 20px;
       column-gap: 20px;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .kg-ttl:not(.__border) {
    margin-bottom: 60px;
  }
  .kg-ttl.__border {
    margin-bottom: 50px;
  }
  .kg-link__list {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 40px;
  }
  .kg-link__list a {
    display: block;
    height: 100%;
    position: relative;
    padding-bottom: 25px;
  }
  .kg-link__list .btm-link {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .kg-ttl {
    margin-bottom: 30px;
  }
  .kg-ttl > .tp-ttl__balloon__span {
    font-size: 20px;
  }
  .kg-link__list {
    grid-template-columns: repeat(1, 1fr);
    width: 90%;
    margin-inline: auto;
  }
  .kg-link__list > li {
    width: 100%;
  }
  .kg-link__list > li > a {
    display: flex;
    max-width: 400px;
    gap: 20px;
    margin-inline: auto;
    justify-content: space-between;
    align-items: center;
  }
  .kg-link__list .kg-link__thumb {
    width: 45%;
    aspect-ratio: 1;
  }
  .kg-link__container {
    width: 55%;
  }
  .kg-link__list {
    row-gap: 20px;
  }
}
/* ------------------ kg-open__section -------------------- */
.kg-flex__contents {
  display: flex;
  -moz-column-gap: 7cqi;
       column-gap: 7cqi;
  row-gap: 20px;
  align-items: center;
}

.kg-flex__contents__thumb img {
  border-radius: 20px;
}

.kg-flex__contents__txt {
  flex: 1;
  line-height: 1.8;
}

.kg-link {
  margin-inline: auto;
}

.kg-link__thumb img {
  border-radius: 10px;
}

.kg-link__caption {
  color: var(--MAIN_ORANGE);
  font-weight: bold;
  padding-block: 15px;
}

@media screen and (min-width: 768px) {
  .kg-open__caption {
    text-align: center;
    font-size: 24px;
    margin-bottom: 80px;
  }
  .kg-flex__contents {
    margin-bottom: 60px;
  }
  .kg-flex__contents__thumb {
    width: 35%;
  }
  .kg-link {
    width: 320px;
  }
  .kg-link__caption {
    font-size: 18px;
    text-align: center;
  }
  .kg-flex__contents__txt {
    font-size: 16px;
  }
  /* ---新着情報一覧ページ　タイトル部分設定 pc用ここから--- */
  /* .newsTittle{
    width: 100%;
    text-align: center;
    font-weight: bold;
  } */
  /* ---新着情報一覧ページ　タイトル部分設定 pc用ここまで--- */
}
@media screen and (max-width: 767px) {
  .kg-open__caption {
    font-size: 18px;
    margin-bottom: 40px;
  }
  .kg-flex__contents__thumb {
    width: 100%;
    height: 180px;
  }
  .kg-flex__contents__thumb img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
  }
  .kg-flex__contents__thumb.support img {
    -o-object-position: 50% 30%;
       object-position: 50% 30%;
  }
  .kg-flex__contents {
    flex-flow: column;
    margin-bottom: 30px;
    max-width: 400px;
    margin-inline: auto;
  }
  .kg-link__caption {
    font-size: 17px;
  }
  .kg-flex__contents__txt {
    font-size: 14px;
  }
  .kg-link__caption.sp-center {
    text-align: center;
  }
  /* ---新着情報一覧ページ　タイトル部分設定 sp用ここから--- */
  /* .newsTittle{
      width: 100%;
      text-align: center;
      font-size: 26px;
    } */
  /* ---新着情報一覧ページ　タイトル部分設定 sp用ここまで--- */
}
/* ------------------ kg-property__section -------------------- */
.kg-property__section {
  container-type: inline-size;
}

@media screen and (min-width: 768px) {
  .kg-property__section {
    padding: 60px 0 100px;
  }
}
@media screen and (max-width: 767px) {
  .kg-property__section {
    padding: 40px 0 60px;
  }
}
/* ------------------ kg-purchase__section -------------------- */
.kg-purchase__section {
  container-type: inline-size;
}

.kg-purchase__ttl {
  position: relative;
}

.kg-purchase__ttl:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 2px;
  background-color: var(--MAIN_ORANGE);
  z-index: 0;
}

.kg-purchase__ttl > span {
  --small_size: 24;
  --large_size: 36;
  --clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 375) * 100vw), calc(var(--large_size) * 1px));
  font-size: var(--clamp);
  color: var(--MAIN_ORANGE);
  line-height: 2.2;
  letter-spacing: -1px;
  width: -moz-max-content;
  width: max-content;
  display: block;
  position: relative;
  border: 2px solid var(--MAIN_ORANGE);
  border-radius: 50px;
  background-color: var(--MAIN_WHITE);
  margin-inline: auto;
  z-index: 1;
}

.kg-purchase__ttl > span > span {
  z-index: 5;
  position: relative;
  background: linear-gradient(transparent 70%, var(--MAIN_YELLOW) 30%);
}

.kg-purchase__ttl > span:after {
  z-index: 0;
  content: "";
  position: absolute;
  top: calc(50% + 26px);
  left: calc(50% - 2.8em);
  width: 50px;
  transform: translate(-50%, -50%);
  aspect-ratio: 1;
  background-color: var(--MAIN_WHITE);
}

.kg-purchase__ttl > span:before {
  z-index: 0;
  content: "";
  position: absolute;
  top: calc(50% - 26px);
  left: calc(50% + 2.8em);
  transform: translate(-50%, -50%);
  width: 50px;
  aspect-ratio: 1;
  z-index: 0;
  background-color: var(--MAIN_WHITE);
}

.kg-ttl.__border > span {
  position: relative;
}

.kg-purchase__caption {
  --border_color: var(--MAIN_BLACK);
  color: var(--MAIN_ORANGE);
}

.purchase-thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 12px;
}

.tenpos {
  padding-inline: 10px;
}

@media screen and (min-width: 768px) {
  .kg-purchase__section {
    padding: 100px 0 60px;
  }
  .kg-purchase__ttl > span {
    padding: 0 30px 5px;
  }
  .kg-purchase__caption {
    text-align: center;
    font-size: 20px;
    margin-top: -10px;
  }
  .kg-ttl.__border > span {
    --border_child_position: -84px;
    --border_parent_position: -81px;
  }
  .purchase-thumb {
    aspect-ratio: 400/321;
  }
  .kg-purchase__ttl {
    width: 90%;
    margin-inline: auto;
  }
  /* --------------------★pc用 img_オレンジ線ここから-------------------- */
  .purchase-thumb02 li img {
    outline: 2px solid var(--GRADATION_ORANGE);
    /* border: 2px solid var(--GRADATION_ORANGE); */
    outline-offset: -2px;
    border-radius: 12px;
  }
  /* --------------------★img_オレンジ線ここまで-------------------- */
}
@media screen and (max-width: 767px) {
  .kg-purchase__section {
    padding: 60px 0 40px;
  }
  .kg-purchase__ttl > span {
    padding: 0 30px;
  }
  .kg-purchase__caption {
    font-size: 18px;
  }
  .kg-ttl.__border > span {
    --border_child_position: -6px;
    --border_parent_position: -2px;
  }
  .kg-purchase__caption {
    max-width: 400px;
    margin-inline: auto;
  }
  .kg-purchase__caption > p:first-child {
    margin-bottom: 20px;
  }
  /* --------------------★sp用 img_オレンジ線ここから-------------------- */
  .purchase-thumb02 li img {
    display: flex;
    align-items: center;
    justify-content: center;
    /* border: 2px solid var(--GRADATION_ORANGE); */
    outline: 2px solid var(--GRADATION_ORANGE);
    outline-offset: -2px;
    border-radius: 10px;
  }
  /* --------------------★img_オレンジ線ここまで-------------------- */
}
/* ■■■■■■■■■■ロゴ制作事例■■■■■■■■■■ */
/* ------------------ iz-case__section -------------------- */
.iz-case__section {
  margin-inline: auto;
}

.iz-case__ttl {
  font-weight: bold;
  color: var(--MAIN_ORANGE);
  text-align: center;
}

.iz-case__ttl > span {
  padding-block: 0.5em;
  padding-left: calc(1.5em + 10px);
  background: url(../images/logolist/icon_logo_creation_jirei_izakaya.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__korean_cuisine > span {
  background: url(../images/logolist/icon_logo_creation_jirei_korean_cuisine.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__yakiniku > span {
  background: url(../images/logolist/icon_logo_creation_jirei_yakiniku.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__bar > span {
  background: url(../images/logolist/icon_logo_creation_jirei_bar.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__sweets > span {
  background: url(../images/logolist/icon_logo_creation_jirei_sweets.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__ramen > span {
  background: url(../images/logolist/icon_logo_creation_jirei_ramen.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__delivery > span {
  background: url(../images/logolist/icon_logo_creation_jirei_delivery.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__teppanyaki > span {
  background: url(../images/logolist/icon_logo_creation_jirei_teppanyaki.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__cafe > span {
  background: url(../images/logolist/icon_logo_creation_jirei_cafe.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__japanese > span {
  background: url(../images/logolist/icon_logo_creation_jirei_japanese.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__others > span {
  background: url(../images/logolist/icon_logo_creation_jirei_others.svg) no-repeat center left/1.5em;
}

.iz-case__ttl.case__ttl__character > span {
  background: url(../images/logolist/icon_logo_creation_jirei_character.svg) no-repeat center left/1.5em;
}

.iz-case__list {
  display: grid;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
}

.iz-case__list__thumb {
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 12px;
  padding: 12px;
}

.iz-case__list__ttl {
  padding: 10px 0 20px;
  font-size: 16px;
}

@media screen and (min-width: 768px) {
  .iz-case__ttl {
    font-size: 35px;
    margin-bottom: 40px;
  }
  .iz-case__list {
    grid-template-columns: repeat(3, 1fr);
  }
  .iz-case__section {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .iz-case__ttl {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .iz-case__list {
    grid-template-columns: repeat(1, 1fr);
    max-width: 400px;
    margin-inline: auto;
  }
  .iz-case__section {
    width: 70%;
  }
}
/* ■■■■■■■■■■ディテール■■■■■■■■■■ */
/* ------------------ dt-case__section -------------------- */
.dt-case__section {
  max-width: 370px;
}

.dt-case__ttl {
  color: var(--MAIN_ORANGE);
  font-weight: bold;
  font-size: 18px;
  padding-left: calc(1.5em + 10px);
  padding-block: 0.5em;
  background: url(../images/bottom/icon_izakaya.svg) no-repeat center left/1.5em;
  margin-bottom: 10px;
}

.dt-case__thumb {
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 12px;
  padding: 5%;
  margin-bottom: 20px;
}

.dt-case__information {
  text-align: center;
}

.dt-case__information > div {
  position: relative;
}

.dt-case__information dt {
  position: absolute;
  padding-inline: 1em;
  left: 0;
  top: calc(50% + 1px);
  transform: translateY(-50%);
  font-size: 16px;
  color: var(--MAIN_ORANGE);
}

.dt-case__information dd {
  position: relative;
  padding-block: 0.5em;
  font-size: 18px;
}

.dt-case__information dd:after {
  content: "";
  background-image: linear-gradient(to right, var(--GRADATION_ORANGE), var(--GRADATION_ORANGE) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.dt-case__caption {
  font-size: 16px;
}

.dt-case__caption dt {
  background-color: var(--MAIN_ORANGE);
  color: var(--MAIN_WHITE);
  text-align: center;
  position: relative;
  margin-bottom: 1.3em;
  font-weight: bold;
}

.dt-case__caption dt:after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: var(--MAIN_ORANGE) transparent transparent transparent;
}

.dt-case__caption__ttl {
  font-size: 18px;
  border-bottom: 1px solid var(--MAIN_BLACK);
  margin-bottom: 15px;
  padding-bottom: 5px;
  font-weight: bold;
}

.dt-case__caption__ttl:before {
  content: "■";
  color: var(--GRADATION_ORANGE);
}

.dt-case__caption__ttl ~ .dt-case__caption__local {
  padding-left: 1em;
}

.dt-case__caption dd:not(:last-child) {
  margin-bottom: 2em;
}

@media screen and (min-width: 768px) {
  .dt-case__section {
    padding-block: 60px;
  }
  .dt-case__information {
    margin-bottom: 40px;
  }
  .dt-case__caption dt {
    padding-top: 2px;
  }
}
@media screen and (max-width: 767px) {
  .dt-case__section {
    padding-block: 40px;
  }
  .dt-case__information {
    margin-bottom: 40px;
  }
  .dt-case__caption dt {
    padding-bottom: 2px;
  }
}
/* ■■■■■■■■■■ホームページ制作事例■■■■■■■■■■ */
.hp-case__list {
  display: grid;
  -moz-column-gap: 40px;
       column-gap: 40px;
  row-gap: 40px;
}

.hp-case__list__information div {
  position: relative;
  display: block;
  padding-block: 10px;
}

.hp-case__list__information div:not(:last-child):after {
  content: "";
  background-image: linear-gradient(to right, var(--GRADATION_ORANGE), var(--GRADATION_ORANGE) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.hp-case__list__information :is(dt, dd) {
  position: relative;
  display: inline-block;
}

.hp-case__list__information dt > span {
  position: absolute;
  top: 2.5px;
  right: 0;
  font-size: 14px;
  font-weight: normal;
}

.hp-case__list__information div:has(span) dt {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  min-height: 47px;
  display: flex;
  align-items: center;
}

.hp-case__list__information div:not(:has(span)) dt {
  min-width: calc(4em + 10px);
  color: var(--MAIN_ORANGE);
  font-size: 16px;
}

.hp-case__list__information dd {
  font-size: 16px;
}

.hp-case__list__thumb {
  margin-bottom: 10px;
}

.hp-case__list__information {
  margin-bottom: 10px;
}

.hp-case__wrapper--sp {
  display: grid;
  grid-template-rows: auto auto auto 1fr;
  height: 100%;
}

.hp-case__list__link {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}

.dt-case__container {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .hp-case__wrapper--pc {
    width: 90%;
    margin-inline: auto;
  }
  .hp-case__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .hp-case__list > li:not(:last-child) {
    border-bottom: 2px solid var(--GRADATION_ORANGE);
    padding-bottom: 30px;
  }
  .hp-case__wrapper--sp {
    width: 90%;
    margin-inline: auto;
  }
  .hp-case__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
/* ■■■■■■■■■■開業前,開業後共通■■■■■■■■■■ */
.border_dot {
  background-image: linear-gradient(to right, var(--MAIN_BLACK), var(--MAIN_BLACK) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}

/* ------------------ ba-xxxx__section -------------------- */
.ba-ttl {
  font-weight: bold;
  color: var(--MAIN_ORANGE);
  font-size: 26px;
  text-align: center;
}

.ba-outline__contents {
  border-radius: 12px;
}

.ba-outline__contents__ttl {
  position: relative;
  text-align: center;
  font-weight: bold;
  padding-block: 1.5em;
  font-size: 18px;
}

.ba-outline__contents__ttl > span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  font-weight: normal;
  cursor: pointer;
  font-size: 0.8em;
}

.ba-outline__contents__ttl > span:after {
  content: "[閉じる]";
}

.ba-outline__contents__ttl:has(~ .active) > span:after {
  content: "[開く]";
}

.ba-outline__contents__accordion {
  counter-reset: contents_counter;
}

.ba-outline__contents__accordion > dt {
  position: relative;
  counter-increment: contents_counter;
  display: flex;
  align-items: center;
}

.ba-outline__contents__accordion > dt > a {
  display: block;
  flex: 1;
}

.ba-outline__contents__accordion > dt > a:before {
  content: counter(contents_counter, decimal-leading-zero);
  display: inline-block;
  font-size: 22px;
  color: var(--MAIN_ORANGE);
  font-weight: bold;
  margin-right: 16px;
}

.ba-outline__contents__accordion > dt:after {
  content: "";
  background-image: linear-gradient(to right, var(--MAIN_BLACK), var(--MAIN_BLACK) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  top: 0;
}

.ba-outline__contents__accordion > dt:not(:has(+ dd)) > a {
  padding-block: 1em;
}

.ba-outline__contents__accordion > dt:has(+ dd) > a {
  padding-top: 1em;
}

.ba-outline__contents__accordion > dd {
  padding-bottom: 1em;
}

.ba-outline__contents__accordion > dd a {
  display: flex;
}

.ba-outline__contents__accordion > dd a:before {
  content: "└";
  display: block;
}

.ba-local__center--pc {
  line-height: 2;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .ba-local__center--pc {
    text-align: center;
  }
  .ba-ttl {
    margin-bottom: 40px;
  }
  .mb60-40 {
    margin-bottom: 60px;
  }
  .grid-2col--pc {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  .ba-outline__contents {
    width: 90%;
    margin-inline: auto;
    border: 1px solid var(--CONTENTS_BORDER_GRAY);
    padding: 1em 2em;
  }
  .ba-outline__contents__accordion > dt > a {
    padding-inline: 1em;
  }
  .ba-outline__contents__accordion > dt > a:hover {
    color: var(--MAIN_ORANGE);
  }
  .ba-outline__contents__accordion > dd a:hover {
    color: var(--MAIN_ORANGE);
  }
  .ba-outline__contents__accordion > dd li:nth-child(odd) > a {
    padding-left: 54px;
  }
}
@media screen and (max-width: 767px) {
  .ba-ttl {
    margin-bottom: 30px;
  }
  .wide-border--sp {
    width: 100%;
    height: 1px;
    background-color: var(--MAIN_BLACK);
  }
  .mb60-40 {
    margin-bottom: 40px;
  }
  .ba-outline__contents {
    padding-inline: 2em;
  }
}
/* ------------------ bf-counter__section -------------------- */
:root {
  counter-reset: sec-counter;
}

.ba-counter__section:not(:last-child) {
  position: relative;
  border-bottom: 2px solid var(--GRADATION_ORANGE);
}

.ba-counter__section:not(:last-child):after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
  width: 46px;
  aspect-ratio: 181/150;
  background: url(../images/kaigyoumae/obj_arrow.svg) no-repeat center/contain;
}

.ba-counter__ttl {
  counter-increment: sec-counter;
  display: flex;
  align-items: center;
  font-size: 20px;
  margin-bottom: 1em;
  font-weight: bold;
}

.ba-counter__ttl:before {
  content: counter(sec-counter, decimal-leading-zero);
  display: inline-block;
  font-size: 22px;
  color: var(--MAIN_ORANGE);
  font-weight: bold;
  margin-right: 16px;
}

.ba-counter__ttl > span > span {
  background: linear-gradient(transparent 60%, var(--MAIN_YELLOW) 40%);
}

.ba-counter__local,
.ba-counter__caption {
  display: flex;
  flex-flow: column;
  gap: 1.5em;
  font-weight: 400;
}

.ba-counter__local:has(+ *),
.ba-counter__caption:has(+ *) {
  margin-bottom: 3em;
}

.ba-counter__local span {
  color: var(--MAIN_ORANGE);
}

.ba-counter__caption > *:not(:first-child) {
  padding-left: 18px;
}

.ba-counter__caption > *:first-child {
  padding-left: 16px;
}

.ba-counter__caption > h4:first-child {
  font-weight: bold;
  font-size: 18px;
  border-left: 2px solid var(--GRADATION_ORANGE);
}

.ba-counter__contents > li:first-child:has(+ *) {
  position: relative;
  padding-bottom: var(--padding);
}

.ba-counter__contents > li:last-child:not(:first-child) {
  position: relative;
  padding-top: var(--padding);
}

.ba-counter__contents > li:not(:first-child):not(:last-child) {
  position: relative;
  padding-block: var(--padding);
}

.ba-counter__contents > li:not(:last-child)::after {
  content: "";
  background-image: linear-gradient(to right, var(--MAIN_BLACK), var(--MAIN_BLACK) 2px, transparent 3px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.ba-counter__contents__ttl {
  text-align: center;
  margin-bottom: 40px;
}

.tp-ttl__balloon__span__small {
  font-size: 18px;
}

.ba-counter__contents__list__thumb {
  margin-inline: auto;
}

.ba-counter__contents__list__thumb img {
  border-radius: 12px;
}

.ba-counter__contents__list__thumb.logo {
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 12px;
}

.ba-counter__contents__list__container {
  flex-grow: 1;
  display: flex;
  flex-flow: column;
}

.ba-counter__contents__list__ttl {
  font-size: 16px;
  font-weight: bold;
  color: var(--MAIN_ORANGE);
  padding-block: 1em;
  flex-grow: 1;
}

.ba-counter__contents__list {
  display: flex;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 20px;
  justify-content: center;
}

.ba-counter__contents__list:has(+ *) {
  margin-bottom: 3em;
}

.ba-counter__contents__list > li > a {
  display: flex;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .ba-counter__contents__list > li > a {
    flex-flow: column;
  }
  .ba-counter__contents__list > li {
    width: calc(33.3333333333% - 6.6666666667px);
  }
  .ba-counter__contents__list__thumb {
    width: 90%;
  }
  .ba-counter__contents__list__ttl {
    text-align: center;
  }
  .ba-counter__contents__list .btm-link {
    width: 90%;
    margin-inline: auto;
  }
  .ba-counter__local,
  .ba-counter__caption {
    font-size: 16px;
  }
  .ba-counter__contents > li {
    --padding: 60px;
  }
  .ba-counter__section {
    margin-bottom: 60px;
  }
  .ba-counter__contents__list__thumb.logo img {
    aspect-ratio: 192/135;
    min-height: 148px;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .ba-counter__local,
  .ba-counter__caption {
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .ba-counter__contents__list > li > a {
    max-width: 400px;
    gap: 20px;
    margin-inline: auto;
    justify-content: space-between;
    align-items: center;
  }
  .ba-counter__contents__list__thumb {
    width: 45%;
    aspect-ratio: 1;
  }
  .ba-counter__contents__list__thumb img {
    aspect-ratio: 1;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .ba-counter__contents__list__container {
    width: 55%;
  }
  .ba-counter__local,
  .ba-counter__caption {
    font-size: 14px;
  }
  .ba-counter__contents > li {
    --padding: 40px;
  }
  .ba-counter__section {
    margin-bottom: 40px;
  }
  .ba-counter__contents__list {
    flex-flow: column;
  }
  .ba-counter__contents__list__thumb.logo {
    display: flex;
    align-items: center;
  }
  .ba-counter__contents__list__thumb.logo img {
    aspect-ratio: 1;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .ba-counter__contents__list__ttl .small {
    font-size: 0.75em;
  }
  .ba-counter__local,
  .ba-counter__caption {
    line-height: 1.8;
  }
}
/* ------------------ ba-grand__section -------------------- */
.ba-grand__ttl {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  color: var(--MAIN_ORANGE);
}

.ba-grand__ttl > span {
  position: relative;
}

.ba-grand__ttl > span:after,
.ba-grand__ttl > span:before {
  content: "";
  position: absolute;
  display: block;
  background: var(--url) no-repeat center/contain;
}

.ba-grand__ttl > span:after {
  aspect-ratio: 102/150;
  --url: url(../images/kaigyoumae/obj_chef.svg);
}

.ba-grand__ttl > span:before {
  aspect-ratio: 97/150;
  --url: url(../images/kaigyoumae/obj_flower.svg);
}

.ba-grand__ttl + .btm-order__btns span a {
  width: 260px;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .ba-grand__ttl > span:after {
    height: 115px;
    right: calc(100% + 20px);
  }
  .ba-grand__ttl > span:before {
    height: 115px;
    left: calc(100% + 20px);
  }
  .ba-grand__ttl > span:after,
  .ba-grand__ttl > span:before {
    top: 50%;
    transform: translateY(-50%);
  }
  .ba-grand__ttl {
    margin-bottom: 60px;
    font-size: 32px;
  }
  .ba-grand__section {
    padding-top: 60px;
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 767px) {
  .ba-grand__ttl > span {
    display: block;
    padding-top: 110px;
  }
  .ba-grand__ttl > span:after,
  .ba-grand__ttl > span:before {
    top: 0%;
  }
  .ba-grand__ttl > span:after {
    height: 90px;
    right: calc(50% + 10px);
  }
  .ba-grand__ttl > span:before {
    height: 90px;
    left: calc(50% + 10px);
  }
  .ba-grand__ttl {
    margin-bottom: 40px;
    font-size: 30px;
  }
  .ba-grand__section {
    padding-top: 20px;
    padding-bottom: 80px;
  }
}
/* ■■■■■■■■■■会社概要■■■■■■■■■■ */
.add-front__section {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--MAIN_GRADATION_REVERSE);
}

.add-front__section.talent {
  background: url(../images/talent/front.jpg) no-repeat center/cover;
}

.add-front__section.group {
  background: url(../images/company/front.jpg) no-repeat center/cover;
}

.add-front__ttl {
  width: -moz-max-content;
  width: max-content;
  font-weight: bold;
  font-size: 26px;
}

.add-front__ttl > span {
  background: linear-gradient(transparent 70%, var(--MAIN_YELLOW) 30%);
}

.add-contents__table,
.add-contents__form {
  border-collapse: collapse;
  table-layout: fixed;
}

.add-contents__table th span,
.add-contents__form th span {
  background-color: var(--MAIN_WHITE);
  color: var(--MAIN_RED);
  border: 1px solid var(--MAIN_RED);
  padding-inline: 0.25em;
}

.add-contents__table input,
.add-contents__form input,
.add-contents__table select,
.add-contents__form select,
.add-contents__table textarea,
.add-contents__form textarea {
  font-size: 16px;
}

.add-contents__table th {
  background-color: var(--ADD_TABLE_GRAY);
  padding-inline: 4em;
  font-weight: 500;
  border-top: 5px solid var(--MAIN_WHITE);
}

.add-contents__table td {
  padding-block: 1em;
}

.add-contents__form input[type=radio],
.add-contents__form input[type=checkbox],
.add-contents__form label[for*=radio],
.add-contents__form label[for*=check] {
  cursor: pointer;
}

.add-contents__form {
  width: 100%;
  order: 0;
}

.add-contents__form tr {
  display: flex;
  align-items: center;
}

.add-contents__form th {
  background-color: var(--MAIN_ORANGE);
  font-weight: 500;
  color: var(--MAIN_WHITE);
  border-block: 1px solid var(--MAIN_WHITE);
  border-left: 1px solid var(--MAIN_WHITE);
  height: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.add-contents__form th p {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0 5px;
}

.add-contents__form th span {
  font-size: 0.8em;
  display: inline-block;
}

.add-contents__form td {
  flex: 1;
  padding-block: 0.75em;
  height: 100%;
  padding-inline: 1.5em;
}

.add-contents__form td:not(:has(.add-part__box)):not(.radio) {
  display: flex;
  justify-content: center;
  flex-flow: column;
}

.add-contents__form td.radio {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1em;
}

.add-contents__form tr:last-child td {
  border-bottom: 1px solid var(--TABLE_BORDER_GRAY);
}

.add-contents__form td:not(.radio):not(.checkbox) p {
  font-size: 12px;
  padding-bottom: 0.5em;
}

.add-contents__form td p {
  color: var(--ATTENTION_TAG02);
}

.add-contents__form td.radio label,
.add-contents__form td.checkbox label {
  color: var(--MAIN_BLACK);
}

.add-contents__form td.checkbox > div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 1em;
}

.add-contents__form td.checkbox p {
  display: flex;
}

.add-contents__form td.checkbox p.band {
  width: 100%;
  padding: 0.25em 1em;
  background-color: var(--ADD_CONTACT_GRAY);
  margin-top: 1em;
}

.add-contents__form td.checkbox input {
  width: 15px;
  aspect-ratio: 1;
  margin-top: 3px;
  margin-right: 5px;
  display: inline-block;
}

.add-contents__form td.radio p {
  display: flex;
  align-items: center;
  gap: 5px;
}

.add-contents__form td.checkbox label {
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
}

.add-contents__form td input:not([type=radio]):not([type=checkbox]):not(.not-wide),
.add-contents__form td textarea,
.add-contents__form td select {
  width: 100%;
  border-radius: 0;
  border: 1px solid var(--TABLE_BORDER_GRAY);
  padding: 0.5em 1em;
}

.add-contents__form td input:not([type=radio]):not([type=checkbox]):not(.not-wide).input__s {
  width: 30%;
  min-width: 80px;
}

.add-contents__form td input.not-wide {
  border-radius: 0;
  border: 1px solid var(--TABLE_BORDER_GRAY);
  padding: 0.5em 1em;
}

.add-contents__form td input::-moz-placeholder {
  opacity: 0.4;
}

.add-contents__form td input::placeholder {
  opacity: 0.4;
}

.add-contents__form td .blk:not(:last-child) {
  margin-bottom: 0.5em;
}

.add-contents__form td .row_blk > *:not(:last-child) {
  margin-right: 25px;
}

.add-contents__form td.name label {
  display: inline-block;
  width: 2em;
  margin-right: 3px;
}

.add-contents__section iframe {
  width: 100%;
}

.add-contents__list {
  display: flex;
  flex-flow: column;
  gap: 40px;
}

.add-contents__list > li > a {
  position: relative;
  display: flex;
  align-items: center;
  border-radius: 12px;
  height: 140px;
  background: var(--MAIN_WHITE);
}

.add-contents__list > li > a > p:nth-child(1) {
  font-size: 23px;
  color: var(--GRADATION_ORANGE);
}

.add-contents__list > li > a > p:nth-child(2) {
  font-size: 12px;
  background-color: var(--GRADATION_ORANGE);
  border: 2px solid var(--GRADATION_ORANGE);
  border-radius: 20px;
  transition: 0.8s;
}

.add-contents__list > li > a:hover {
  background: transparent;
}

.add-contents__list > li > a:hover > p:nth-child(1) {
  color: var(--MAIN_WHITE);
}

.add-contents__list > li > a:hover > p:nth-child(2) {
  background-color: var(--MAIN_WHITE);
}

.add-contents__list > li > a:after {
  content: "";
  background: var(--MAIN_GRADATION_REVERSE);
  border-radius: 12px;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.contact-btn {
  display: block;
  margin-inline: auto;
  background-color: var(--ADD_TABLE_BTN);
  color: var(--MAIN_WHITE);
  border: none;
  width: 85%;
  max-width: 400px;
  font-size: 18px;
  cursor: pointer;
  transition: 0.8s;
  order: 1;
}

.contact-btn:hover {
  background-color: var(--MAIN_BLACK);
}

.radio {
  display: flex;
  flex-wrap: wrap;
}

.add-front__simple {
  font-size: 26px;
  font-weight: bold;
}

.add-front__subttl {
  font-size: 20px;
  font-weight: bold;
}

.add-front__local > span {
  display: block;
  color: var(--MAIN_ORANGE);
}

.add-recruitment__table {
  width: 100%;
  border-collapse: collapse;
}

.add-recruitment__table tr:not(:first-child) th {
  background-color: var(--ADD_CONTACT_TITLE_GRAY);
  color: var(--MAIN_WHITE);
  font-weight: 500;
}

.add-recruitment__table tr:first-child th,
.add-recruitment__table tr:first-child td {
  background-color: var(--ADD_CONTACT_YELLOW);
  color: var(--MAIN_BLACK);
  font-weight: 500;
}

.add-recruitment__table th {
  padding-inline: 0.5em;
}

.add-recruitment__table tr:not(:first-child) th {
  border-top: 1px solid var(--MAIN_WHITE);
}

.add-recruitment__table tr:first-child td {
  position: relative;
  border-bottom: 1px solid var(--MAIN_WHITE);
}

.add-recruitment__table tr:first-child td:after {
  position: absolute;
  content: "";
  background-color: var(--MAIN_WHITE);
}

.add-application__form:empty {
  background-color: var(--MAIN_BLACK);
  width: 100%;
  height: 200px;
  position: relative;
}

.add-application__form:empty:after {
  content: "フォーム";
  color: var(--MAIN_WHITE);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.add-company__list > li > a {
  display: flex;
  gap: 20px 30px;
  padding: 30px 2%;
  align-items: center;
}

.add-company__list > li {
  display: flex;
  gap: 20px 30px;
  padding: 30px 2%;
  align-items: center;
}

.add-company__list > li:not(:last-child) {
  border-bottom: 2px solid var(--MAIN_ORANGE);
}

.add-company__list__ttl {
  color: var(--MAIN_WHITE);
  background-color: var(--MAIN_ORANGE);
  padding: 0.2em 1em;
}

.add-company__list__name {
  font-weight: bold;
}

.add-company__list__name a {
  position: relative;
  padding-right: 25px;
  width: -moz-fit-content;
  width: fit-content;
  display: inline-flex;
  color: var(--MAIN_ORANGE);
  text-decoration: underline;
}

.add-company__list__name a:after {
  position: absolute;
  content: "";
  aspect-ratio: 1/1;
  width: 1.2em;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background: url(../images/common/icon_next.svg) no-repeat center center/contain;
  transition: 0.8s;
}

.add-company__list__name a:hover:after {
  right: -5px;
  background: url(../images/common/icon_next_active.svg) no-repeat center center/contain;
}

.add-company__list__container {
  gap: 0.8em;
  display: flex;
  flex-flow: column;
  flex: 1;
}

.add-company__list__tag {
  background-color: var(--ICON_GRAY);
  font-size: 14px;
  width: 110px;
  text-align: center;
  padding-block: 3px;
  margin-bottom: 6px;
}

.add-company__list__name {
  font-size: 16px;
}

.add-company__list__local > span {
  display: inline-block;
}

.add-company__list__thumb {
  aspect-ratio: 576/458;
  display: flex;
  align-items: center;
  justify-content: center;
}

.add-company__list__thumb picture {
  width: 100%;
}

.add-company__list__store {
  width: 230px;
  border: 1px solid var(--TABLE_BORDER_GRAY);
  transition: 0.4s;
}

.add-company__list__store:hover {
  opacity: 0.8;
}

.add-recruitment__table td {
  flex: 1;
}

.add-recruitment__table td > *:not(:last-child) {
  margin-bottom: 1em;
}

.add-part__box {
  display: flex;
  gap: 5px 10px;
  height: 100%;
}

.add-part__box .not-wide,
.add-part__box--block .not-wide {
  flex: 1;
}

.add-contents__form td select,
.add-part__box--block div select {
  width: 100%;
  color: var(--MAIN_BLACK);
  height: 36px;
  background-color: var(--MAIN_WHITE);
}

.add-part__box--block {
  display: flex;
  flex-flow: column;
  gap: 10px 10px;
  height: 100%;
  width: 100%;
}

.add-part__box--block > div {
  display: flex;
  gap: 5px;
  align-items: center;
}

.add-part__box--block > div input,
.add-part__box--block > div select {
  flex: 1;
}

@media screen and (min-width: 768px) {
  .add-front__section {
    height: 200px;
  }
  .add-contents__table td {
    padding-left: 2em;
  }
  .add-contents__table {
    margin-bottom: 80px;
  }
  .add-contents__section iframe {
    aspect-ratio: 660/350;
  }
  .add-contents__list > li > a {
    padding-inline: 3em;
    justify-content: space-between;
  }
  .add-contents__list > li > a > p:nth-child(2) {
    padding: 0.6em 4em;
  }
  .add-contents__form th {
    width: 30%;
    padding: 1em 2em;
  }
  .add-contents__form tbody {
    display: grid;
  }
  .add-contents__form td {
    border-top: 1px solid var(--TABLE_BORDER_GRAY);
    border-right: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .add-contents__form {
    margin-bottom: 60px;
  }
  .contact-btn {
    padding-block: 1.5em;
  }
  .add-front__caption {
    text-align: center;
    margin-bottom: 40px;
  }
  .add-front__subttl {
    text-align: center;
    margin-bottom: 40px;
  }
  .add-recruitment__table tr:not(:first-child) td {
    border-bottom: 1px solid var(--CONTENTS_BORDER_GRAY);
  }
  .add-recruitment__table tr:first-child td:after {
    height: calc(100% - 15px);
    width: 1px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .add-company__list__ttl {
    font-size: 19px;
  }
  .add-company__list__thumb {
    width: 30%;
    padding-inline: 5%;
  }
  .add-recruitment__table:has(+ *) {
    margin-bottom: 60px;
  }
  .add-recruitment__table tr {
    display: grid;
    grid-template-columns: 20% 1fr;
  }
  .add-recruitment__table th {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .add-recruitment__table td {
    padding: 1em 0 1em 2em;
  }
  .add-part__box {
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .add-front__section {
    height: 160px;
  }
  .add-contents__table {
    width: 100%;
    margin-bottom: 40px;
  }
  .add-contents__table td {
    padding-inline: 1em;
  }
  .add-contents__table tr {
    display: flex;
    flex-flow: column;
  }
  .add-contents__section iframe {
    aspect-ratio: 390/844;
  }
  .add-contents__list > li {
    padding-inline: 2em;
    flex-flow: column;
    justify-content: center;
    gap: 20px;
  }
  .add-front__ttl {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 3px 3px 0px -1px var(--MAIN_ORANGE);
  }
  .add-front__caption {
    margin-bottom: 40px;
  }
  .add-contents__form tr {
    flex-flow: column;
  }
  .add-contents__form th {
    width: 100%;
    border-inline: 1px solid var(--MAIN_ORANGE);
    padding: 0.5em 1em;
  }
  .add-contents__form td {
    width: 100%;
    border-inline: 1px solid var(--TABLE_BORDER_GRAY);
  }
  .add-contents__form {
    margin-bottom: 20px;
  }
  .add-contents__form td .row_blk > * {
    display: block;
  }
  .add-contents__form td .row_blk > *:not(:last-child) {
    margin: 0 0 0.5em;
  }
  .add-contents__form td.name input:not([type=radio]):not([type=checkbox]):not(.not-wide) {
    width: calc(100% - 2em - 3px);
  }
  .contact-btn {
    padding-block: 1.5em;
  }
  .add-front__subttl {
    margin-bottom: 40px;
  }
  .add-recruitment__table tr {
    display: flex;
    width: 100%;
    flex-flow: column;
  }
  .add-recruitment__table th {
    text-align: left;
    padding: 0.5em 1.5em;
  }
  .add-recruitment__table tr:not(:first-child) td {
    border-inline: 1px solid var(--CONTENTS_BORDER_GRAY);
  }
  .add-recruitment__table tr:last-child td {
    border-bottom: 1px solid var(--CONTENTS_BORDER_GRAY);
  }
  .add-recruitment__table tr:first-child td:after {
    height: 1px;
    width: 100%;
    left: 0;
    top: 0;
  }
  .add-company__list > li {
    flex-flow: column;
  }
  .add-company__list__thumb {
    max-width: 300px;
    margin-inline: auto;
    min-width: 150px;
  }
  .add-company__list__thumb:empty {
    display: none;
  }
  .add-company__list__ttl {
    font-size: 16px;
  }
  .add-company__list > li:not(:has(a)) {
    flex-flow: column;
  }
  .add-company__list__container {
    width: 100%;
  }
  .add-recruitment__table:has(+ *) {
    margin-bottom: 40px;
  }
  .add-recruitment__table td {
    padding: 1em 1em 1em 1em;
  }
  .add-recruitment__table ul li {
    display: flex;
  }
  .add-recruitment__table ul li:before {
    content: "・";
    display: block;
  }
  .add-recruitment__table tr:first-child td:empty {
    display: none;
  }
  .add-part__box {
    flex-flow: column;
  }
}
/*# sourceMappingURL=freepage.css.map */