@charset "UTF-8";

/* --------------------------------------------------------------------------
  REFORM MAP
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .c-page-heading {
    padding-top: calc(8 / var(--font-size) * 1rem);
    padding-bottom: calc(
      22 / var(--font-size) * 1rem + 3 / var(--font-size) * 1rem
    );
  }
}

@media all and (max-width: 767px), print {
}

/* -----------------------------
  REFORM MAPー最初の選択
----------------------------- */
@media all and (min-width: 768px), print {
  .map-category {
  }
  .map-category-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: calc(24 / var(--font-size) * 1rem);
    height: 100%;
  }
  .map-category-list__item {
    width: calc(1 / 2 * 100% - calc(24 * 1 / 2 / var(--font-size) * 1rem));
    height: 100%;
  }
  .map-category-btn {
    position: relative;
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
    height: 100%;
  }
  .map-category-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .map-category-btn a {
    display: block;
    color: var(--color-black-sub);
    transition: all 0.3s ease;
  }
  .map-category-btn a:hover {
    opacity: 0.7;
  }
  .map-category-btn-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc(380 / var(--font-size) * 1rem);
    padding: calc(10 / var(--font-size) * 1rem)
      calc(20 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .map-category-btn-container > * {
    width: 100%;
  }
  .map-category-btn-img {
    text-align: center;
  }
  .map-category-btn-img__label {
    display: inline-block;
    vertical-align: top;
    width: calc(240 / var(--font-size) * 1rem);
    height: calc(240 / var(--font-size) * 1rem);
    border-radius: calc(240 / var(--font-size) * 1rem);
    background-color: var(--color-white);
    overflow: hidden;
  }
  .map-category-list__item.--inside .map-category-btn-img__label {
    background-color: var(--color-white);
  }
  .map-category-btn-content {
    margin-top: calc(12 / var(--font-size) * 1rem);
    text-align: center;
  }
  .map-category-btn-content:first-child {
    margin-top: 0;
  }
  .map-category-btn-content + * {
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .map-category-btn__label {
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 18 * 1);
    font-size: calc(24 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  .map-category-btn__label > span {
    font-size: calc(18 / 24 * 100%);
  }
  #map_start .map-category-btn-container {
    transition: 0.5s ease;
  }
  .map-category.is-prev-current .map-category-btn-container {
    transform: scale(1.25);
    opacity: 0;
  }
  .map-category .map-category-btn-container {
    transform: scale(1.25);
  }
  .map-category.is-current:not(.is-prev-current) .map-category-btn-container {
    transform: scale(1);
    opacity: 1;
  }
  .map-category .map-category-btn::before {
    opacity: 0;
    transition: 0.5s ease;
  }
  .map-category.is-current:not(.is-prev-current) .map-category-btn::before {
    opacity: 1;
  }
  .map-category.is-current.is-prev-current .map-category-btn::before {
    opacity: 0;
  }
  .map-search .map-search-container::before {
    opacity: 0;
    transition: 0.5s ease;
  }
  .map-search.is-current:not(.is-prev-current) .map-search-container::before {
    opacity: 1;
  }
  .map-search.is-current.is-prev-current .map-search-container::before {
    opacity: 0;
  }
  .map-search.is-current.is-prev-current .map-search-bg img {
    height: auto;
    transform-origin: center;
  }
  .map-category-footer-btn .c-btn {
    width: calc(182 / var(--font-size) * 1rem) !important;
  }
  .map-category-footer-btn .c-btn .c-btn__inner {
    min-height: calc(48 / var(--font-size) * 1rem);
  }
}
@media all and (max-width: 767px), print {
  .map-category {
  }
  .map-category-list {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: calc(16 / var(--font-size) * 1rem);
    height: 100%;
  }
  .map-category-list__item {
    height: 100%;
  }
  .map-category-btn {
    position: relative;
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
    height: 100%;
  }
  .map-category-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .map-category-btn a {
    display: block;
    color: var(--color-black-sub);
  }
  .map-category-btn-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc(297 / var(--font-size) * 1rem);
    padding: calc(10 / var(--font-size) * 1rem)
      calc(12 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .map-category-btn-container > * {
    width: 100%;
  }
  .map-category-btn-img {
    text-align: center;
  }
  .map-category-btn-img__label {
    display: inline-block;
    vertical-align: top;
    width: calc(180 / var(--font-size) * 1rem);
    height: calc(180 / var(--font-size) * 1rem);
    border-radius: calc(180 / var(--font-size) * 1rem);
    background-color: var(--color-white);
    overflow: hidden;
  }
  .map-category-list__item.--inside .map-category-btn-img__label {
    background-color: var(--color-white);
  }
  .map-category-btn-content {
    margin-top: calc(12 / var(--font-size) * 1rem);
    text-align: center;
  }
  .map-category-btn-content:first-child {
    margin-top: 0;
  }
  .map-category-btn-content + * {
    margin-top: calc(10 / var(--font-size) * 1rem);
  }
  .map-category-btn__label {
    display: inline-block;
    vertical-align: top;
    line-height: calc(22.4 / 18 * 1);
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  .map-category-btn__label > span {
    font-size: calc(18 / 24 * 100%);
  }
  #map_start .map-category-btn-container {
    transition: 0.5s ease;
  }
  .map-category.is-prev-current .map-category-btn-container {
    transform: scale(1.25);
    opacity: 0;
  }
  .map-category .map-category-btn-container {
    transform: scale(1.25);
  }
  .map-category.is-current:not(.is-prev-current) .map-category-btn-container {
    transform: scale(1);
    opacity: 1;
  }
  .map-category .map-category-btn::before {
    opacity: 0;
    transition: 0.5s ease;
  }
  .map-category.is-current:not(.is-prev-current) .map-category-btn::before {
    opacity: 1;
  }
  .map-category.is-current.is-prev-current .map-category-btn::before {
    opacity: 0;
  }
  .map-search .map-search-container::before {
    opacity: 0;
    transition: 0.5s ease;
  }
  .map-search.is-current:not(.is-prev-current) .map-search-container::before {
    opacity: 1;
  }
  .map-search.is-current.is-prev-current .map-search-container::before {
    opacity: 0;
  }
  .map-search.is-current.is-prev-current .map-search-bg img {
    height: auto;
    transform-origin: center;
  }
  .map-category-footer-btn .c-btn {
    width: calc(140 / var(--font-size) * 1rem) !important;
  }
  .map-category-footer-btn .c-btn .c-btn__inner {
    min-height: calc(40 / var(--font-size) * 1rem);
  }
  .map-category-footer-btn .c-btn__text__label {
    font-size: calc(12 / var(--font-size) * 1rem) !important;
  }
}

/* -----------------------------
  REFORM MAPーマップ
----------------------------- */
@media all and (min-width: 768px), print {
  .map-search {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .map-search-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .map-search-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
    border-radius: calc(10 / var(--font-size) * 1rem);
    pointer-events: none;
    z-index: 1;
  }
  .map-search-ttl {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: calc(24 / 1024 * 100%);
    z-index: 1;
  }
  .map-search-ttl__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .map-search-ttl img {
    width: 100%;
  }
  .map-search-container__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: 0.5s ease;
    transform: scale(1.2);
    opacity: 0;
  }
  .is-current .map-search-container__inner {
    transform: scale(1);
    opacity: 1;
  }
  .is-prev-current .map-search-container__inner {
    transform: scale(1.4);
    opacity: 0;
  }
  .map-search-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-accent-color);
  }
  .map-search-bg img {
    width: 100%;
    height: 100%;
    max-width: 100% !important;
  }
  .--inside .map-search-bg {
    background-color: var(--sub-accent-color-02);
  }
  .map-search-list__item {
    position: absolute;
    top: 0;
    left: 0;
  }
  .map-search-list__item a {
    display: block;
  }
  .map-search-list__item.--rectangle a {
    transition: 0.3s ease;
  }
  .map-search-list__item.--rectangle a:hover {
    transform: scale(1.1, 1.1);
  }
  .map-search-list__item img {
    width: 100%;
  }
  .map-search-back {
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(92 / 1024 * 100%);
    margin-bottom: calc(56 / 1024 * 100%);
    margin-left: calc(12 / 1024 * 100%);
  }
  .map-search-back-btn {
  }
  .map-search-back-btn a {
    display: block;
    transition: 0.3s ease;
  }
  .map-search-back-btn a:hover {
    opacity: 0.7;
  }
  .map-search-back-btn img {
    width: 100%;
  }
  .map-search-top-btn {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
    margin-bottom: calc(-64 / 1024 * 100%);
  }
  .map-search-top-btn a {
    display: block;
    transition: 0.3s ease;
  }
  .map-search-top-btn a:hover {
    opacity: 0.7;
  }
  .map-search-top-btn img {
    vertical-align: top;
  }
  .map-search-menu {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: calc(189 / 1024 * 100%);
    margin-left: calc(12 / 1024 * 100%);
    padding: calc(15 / var(--font-size) * 1rem)
      calc(13 / var(--font-size) * 1rem) calc(11 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
    background: var(--color-white);
    overflow: hidden;
  }
  .map-search-menu-desc {
  }
  .map-search-menu-desc__term {
    padding: 0 calc(10 / var(--font-size) * 1rem);
  }
  .map-search-menu-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: bold;
    color: var(--main-color);
  }
  .--inside .map-search-menu-desc__term__label {
    color: var(--accent-color-jigyo01);
  }
  .map-search-menu-desc__defin {
    margin-top: calc(8 / var(--font-size) * 1rem);
    padding-top: calc(16 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .map-search-menu-list {
  }
  .map-search-menu-list__item {
    margin-top: calc(8 / var(--font-size) * 1rem);
  }
  .map-search-menu-list__item:first-child {
    margin-top: 0;
  }
  .map-search-menu-btn {
  }
  .map-search-menu-btn a {
    display: block;
    color: var(--main-color);
    transition: 0.3s ease;
  }
  .map-search-menu-btn a:hover {
    opacity: 0.7;
  }
  .map-search-menu-btn.--active a {
    color: var(--color-white);
    pointer-events: none;
  }
  .--inside .map-search-menu-btn a {
    color: var(--accent-color-jigyo01);
  }
  .--inside .map-search-menu-btn.--active a {
    color: var(--color-white);
  }
  .map-search-menu-btn-body {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: calc(31 / var(--font-size) * 1rem);
    padding: 0 calc(10 / var(--font-size) * 1rem);
    border-radius: calc(31 / var(--font-size) * 1rem);
    background: var(--color-white);
    overflow: hidden;
  }
  .map-search-menu-btn.--active .map-search-menu-btn-body {
    background: var(--main-color);
  }
  .--inside .map-search-menu-btn.--active .map-search-menu-btn-body {
    background: var(--accent-color-jigyo01);
  }
  .map-search-menu-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(14 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  .map-search-menu-bottom {
    margin-top: calc(16 / var(--font-size) * 1rem);
    padding-top: calc(8 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
  }
  .map-search-menu-bottom-link {
    padding: 0 calc(10 / var(--font-size) * 1rem);
  }
  .map-search-menu-bottom-link a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: var(--main-color);
    transition: 0.3s ease;
    padding-right: calc(10 / var(--font-size) * 1rem);
  }
  .map-search-menu-bottom-link a:hover {
    opacity: 0.7;
  }
  .--inside .map-search-menu-bottom-link a {
    color: var(--accent-color-jigyo01);
  }
  .map-search-menu-bottom-link__ico {
    margin-right: calc(5 / var(--font-size) * 1rem);
  }
  .map-search-menu-bottom-link__ico svg {
    width: calc(13 / var(--font-size) * 1rem);
    height: calc(13 / var(--font-size) * 1rem);
    fill: var(--main-color);
    transform: rotate(180deg);
  }
  .--inside .map-search-menu-bottom-link__ico svg {
    fill: var(--accent-color-jigyo01);
  }
  .map-search-menu-bottom-link__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  /* -----------------------------
    REFORM MAPー家の外
  ----------------------------- */
  #map_outside .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* 窓 */
  #map_outside .map-search-list__item.--item-01 {
    width: calc(152 / 1024 * 100%);
    margin-top: calc(233 / 1024 * 100%);
    margin-left: calc(202 / 1024 * 100%);
  }
  /* その他 */
  #map_outside .map-search-list__item.--item-02 {
    width: calc(205 / 1024 * 100%);
    margin-top: calc(475 / 1024 * 100%);
    margin-left: calc(173 / 1024 * 100%);
  }
  /* 外壁・屋根・天井・床 */
  #map_outside .map-search-list__item.--item-03 {
    width: calc(152 / 1024 * 100%);
    margin-top: calc(126 / 1024 * 100%);
    margin-left: calc(502 / 1024 * 100%);
  }
  /* 玄関 */
  #map_outside .map-search-list__item.--item-04 {
    width: calc(204 / 1024 * 100%);
    margin-top: calc(339 / 1024 * 100%);
    margin-left: calc(742 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-窓
  ----------------------------- */
  #map_mado .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* 外窓 */
  #map_mado .map-search-list__item.--item-01 {
    width: calc(160 / 1024 * 100%);
    margin-top: calc(208 / 1024 * 100%);
    margin-left: calc(229 / 1024 * 100%);
  }
  /* 内窓 */
  #map_mado .map-search-list__item.--item-02 {
    width: calc(160 / 1024 * 100%);
    margin-top: calc(202 / 1024 * 100%);
    margin-left: calc(555 / 1024 * 100%);
  }
  /* ガラス */
  #map_mado .map-search-list__item.--item-03 {
    width: calc(178 / 1024 * 100%);
    margin-top: calc(392 / 1024 * 100%);
    margin-left: calc(458 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-その他
  ----------------------------- */
  #map_other .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* 高効率給湯器 */
  #map_other .map-search-list__item.--item-01 {
    width: calc(185 / 1024 * 100%);
    margin-top: calc(283 / 1024 * 100%);
    margin-left: calc(310 / 1024 * 100%);
  }
  /* 蓄電池 */
  #map_other .map-search-list__item.--item-02 {
    width: calc(152 / 1024 * 100%);
    margin-top: calc(373 / 1024 * 100%);
    margin-left: calc(552 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-外壁・屋根・天井・床
  ----------------------------- */
  #map_yane .map-search-ttl {
    width: calc(248 / 1024 * 100%);
  }
  /* 断熱改修 */
  #map_yane .map-search-list__item.--item-01 {
    width: calc(225 / 1024 * 100%);
    margin-top: calc(350 / 1024 * 100%);
    margin-left: calc(216 / 1024 * 100%);
  }
  /* 太陽熱利用システム */
  #map_yane .map-search-list__item.--item-02 {
    width: calc(187 / 1024 * 100%);
    margin-top: calc(112 / 1024 * 100%);
    margin-left: calc(568 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-玄関
  ----------------------------- */
  #map_door .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* ドア */
  #map_door .map-search-list__item.--item-01 {
    width: calc(160 / 1024 * 100%);
    margin-top: calc(82 / 1024 * 100%);
    margin-left: calc(599 / 1024 * 100%);
  }
  /* 宅配ボックス */
  #map_door .map-search-list__item.--item-02 {
    width: calc(178 / 1024 * 100%);
    margin-top: calc(323 / 1024 * 100%);
    margin-left: calc(586 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中
  ----------------------------- */
  #map_inside .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* 居間等 */
  #map_inside .map-search-list__item.--item-01 {
    width: calc(205 / 1024 * 100%);
    margin-top: calc(321 / 1024 * 100%);
    margin-left: calc(88 / 1024 * 100%);
  }
  /* キッチン */
  #map_inside .map-search-list__item.--item-02 {
    width: calc(152 / 1024 * 100%);
    margin-top: calc(432 / 1024 * 100%);
    margin-left: calc(344 / 1024 * 100%);
  }
  /* お風呂洗面所 */
  #map_inside .map-search-list__item.--item-03 {
    width: calc(152 / 1024 * 100%);
    margin-top: calc(38 / 1024 * 100%);
    margin-left: calc(546 / 1024 * 100%);
  }
  /* トイレ */
  #map_inside .map-search-list__item.--item-04 {
    width: calc(204 / 1024 * 100%);
    margin-top: calc(252 / 1024 * 100%);
    margin-left: calc(788 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-居間等
  ----------------------------- */
  #map_room .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* 内窓 */
  #map_room .map-search-list__item.--item-01 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(96 / 1024 * 100%);
    margin-left: calc(287 / 1024 * 100%);
  }
  /* 空気清浄機能・換気機能付きエアコン */
  #map_room .map-search-list__item.--item-02 {
    width: calc(246 / 1024 * 100%);
    margin-top: calc(192 / 1024 * 100%);
    margin-left: calc(462 / 1024 * 100%);
  }
  /* バリアフリー */
  #map_room .map-search-list__item.--item-03 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(163 / 1024 * 100%);
    margin-left: calc(766 / 1024 * 100%);
  }
  /* 高効率エアコン */
  #map_room .map-search-list__item.--item-04 {
    width: calc(382 / 2 / 1024 * 100%);
    margin-top: calc(20 / 1024 * 100%);
    margin-left: calc(537 / 1024 * 100%);
  }
  /* 換気設備 */
  #map_room .map-search-list__item.--item-05 {
    width: calc(328 / 2 / 1024 * 100%);
    margin-top: calc(186 / 1024 * 100%);
    margin-left: calc(147 / 1024 * 100%);
  }

  /* -----------------------------
    REFORM MAPー家の中-キッチン
  ----------------------------- */
  #map_kitchen .map-search-ttl {
    width: calc(231 / 1024 * 100%);
  }
  /* キッチンセットの交換を伴う対面化改修 */
  #map_kitchen .map-search-list__item.--item-01 {
    width: calc(246 / 1024 * 100%);
    margin-top: calc(492 / 1024 * 100%);
    margin-left: calc(143 / 1024 * 100%);
  }
  /* 高効率給湯器 */
  #map_kitchen .map-search-list__item.--item-02 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(154 / 1024 * 100%);
    margin-left: calc(295 / 1024 * 100%);
  }
  /* 給湯水栓 */
  #map_kitchen .map-search-list__item.--item-03 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(249 / 1024 * 100%);
    margin-left: calc(192 / 1024 * 100%);
  }
  /* 掃除しやすいレンジフード */
  #map_kitchen .map-search-list__item.--item-04 {
    width: calc(186 / 1024 * 100%);
    margin-top: calc(39 / 1024 * 100%);
    margin-left: calc(577 / 1024 * 100%);
  }
  /* ビルトイン自動調理対応コンロ */
  #map_kitchen .map-search-list__item.--item-05 {
    width: calc(246 / 1024 * 100%);
    margin-top: calc(215 / 1024 * 100%);
    margin-left: calc(586 / 1024 * 100%);
  }
  /* ビルトイン食洗機 */
  #map_kitchen .map-search-list__item.--item-06 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(375 / 1024 * 100%);
    margin-left: calc(435 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-お風呂洗面所
  ----------------------------- */
  #map_bath .map-search-ttl {
    width: calc(231 / 1024 * 100%);
  }
  /* 高効率給湯器 */
  #map_bath .map-search-list__item.--item-01 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(459 / 1024 * 100%);
    margin-left: calc(186 / 1024 * 100%);
  }
  /* バリアフリー */
  #map_bath .map-search-list__item.--item-02 {
    width: calc(172 / 1024 * 100%);
    margin-top: calc(210 / 1024 * 100%);
    margin-left: calc(384 / 1024 * 100%);
  }
  /* 浴室乾燥機 */
  #map_bath .map-search-list__item.--item-03 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(91 / 1024 * 100%);
    margin-left: calc(407 / 1024 * 100%);
  }
  /* 内窓 */
  #map_bath .map-search-list__item.--item-04 {
    width: calc(172 / 1024 * 100%);
    margin-top: calc(131 / 1024 * 100%);
    margin-left: calc(624 / 1024 * 100%);
  }
  /* 高断熱浴槽 */
  #map_bath .map-search-list__item.--item-05 {
    width: calc(172 / 1024 * 100%);
    margin-top: calc(340 / 1024 * 100%);
    margin-left: calc(468 / 1024 * 100%);
  }
  /* 節湯水栓 */
  #map_bath .map-search-list__item.--item-06 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(298 / 1024 * 100%);
    margin-left: calc(817 / 1024 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-トイレ
  ----------------------------- */
  #map_toilet .map-search-ttl {
    width: calc(204 / 1024 * 100%);
  }
  /* バリアフリー */
  #map_toilet .map-search-list__item.--item-01 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(310 / 1024 * 100%);
    margin-left: calc(336 / 1024 * 100%);
  }
  /* 節水型トイレ */
  #map_toilet .map-search-list__item.--item-02 {
    width: calc(164 / 1024 * 100%);
    margin-top: calc(390 / 1024 * 100%);
    margin-left: calc(546 / 1024 * 100%);
  }
  /* 内窓 */
  #map_toilet .map-search-list__item.--item-03 {
    width: calc(172 / 1024 * 100%);
    margin-top: calc(108 / 1024 * 100%);
    margin-left: calc(692 / 1024 * 100%);
  }
}
@media all and (max-width: 767px), print {
  .map-search {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .map-search-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: calc(10 / var(--font-size) * 1rem);
    overflow: hidden;
  }
  .map-search-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_300);
    border-radius: calc(10 / var(--font-size) * 1rem);
    pointer-events: none;
    z-index: 1;
  }
  .map-search-ttl {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: calc(16 / 345 * 100%);
    z-index: 1;
  }
  .map-search-ttl__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .map-search-ttl img {
    width: 100%;
  }
  .map-search-container__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: 0.5s ease;
    transform: scale(1.2);
    opacity: 0;
  }
  .is-current .map-search-container__inner {
    transform: scale(1);
    opacity: 1;
  }
  .is-prev-current .map-search-container__inner {
    transform: scale(1.4);
    opacity: 0;
  }
  .map-search-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-accent-color);
  }
  .map-search-bg img {
    width: 100%;
    height: 100%;
  }
  .--inside .map-search-bg {
    background-color: var(--sub-accent-color-02);
  }
  .map-search-list__item {
    position: absolute;
    top: 0;
    left: 0;
  }
  .map-search-list__item a {
    display: block;
  }
  .map-search-list__item.--rectangle a {
  }
  .map-search-list__item img {
    width: 100%;
  }
  .map-search-back {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(69 / 345 * 100%);
    margin-top: calc(8 / 345 * 100%);
    margin-right: calc(9 / 345 * 100%);
  }
  .map-search-back-btn {
  }
  .map-search-back-btn a {
    display: block;
  }
  .map-search-back-btn img {
    width: 100%;
  }
  .map-search-top-btn {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
    margin-bottom: calc(-64 / 1024 * 100%);
  }
  .map-search-top-btn a {
    display: block;
    transition: 0.3s ease;
  }
  .map-search-top-btn a:hover {
    opacity: 0.7;
  }
  .map-search-top-btn img {
    vertical-align: top;
  }
  .map-search-menu {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin-bottom: calc(17 / 345 * 100%);
  }
  .--inside .map-search-menu {
  }
  .map-search-menu-desc {
  }
  .map-search-menu-desc__term {
    padding: 0 calc(10 / var(--font-size) * 1rem);
  }
  .map-search-menu-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(16 / var(--font-size) * 1rem);
    font-weight: bold;
    color: var(--main-color);
  }
  .--inside .map-search-menu-desc__term__label {
    color: var(--accent-color-jigyo01);
  }
  .map-search-menu-desc__defin {
  }
  .map-search-menu-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
  }
  .map-search-menu-list__item {
    width: calc(148 / 345 * 100%);
    margin-left: calc(9 / var(--font-size) * 1rem);
  }
  .map-search-menu-list__item:nth-child(2n + 1) {
    margin-left: 0;
  }
  .map-search-menu-list__item:nth-child(n + 3) {
    margin-top: calc(5 / var(--font-size) * 1rem);
  }
  .--inside .map-search-menu-list__item {
    width: calc(120 / var(--font-size) * 1rem);
  }
  .map-search-menu-btn {
  }
  .map-search-menu-btn a {
    display: block;
    color: var(--main-color);
  }
  .map-search-menu-btn.--active a {
    color: var(--color-white);
    pointer-events: none;
  }
  .--inside .map-search-menu-btn a {
    color: var(--accent-color-jigyo01);
  }
  .--inside .map-search-menu-btn.--active a {
    color: var(--color-white);
  }
  .map-search-menu-btn-body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(24 / var(--font-size) * 1rem);
    border-radius: calc(24 / var(--font-size) * 1rem);
    background: var(--color-white);
    overflow: hidden;
  }
  .map-search-menu-btn.--active .map-search-menu-btn-body {
    background: var(--main-color);
  }
  .--inside .map-search-menu-btn.--active .map-search-menu-btn-body {
    background: var(--accent-color-jigyo01);
  }
  .map-search-menu-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(13 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  .map-search-menu-bottom-link {
    padding: 0 calc(10 / var(--font-size) * 1rem);
  }
  .map-search-menu-bottom-link {
  }
  .map-search-menu-bottom-link a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: var(--main-color);
  }
  .--inside .map-search-menu-bottom-link a {
    color: var(--accent-color-jigyo01);
  }
  .map-search-menu-bottom-link__ico {
    margin-right: calc(5 / var(--font-size) * 1rem);
  }
  .map-search-menu-bottom-link__ico svg {
    width: calc(13 / var(--font-size) * 1rem);
    height: calc(13 / var(--font-size) * 1rem);
    fill: var(--main-color);
    transform: rotate(180deg);
  }
  .--inside .map-search-menu-bottom-link__ico svg {
    fill: var(--accent-color-jigyo01);
  }
  .map-search-menu-bottom-link__label {
    display: inline-block;
    vertical-align: top;
    font-size: calc(12 / var(--font-size) * 1rem);
    font-weight: bold;
  }
  /* -----------------------------
    REFORM MAPー家の外
  ----------------------------- */
  #map_outside .map-search-ttl {
    width: calc(116 / 345 * 100%);
  }
  /* 窓 */
  #map_outside .map-search-list__item.--item-01 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(201 / 345 * 100%);
    margin-left: calc(12 / 345 * 100%);
  }
  /* その他 */
  #map_outside .map-search-list__item.--item-02 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(250 / 345 * 100%);
    margin-left: calc(84 / 345 * 100%);
  }
  /* 外壁・屋根・天井・床 */
  #map_outside .map-search-list__item.--item-03 {
    width: calc(96 / 345 * 100%);
    margin-top: calc(80 / 345 * 100%);
    margin-left: calc(132 / 345 * 100%);
  }
  /* 玄関 */
  #map_outside .map-search-list__item.--item-04 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(206 / 345 * 100%);
    margin-left: calc(217 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-窓
  ----------------------------- */
  #map_mado .map-search-ttl {
    width: calc(116 / 345 * 100%);
  }
  /* 外窓 */
  #map_mado .map-search-list__item.--item-01 {
    width: calc(84 / 345 * 100%);
    margin-top: calc(149 / 345 * 100%);
    margin-left: calc(31 / 345 * 100%);
  }
  /* 内窓 */
  #map_mado .map-search-list__item.--item-02 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(122 / 345 * 100%);
    margin-left: calc(190 / 345 * 100%);
  }
  /* ガラス */
  #map_mado .map-search-list__item.--item-03 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(255 / 345 * 100%);
    margin-left: calc(176 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-その他
  ----------------------------- */
  #map_other .map-search-ttl {
    width: calc(115 / 345 * 100%);
  }
  /* 高効率給湯器 */
  #map_other .map-search-list__item.--item-01 {
    width: calc(114 / 345 * 100%);
    margin-top: calc(146 / 345 * 100%);
    margin-left: calc(22 / 345 * 100%);
  }
  /* 蓄電池 */
  #map_other .map-search-list__item.--item-02 {
    width: calc(84 / 345 * 100%);
    margin-top: calc(237 / 345 * 100%);
    margin-left: calc(240 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-外壁・屋根・天井・床
  ----------------------------- */
  #map_yane .map-search-ttl {
    width: calc(227 / 345 * 100%);
  }
  /* 断熱改修 */
  #map_yane .map-search-list__item.--item-01 {
    width: calc(142 / 345 * 100%);
    margin-top: calc(200 / 345 * 100%);
    margin-left: calc(109 / 345 * 100%);
  }
  /* 太陽熱利用システム */
  #map_yane .map-search-list__item.--item-02 {
    width: calc(114 / 345 * 100%);
    margin-top: calc(111 / 345 * 100%);
    margin-left: calc(165 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の外-玄関
  ----------------------------- */
  #map_door .map-search-ttl {
    width: calc(115 / 345 * 100%);
  }
  /* ドア */
  #map_door .map-search-list__item.--item-01 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(167 / 345 * 100%);
    margin-left: calc(230 / 345 * 100%);
  }
  /* 宅配ボックス */
  #map_door .map-search-list__item.--item-02 {
    width: calc(114 / 345 * 100%);
    margin-top: calc(134 / 345 * 100%);
    margin-left: calc(20 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中
  ----------------------------- */
  #map_inside .map-search-ttl {
    width: calc(116 / 345 * 100%);
  }
  /* 居間等 */
  #map_inside .map-search-list__item.--item-01 {
    width: calc(97 / 345 * 100%);
    margin-top: calc(185 / 345 * 100%);
    margin-left: calc(8 / 345 * 100%);
  }
  /* キッチン */
  #map_inside .map-search-list__item.--item-02 {
    width: calc(92 / 345 * 100%);
    margin-top: calc(286 / 345 * 100%);
    margin-left: calc(78 / 345 * 100%);
  }
  /* お風呂洗面所 */
  #map_inside .map-search-list__item.--item-03 {
    width: calc(96 / 345 * 100%);
    margin-top: calc(80 / 345 * 100%);
    margin-left: calc(132 / 345 * 100%);
  }
  /* トイレ */
  #map_inside .map-search-list__item.--item-04 {
    width: calc(80 / 345 * 100%);
    margin-top: calc(205 / 345 * 100%);
    margin-left: calc(244 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-居間等
  ----------------------------- */
  #map_room .map-search-ttl {
    width: calc(116 / 345 * 100%);
  }
  /* 内窓 */
  #map_room .map-search-list__item.--item-01 {
    width: calc(80 / 345 * 90%);
    margin-top: calc(131 / 345 * 100%);
    margin-left: calc(51 / 345 * 100%);
  }
  /* 空気清浄機能・換気機能付きエアコン */
  #map_room .map-search-list__item.--item-02 {
    width: calc(153 / 345 * 90%);
    margin-top: calc(77 / 345 * 100%);
    margin-left: calc(108 / 345 * 100%);
  }
  /* バリアフリー */
  #map_room .map-search-list__item.--item-03 {
    width: calc(110 / 345 * 90%);
    margin-top: calc(126 / 345 * 100%);
    margin-left: calc(241 / 345 * 100%);
  }
  /* 高効率エアコン */
  #map_room .map-search-list__item.--item-04 {
    width: calc(306 / 2 / 345 * 90%);
    margin-top: calc(179 / 345 * 100%);
    margin-left: calc(120 / 345 * 100%);
  }
  /* 換気設備 */
  #map_room .map-search-list__item.--item-05 {
    width: calc(188 / 2 / 345 * 90%);
    margin-top: calc(218 / 345 * 100%);
    margin-left: calc(8 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-キッチン
  ----------------------------- */
  #map_kitchen .map-search-ttl {
    width: calc(130 / 345 * 100%);
  }
  /* キッチンセットの交換を伴う対面化改修 */
  #map_kitchen .map-search-list__item.--item-01 {
    width: calc(162 / 345 * 100%);
    margin-top: calc(265 / 345 * 100%);
    margin-left: calc(15 / 345 * 100%);
  }
  /* 高効率給湯器 */
  #map_kitchen .map-search-list__item.--item-02 {
    width: calc(87 / 345 * 100%);
    margin-top: calc(192 / 345 * 100%);
    margin-left: calc(16 / 345 * 100%);
  }
  /* 給湯水栓 */
  #map_kitchen .map-search-list__item.--item-03 {
    width: calc(83 / 345 * 100%);
    margin-top: calc(128 / 345 * 100%);
    margin-left: calc(78 / 345 * 100%);
  }
  /* 掃除しやすいレンジフード */
  #map_kitchen .map-search-list__item.--item-04 {
    width: calc(125 / 345 * 100%);
    margin-top: calc(40 / 345 * 100%);
    margin-left: calc(135 / 345 * 100%);
  }
  /* ビルトイン自動調理対応コンロ */
  #map_kitchen .map-search-list__item.--item-05 {
    width: calc(157 / 345 * 100%);
    margin-top: calc(144 / 345 * 100%);
    margin-left: calc(172 / 345 * 100%);
  }
  /* ビルトイン食洗機 */
  #map_kitchen .map-search-list__item.--item-06 {
    width: calc(125 / 345 * 100%);
    margin-top: calc(206 / 345 * 100%);
    margin-left: calc(120 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-お風呂洗面所
  ----------------------------- */
  #map_bath .map-search-ttl {
    width: calc(172 / 345 * 100%);
  }
  /* 高効率給湯器 */
  #map_bath .map-search-list__item.--item-01 {
    width: calc(110 / 345 * 100%);
    margin-top: calc(239 / 345 * 100%);
    margin-left: calc(13 / 345 * 100%);
  }
  /* バリアフリー */
  #map_bath .map-search-list__item.--item-02 {
    width: calc(110 / 345 * 100%);
    margin-top: calc(106 / 345 * 100%);
    margin-left: calc(10 / 345 * 100%);
  }
  /* 浴室乾燥機 */
  #map_bath .map-search-list__item.--item-03 {
    width: calc(114 / 345 * 100%);
    margin-top: calc(68 / 345 * 100%);
    margin-left: calc(147 / 345 * 100%);
  }
  /* 内窓 */
  #map_bath .map-search-list__item.--item-04 {
    width: calc(84 / 345 * 100%);
    margin-top: calc(117 / 345 * 100%);
    margin-left: calc(175 / 345 * 100%);
  }
  /* 高断熱浴槽 */
  #map_bath .map-search-list__item.--item-05 {
    width: calc(114 / 345 * 100%);
    margin-top: calc(187 / 345 * 100%);
    margin-left: calc(129 / 345 * 100%);
  }
  /* 節湯水栓 */
  #map_bath .map-search-list__item.--item-06 {
    width: calc(92 / 345 * 100%);
    margin-top: calc(229 / 345 * 100%);
    margin-left: calc(242 / 345 * 100%);
  }
  /* -----------------------------
    REFORM MAPー家の中-トイレ
  ----------------------------- */
  #map_toilet .map-search-ttl {
    width: calc(114 / 345 * 100%);
  }
  /* バリアフリー */
  #map_toilet .map-search-list__item.--item-01 {
    width: calc(110 / 345 * 100%);
    margin-top: calc(180 / 345 * 100%);
    margin-left: calc(41 / 345 * 100%);
  }
  /* 節水型トイレ */
  #map_toilet .map-search-list__item.--item-02 {
    width: calc(110 / 345 * 100%);
    margin-top: calc(220 / 345 * 100%);
    margin-left: calc(173 / 345 * 100%);
  }
  /* 内窓 */
  #map_toilet .map-search-list__item.--item-03 {
    width: calc(84 / 345 * 100%);
    margin-top: calc(99 / 345 * 100%);
    margin-left: calc(143 / 345 * 100%);
  }
}

@media all and (min-width: 768px), print {
  .map {
    position: relative;
  }
  .map::before {
    content: "";
    display: block;
    padding-top: calc(380 / var(--font-size) * 1rem);
    transition: 0.5s ease;
  }
  .map[data-id="data-id"]::before {
    padding-top: calc(380 / var(--font-size) * 1rem);
  }
  .map[data-id="map_outside"]::before,
  .map[data-id="map_inside"]::before,
  .map[data-id="map_room"]::before,
  .map[data-id="map_mado"]::before,
  .map[data-id="map_yane"]::before,
  .map[data-id="map_door"]::before,
  .map[data-id="map_other"]::before,
  .map[data-id="map_kitchen"]::before,
  .map[data-id="map_toilet"]::before,
  .map[data-id="map_bath"]::before {
    padding-top: calc(620 / 1024 * 100%);
  }
  .map__container {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -10;
    opacity: 0;
  }
  .map__container.is-current {
    z-index: 0;
    opacity: 1;
  }
}

@media all and (max-width: 767px) {
  .map {
    position: relative;
  }
  .map::before {
    content: "";
    display: block;
    padding-top: calc(
      297 / var(--font-size) * 2rem + 16 / var(--font-size) * 1rem
    );
    transition: 0.5s ease;
  }
  .map[data-id="data-id"]::before {
    padding-top: calc(
      297 / var(--font-size) * 2rem + 16 / var(--font-size) * 1rem
    );
  }
  .map[data-id="map_outside"]::before,
  .map[data-id="map_inside"]::before,
  .map[data-id="map_room"]::before,
  .map[data-id="map_mado"]::before,
  .map[data-id="map_yane"]::before,
  .map[data-id="map_door"]::before,
  .map[data-id="map_other"]::before,
  .map[data-id="map_kitchen"]::before,
  .map[data-id="map_toilet"]::before,
  .map[data-id="map_bath"]::before {
    padding-top: calc(400 / 345 * 100%);
  }
  .map__container {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -10;
    opacity: 0;
  }
  .map__container.is-current {
    z-index: 0;
    opacity: 1;
  }
}

@media all and (max-width: 767px), print {
  .c-table--sp-stick {
    margin-left: calc(-24 / var(--font-size) * 1rem);
    margin-right: calc(-24 / var(--font-size) * 1rem);
  }
  .c-table--sp-stick .c-table__body {
    padding-left: calc(24 / var(--font-size) * 1rem);
    padding-right: calc(24 / var(--font-size) * 1rem);
  }
  .c-modal-basic__body {
    padding: calc(40 / var(--font-size) * 1rem)
      calc(24 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
  }
  .c-page-heading::before {
    flex-shrink: 0;
  }
  .c-page-heading {
    padding-right: calc(40 / var(--font-size) * 1rem);
  }
}

/*==========================================================================
補助金のスキーム（例）
========================================================================== */
@media all and (min-width: 768px), print {
  .scheme-box {
    display: flex;
    column-gap: calc(20 / var(--font-size) * 1rem);
    align-items: center;
  }
}

@media all and (max-width: 767px), print {
  .scheme-box {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

/*==========================================================================
構成補助事業
========================================================================== */
@media all and (max-width: 767px), print {
  .--about.c-btn.--size-xxs {
    width: calc(143 / var(--font-size) * 1rem) !important;
  }
}

/* --------------------------------------------------------------------------
  COMPONENT 調整
-------------------------------------------------------------------------- */

@media all and (min-width: 768px), print {
  .modal-container .c-table .c-btn-arrow .c-btn__text__label {
    font-size: calc(12 / var(--font-size) * 1rem);
  }
  .modal-container .c-table .c-btn-arrow .c-btn__arrow {
    min-width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-right: calc(6 / var(--font-size) * 1rem);
  }
  .modal-container .c-table .c-btn-arrow .c-btn__arrow__icon {
    width: calc(14 / var(--font-size) * 1rem);
    min-width: calc(14 / var(--font-size) * 1rem);
  }
}

@media all and (max-width: 767px), print {
  .modal-container .c-table .c-btn-arrow .c-btn__text__label {
    font-size: calc(12 / var(--font-size) * 1rem);
  }
  .modal-container .c-table .c-btn-arrow .c-btn__arrow {
    min-width: calc(14 / var(--font-size) * 1rem);
    height: calc(14 / var(--font-size) * 1rem);
    margin-right: calc(6 / var(--font-size) * 1rem);
  }
  .modal-container .c-table .c-btn-arrow .c-btn__arrow__icon {
    width: calc(14 / var(--font-size) * 1rem);
    min-width: calc(14 / var(--font-size) * 1rem);
  }
}
