@media all and (min-width: 768px), print {
  .contact-main-section{
    max-width: calc(1024 / var(--font-size) * 1rem);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  .contact-intro-section{
    background-color: var(--sub-color-03);
  }
  .contact-intro-section__body{
    padding: calc(64 / var(--font-size) * 1rem) 0 calc(48 / var(--font-size) * 1rem);
  }
  .contact-voice-section {
    margin-bottom: calc(80 / var(--font-size) * 1rem);
  }
  .contact-voice-section .l-block__body {
    max-width: calc(1024 / var(--font-size) * 1rem);
    margin: auto;
  }
  .contact-voice-annotation-list {
    max-width: calc(800 / var(--font-size) * 1rem);
    margin: auto;
  }
  .contact-voice-table {
    width: calc(800 / var(--font-size) * 1rem);
    margin-left: auto;
    margin-right: auto;
  }
  .contact-voice-table .contact-voice-table-th{
    border-bottom: none;
  }
  .contact-voice-table .contact-voice-table-num{
    display: inline-block;
    font-size: calc(24 / var(--font-size) * 1rem);
    margin-right: calc(1 / var(--font-size) * 1rem);
  }
  .contact-call-section{
    margin-top: calc(65 / var(--font-size) * 1rem);
  }
  .contact-call-section .l-block__body {
    max-width: calc(781 / var(--font-size) * 1rem);
    margin: auto;
  }
  .contact-call-section .contact-call-section-cushion {
    padding: calc(24 / var(--font-size) * 1rem) calc(48 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) calc(48 / var(--font-size) * 1rem);
    border-radius: calc(20 / var(--font-size) * 1rem);
  }
  .contact-call-section .contact-call-section-cushion-02 {
    padding: calc(17 / var(--font-size) * 1rem) calc(17 / var(--font-size) * 1rem) calc(17 / var(--font-size) * 1rem) calc(17 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .contact-call-heading__body{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(4 / var(--font-size)* 1rem);
  }
  .contact-call-heading-ico{
    background-color: #333;
    mask-image: url(/assets/img/common/ico_contact.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(16 / var(--font-size)* 1rem);
    min-width: calc(16 / var(--font-size)* 1rem);
    height: calc(20 / var(--font-size)* 1rem);
    min-height: calc(20 / var(--font-size)* 1rem);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contact-call-heading-text{
    font-size: calc(var(--title-size-m) / var(--font-size)* 1rem);
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
  }
  .contact-call-section .c-cushion + .c-cushion{
    margin-top: calc(44 / var(--font-size) * 1rem);
  }
  .contact-call-block{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .contact-search-block{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }


  .contact-search{
  }
  .contact-search-heading{
    margin-top: calc(48 / var(--font-size) * 1rem);
  }
  .contact-search-heading__body{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(4 / var(--font-size)* 1rem);
  }
  .contact-search-content-text{
    line-height: 1;
  }
  .contact-search-heading-ico{
    background-color: #333;
    mask-image: url(/assets/img/common/ico_zoom.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(26 / var(--font-size)* 1rem);
    min-width: calc(26 / var(--font-size)* 1rem);
    height: calc(26 / var(--font-size)* 1rem);
    min-height: calc(26 / var(--font-size)* 1rem);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contact-search-heading-text{
    font-size: calc(var(--title-size-m) / var(--font-size)* 1rem);
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
  }

  .contact-search-box{
    display: block;
  }
  .contact-search-content-window{
    max-width:calc(576 / var(--font-size)* 1rem);
    width:100%;
    margin-top: calc(16 / var(--font-size)* 1rem);
    margin-left: auto;
    margin-right: auto;
  }
  .contact-search-content-window .mf_finder_searchBox_query_input{
    padding-left:calc(18 / var(--font-size)* 1rem);
    padding-right:calc(18 / var(--font-size)* 1rem);
    border:0;
  }
  .contact-search-content-window .mf_finder_searchBox_query_input::placeholder{
    color:var(--color-gray_400);
  }
  .contact-search-content-window .mf_finder_searchBox_items{
    padding: 0;
    border:2px solid var(--main-color);
    border-radius:calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem);
    overflow:hidden;
  }
  .contact-search-content-window .mf_finder_searchBox_submit{
    background-color: var(--main-color);
    border-radius:0;
    max-width: calc(143 / var(--font-size)* 1rem);
    width:100%;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: center;
    transition:0.3s ease;
  }
  .contact-search-content-window .mf_finder_searchBox_submit span{
    padding-left: calc(8 / var(--font-size)* 1rem);
    font-size:calc(12 / var(--font-size)* 1rem);
    font-weight: 700;
    margin: 0;
  }
  .contact-search-content-window .mf_finder_searchBox_submit span:before{
    content:"検索する";
  }
  .contact-search-content-window .mf_finder_searchBox_submit:before{
    content:"";
    background-color: var(--color-white);
    mask-image: url(/assets/img/common/ico_zoom.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(16 / var(--font-size)* 1rem);
    min-width: calc(16 / var(--font-size)* 1rem);
    height: calc(16 / var(--font-size)* 1rem);
    min-height: calc(16 / var(--font-size)* 1rem);
    margin-left: calc(6 / var(--font-size)* 1rem);
  }
  .contact-search-content-window .mf_finder_searchBox_submit:hover{
    opacity:0.7;
  }

  .contact-dial .l-contact__title {
    letter-spacing: 0.07em;
  }
  .contact-dial .contact-counter {
    display: block;
    padding: calc(24 / var(--font-size) * 1rem) calc(35 / var(--font-size) * 1rem) 0;
  }
  .contact-dial .contact-counter__address {
    padding-left: 0;
    border-left: none;
    width: 100%;
    max-width: none;
    display: flex;
    align-items: center;
    padding-bottom: calc(24 / var(--font-size) * 1rem);
    border-bottom: calc(1 / var(--font-size)* 1rem) solid var(--sub-border-color);
  }
  .contact-dial .contact-counter__tel {
    padding-right: calc(40 / var(--font-size)* 1rem);
    border-right: calc(1 / var(--font-size)* 1rem) solid var(--sub-border-color);
    flex-shrink: 0;
  }
  .contact-dial .contact-counter__time {
    max-width: calc(285 / var(--font-size) * 1rem);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .contact-counter__tel-ip__tel-num {
    font-size: calc(25 / var(--font-size) * 1rem);
  }
  .contact-counter__annotation {
    padding-top: calc(14 / var(--font-size) * 1rem);
  }

  .contact-voice-table-td p:has(.contact-table-ico) {
    position: relative;
    padding-left: calc(42 / var(--font-size) * 1rem);
  }
  .c-table__component > table .contact-voice-table-sub-td{
    white-space: nowrap;
  }
  .contact-table-ico {
    position: absolute;
    left: 0;
    top: calc(-8 / var(--font-size) * 1rem);
  }
  .contact-table-ico::before {
    content: '';
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: calc(34 / var(--font-size) * 1rem);
    height: calc(30 / var(--font-size) * 1rem);
  }
  .contact-table-ico.--portal::before {
    background-image: url(/assets/img/common/ico_portal.png);
  }
  .contact-table-ico.--kosodate::before {
    background-image: url(/assets/img/common/ico_mirai.png);
  }
  .contact-table-ico.--window::before {
    background-image: url(/assets/img/common/ico_mado.png);
  }
  .contact-table-ico.--kyutou::before {
    background-image: url(/assets/img/common/ico_kyutou.png);
  }
  .contact-table-ico.--chintai::before {
    background-image: url(/assets/img/common/ico_chintai.png);
  }
}
@media all and (min-width: 768px) and (max-width: 1365px) {
  .contact-voice-table {
    width: calc(860 / var(--font-size) * 1rem);
  }
  .contact-call-section .l-block__body {
    max-width: calc(860 / var(--font-size) * 1rem);

  }
}

@media all and (max-width: 767px), print {
  .contact-intro-section{
    background-color: var(--sub-color-03);
  }
  .contact-intro-section__body{
    padding: calc(48 / var(--font-size) * 1rem) 0 calc(48 / var(--font-size) * 1rem);
  }
  .contact-main-section .c-section-heading{
    margin-bottom: calc(24 / var(--font-size)* 1rem);
  }
  .contact-voice-section {
    margin-bottom: calc(48 / var(--font-size) * 1rem);
  }
  .contact-voice-section .l-block__body {
    max-width: calc(1024 / var(--font-size) * 1rem);
    margin: auto;
  }
  .contact-voice-annotation-list {
    max-width: calc(800 / var(--font-size) * 1rem);
    margin: auto;
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .contact-voice-table .contact-voice-table-th{
    border-bottom: none;
  }
  .contact-voice-table .contact-voice-table-num{
    display: inline-block;
    font-size: calc(24 / var(--font-size) * 1rem);
    margin-right: calc(1 / var(--font-size) * 1rem);
  }
  .contact-call-section{
    margin-top: calc(65 / var(--font-size) * 1rem);
  }
  .contact-call-section .l-block__body {
    max-width: calc(781 / var(--font-size) * 1rem);
    margin: auto;
  }
  .contact-call-section .contact-call-section-cushion {
    padding: calc(24 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .contact-call-section .contact-call-section-cushion-02 {
    border-radius: calc(10 / var(--font-size) * 1rem);
  }


  .contact-call-heading__body{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(4 / var(--font-size)* 1rem);
  }
  .contact-call-heading-ico{
    background-color: #333;
    mask-image: url(/assets/img/common/ico_contact.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(18 / var(--font-size)* 1rem);
    min-width: calc(18 / var(--font-size)* 1rem);
    height: calc(20 / var(--font-size)* 1rem);
    min-height: calc(20 / var(--font-size)* 1rem);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contact-call-heading-text{
    font-size: calc(var(--title-size-xs) / var(--font-size)* 1rem);
    line-height: 1.5;
    display: flex;
    align-items: center;
  }
  .contact-call-block{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .contact-search-block{
    max-width:calc(745 / var(--font-size) * 1rem);
    width:100%;
    margin-top: calc(16 / var(--font-size) * 1rem);
    margin-left: auto;
    margin-right: auto;
  }


  .contact-search{
  }
  .contact-search-heading{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .contact-search-heading__body{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(4 / var(--font-size)* 1rem);
  }
  .contact-search-content-text{
    line-height: 1;
  }
  .contact-search-heading-ico{
    background-color: #333;
    mask-image: url(/assets/img/common/ico_zoom.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(20 / var(--font-size)* 1rem);
    min-width: calc(20 / var(--font-size)* 1rem);
    height: calc(20 / var(--font-size)* 1rem);
    min-height: calc(20 / var(--font-size)* 1rem);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contact-search-heading-text{
    font-size: calc(var(--title-size-xs) / var(--font-size)* 1rem);
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
  }

  .contact-search-box{
    display: block;
  }
  .contact-search-content-window{
    width:100%;
    margin-top: calc(16 / var(--font-size)* 1rem);
    margin-left: auto;
    margin-right: auto;
  }
  .contact-search-content-window .mf_finder_searchBox_useSelects{
    margin: 0;
  }
  .contact-search-content-window .mf_finder_searchBox_query_input{
    padding-left:calc(15 / var(--font-size)* 1rem);
    padding-right:calc(15 / var(--font-size)* 1rem);
    border:0;
    font-size: calc(var(--text-size-s) / var(--font-size)* 1rem);
  }
  .contact-search-content-window .mf_finder_searchBox_query_input::placeholder{
    color:var(--color-gray_400);
  }
  .contact-search-content-window .mf_finder_searchBox_items{
    padding: 0;
    border:2px solid var(--main-color);
    border-radius:calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem) calc(5 / var(--font-size)* 1rem);
    overflow:hidden;
 }
  .contact-search-content-window .mf_finder_searchBox_submit{
    background-color: var(--main-color);
    border-radius:0;
    max-width: calc(80 / var(--font-size)* 1rem);
    width:100%;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: center;
    transition:0.3s ease;
  }
  .contact-search-content-window .mf_finder_searchBox_submit span{
    padding-left: calc(8 / var(--font-size)* 1rem);
    font-size:calc(12 / var(--font-size)* 1rem);
    font-weight: 700;
    margin: 0;
    display: block;
  }
  .contact-search-content-window .mf_finder_searchBox_submit span:before{
    content:"検索";
  }
  .contact-search-content-window .mf_finder_searchBox_submit:before{
    content:"";
    background-color: var(--color-white);
    mask-image: url(/assets/img/common/ico_zoom.svg);
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    width: calc(17 / var(--font-size)* 1rem);
    min-width: calc(17 / var(--font-size)* 1rem);
    height: calc(17 / var(--font-size)* 1rem);
    min-height: calc(17 / var(--font-size)* 1rem);
    margin-left: calc(5 / var(--font-size)* 1rem);
  }
  .contact-search-content-window .mf_finder_searchBox_submit:hover{
    opacity:0.7;
  }
  .l-contact{
    background: var(--color-gray_100);
    padding-top: calc(48 / var(--font-size) * 1rem);
    padding-bottom: calc(48 / var(--font-size) * 1rem);
  }
  main:not(:has(.breadcrumb-area)) + .l-contact{
    margin-top: calc(20 / var(--font-size) * 1rem);
  }
  .l-contact-wrap{
  }
  .l-contact__body{
    width: 100%;
    padding: 0 calc(15 / var(--font-size) * 1rem);
  }
  .l-contact__title{
    font-size: calc(var(--title-size-s) / var(--font-size) * 1rem);
    font-weight: 700;
    text-align: center;
    line-height: 1.78;
  }
  .l-contact-box {
    width: 100%;
  }
  .l-contact-box__inner {
    background: var(--color-white);
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .l-contact-box__body {
    padding: calc(8 / var(--font-size) * 1rem) 0 calc(14 / var(--font-size) * 1rem);
  }
  .l-contact-box__contents {
  }
  .l-contact-box-title {
    text-align: center;
  }
  .l-contact-box-title__label {
    color: var(--color-attention_1000);
    font-size: calc(20 / var(--font-size) * 1rem);
    font-weight: bold;
    line-height: 2.38;
  }
  .l-contact__bottom{
    padding-top: calc(40 / var(--font-size) * 1rem);
    border-top:calc(2 / var(--font-size) * 1rem) solid var(--color-gray_300);
    margin-top: calc(37 / var(--font-size) * 1rem);
  }
  .l-contact__bottom__text {
    margin-bottom: calc(24 / var(--font-size) * 1rem);
  }

  /** **/
  .contact-dial .contact-counter{
    background-color: var(--color-white);
    margin-top: calc(24 / var(--font-size) * 1rem);
    padding:calc(28 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
    border-radius:calc(10 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__box{
    width:100%;
    margin-bottom: calc(20 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__box__title{
    font-size: calc(15 / var(--font-size)* 1rem);
    font-weight: 700;
    text-align: center;
  }
  .contact-dial .contact-counter__address{
    padding-top: 0;
    padding-bottom: calc(16 / var(--font-size) * 1rem);
    border-top: none;
    border-bottom: calc(2 / var(--font-size)* 1rem) solid var(--sub-border-color);
    width:100%;
  }
  .contact-dial .contact-counter__tel{
    padding: 0 calc(12 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__tel__item{
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .contact-dial .contact-counter__tel__item + .contact-counter__tel__item{
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__tel__item.--navidial{
    justify-content: center;
    margin-bottom: calc(6 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__tel-navi__tel{
  }
  .contact-dial .contact-counter__tel-navi__tel-num{
    font-size: calc(33 / var(--font-size)* 1rem);
    font-weight: 700;
    line-height: 1;
    position: relative;
    top:calc(-4 / var(--font-size)* 1rem);
    white-space: nowrap;
  }
  .contact-dial .contact-counter__tel-navi__ico{
    max-width:calc(40 / var(--font-size) * 1rem);
    width:100%;
    flex-shrink: 0;
    margin-left: calc(5 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__tel-ip__ico{
    padding:calc(4 / var(--font-size) * 1rem) calc(6 / var(--font-size) * 1rem);
    background-color: var(--sub-color-03);
    border-radius:calc(5 / var(--font-size) * 1rem);
    font-size: calc(10 / var(--font-size)* 1rem);
    font-weight: 700;
    color:var(--main-color);
    flex-shrink: 0;
  }
  .contact-dial .contact-counter__tel-ip__tel{
    display:flex;
    align-items:center;
    margin-left: calc(15 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__tel-ip__tel-num{
    font-size: calc(16 / var(--font-size)* 1rem);
    font-weight: 700;
    line-height: 1;
    position: relative;
    top:calc(0 / var(--font-size)* 1rem);
    white-space: nowrap;
  }
  .contact-dial .contact-counter__time{
    font-size: calc(var(--text-size-s) / var(--font-size)* 1rem);
    font-weight: 700;
  }
  .contact-dial .contact-counter__confirm-box{
    background-color: var(--color-gray_100);
    padding:calc(24 / var(--font-size) * 1rem) calc(18 / var(--font-size) * 1rem);
    border-radius:calc(5 / var(--font-size) * 1rem);
    margin-top: calc(18 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__list{
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .contact-dial .contact-counter__list__item{
    font-size: calc(var(--text-size-xs) / var(--font-size)* 1rem);
    display: flex;
  }
  .contact-dial .contact-counter__list__item:before{
    content:"※";
    flex-shrink: 0;
    margin-right: calc(5 / var(--font-size) * 1rem);
  }
  .contact-counter__time{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .contact-counter-time__time{
    text-align: center;
  }
  .contact-counter__annotation {
    padding-top: calc(14 / var(--font-size) * 1rem);
  }

  .contact-voice-table-td p:has(.contact-table-ico) {
    position: relative;
    padding-left: calc(42 / var(--font-size) * 1rem);
  }
  .contact-table-ico {
    position: absolute;
    left: 0;
    top: calc(-4 / var(--font-size) * 1rem);
  }
  .contact-table-ico::before {
    content: '';
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: calc(30 / var(--font-size) * 1rem);
    height: calc(26 / var(--font-size) * 1rem);
  }
  .contact-table-ico.--portal::before {
    background-image: url(/assets/img/common/ico_portal.png);
  }
  .contact-table-ico.--kosodate::before {
    background-image: url(/assets/img/common/ico_mirai.png);
  }
  .contact-table-ico.--window::before {
    background-image: url(/assets/img/common/ico_mado.png);
  }
  .contact-table-ico.--kyutou::before {
    background-image: url(/assets/img/common/ico_kyutou.png);
  }
  .contact-table-ico.--chintai::before {
    background-image: url(/assets/img/common/ico_chintai.png);
  }

}