@charset "utf-8";
@media screen and (max-width: 1560px) {
  .year__by-build li {
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 1380px) {
  .f-rem6 {
    font-size: 5rem;
  }
  .mv-text-top {
    font-size: 2vw;
  }
}

@media screen and (max-width: 1300px) {
  .reason-text {
    height: 370px;
  }
  header {
    padding: 0 20px;
  }
  .f-rem6 {
    font-size: 4rem;
  }
  .main h3 {
    font-size: 2rem;
  }
  .serive-guarantee {
    top: 13px;
  }
  .year__by-build li {
    font-size: 1.55vw;
  }
}
@media screen and (max-width: 1200px) {
  .reason-text {
    height: 400px;
  }

  .main2 {
    padding-top: 150px;
  }

  .btn1 button ,.btn1 .link-button {
    padding: 20px 80px;
  }

  .example_thumb {
    width: 100%;
  }
  .inner {
    padding: 0 10px;
    box-sizing: border-box;
  }
  .f-rem6 {
    font-size: 5rem;
  }
  .service-tax-paint {
    bottom: -30px;
  }
  .main h3 {
    font-size: 2rem;
  }
  .serive-guarantee {
    top: 8px;
  }
  .responsive-br {
    display: none !important;
  }
}

@media screen and (max-width: 1100px) {
  .news-sec {
    padding-left: 10px;
  }

  .menu nav ul li {
    font-size: 1.5vw;
  }

  .mv-text,
  .mv-text-top {
    font-size: 2vw;
    top: 23%;
  }

  .mv-text-small {
    font-size: 1.5vw;
    margin-top: 12vh;
  }

  .reason-text {
    height: 420px;
  }
  .service-icon-item-text {
    padding: 20px 10px;
  }
  .small-text {
    font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .mv.top {
    margin-top: 50px;
  }
  /* .mv.top img {
    max-height: 479px;
  } */
  .helpful-list-article.help {
    margin-top: 0;
  }
  .breadcrumb__list {
    padding: 78px 0 0 5vw !important;
    white-space: nowrap;
    overflow-x: auto;
  }
  .works-list-img {
    width: 100%;
    height: auto;
  }
  .about {
    width: 158%;
  }
  .achievements {
    width: 100%;
  }
  .achievements-head h2 {
    font-size: 1.5rem;
  }
  .achievements-body p {
    font-size: 21px;
  }
  .side_icon {
    display: none !important;
  }
  .works-arr {
    display: none;
  }
  .works-arr-sp {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 10px;
  }
  .f-rem2 {
    font-size: 1.5rem;
  }
  aside {
    margin-bottom: 5%;
  }
  header {
    background-color: #f3f3f3;
    position: fixed;
    top: 0px;
    z-index: 9999;
    padding: 16px 10px;
    animation: menu-wrap 1s forwards;
    height: 76px;
  }
  .article-content img {
    width: 100%;
    height: auto;
  }
  .works-arr-sp img {
    width: 50px;
  }
  .news-list {
    width: 94%;
  }
  .header__hamburger {
    width: 60px;
    height: 100%;
    display: block;
  }
  .tax-in {
    bottom: -100%;
  }
  .tblComm td {
    padding: 5px;
  }
  .header__nav {
    display: block;
  }
  .customer-voice-item p {
    text-align: center;
  }
  .example_thumb,
  .content-works {
    width: 100%;
  }

  .big-mv-text {
    right: 2%;
  }

  .sp-non {
    display: none;
  }
  .sp-non-inline {
    display: none;
  }

  .sp-block {
    display: block;
  }

  .order1 {
    order: 1;
  }

  .order2 {
    order: 2;
  }

  .-flex {
    flex-direction: column;
  }

  .logo {
    width: 80%;
  }

  .sp-side_pad10 {
    padding: 0 10px;
    box-sizing: border-box;
  }

  .sp-mtb10 {
    margin: 10px 0;
  }

  .sp-mtb20 {
    margin: 20px 0;
  }

  .mv img {
    width: 100%;
    border-radius: 0;
    margin-top: 3%;
  }

  .btn-area button ,.btn-area .link-button {
    display: block;
    margin: 10px auto;
    width: 95%;
    padding: 20px 15px;
  }

  .btn1 button ,.btn1 .link-button {
    display: block;
    margin: 10px auto;
  }

  .example_thumb {
    max-width: 100%;
    width: 100%;
  }

  .news-sec {
    width: 90%;
    margin: 10px auto;
    font-size: 0.8rem;
  }

  .mv-text,
  .mv-text-top {
    top: 8%;
    right: 4%;
    font-size: 3vw;
  }
  .mv-text {
    font-size: 4.5vw;
  }

  .big-mv-text {
    font-size: 7vw;
  }

  .mv-text-small {
    font-size: 3vw;
    margin-top: 12vh;
  }

  .mv img.mv-penki {
    right: 0;
    z-index: 9;
    bottom: 1%;
  }

  .scrolldown {
    display: none;
  }

  .main,
  .main2 {
    padding: 50px 10px;
    box-sizing: border-box;
  }

  .left_side-text-en {
    display: none;
  }

  .left_side-text {
    left: 4%;
    top: 2%;
    font-size: 4vw;
    border-left: none;
  }

  .big_text {
    top: 0%;
    left: -2%;
    font-size: 3rem;
  }

  .main .flex-left {
    margin-right: 0%;
  }

  .main .flex-left,
  .main .flex-right,
  .reason-item img,
  .media-area-item,
  .helpful-content-item {
    width: 100%;
  }

  .reason-item {
    width: 90%;
    margin: 20px auto;
  }

  .main h3 {
    font-size: 1.5rem;
    margin-top: 3%;
    margin-bottom: 3%;
  }

  .reason-text {
    height: auto;
  }

  .common-helpful {
    height: auto;
    margin-top: 50px;
  }

  .common-helpful p {
    font-size: 16px;
  }

  .media-area-item img {
    width: 100%;
  }

  .helpful-content-img {
    margin-bottom: 30px;
  }

  .helpful-content-img img {
    width: 100%;
    margin: 10px 0;
  }

  footer {
    padding: 50px 25px;
  }

  .footer-attend {
    font-size: 14px;
    font-weight: 700;
    color: rgb(228, 228, 19);
    margin-bottom: 24px;
    letter-spacing: 0;
  }

  .tbl-r04 {
    width: 100%;
  }

  .tbl-r04 .thead {
    display: none;
  }

  .tbl-r04 tr {
    width: 100%;
  }

  .tbl-r04 td {
    display: block;
    text-align: right;
    width: 100%;
  }

  .tbl-r04 td:first-child {
    background: #eeeeee;
    color: #000;
    font-weight: bold;
    text-align: center;
  }

  .tbl-r04 td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }

  .reason-text {
    height: auto;
  }

  .sp-mb20 {
    margin-bottom: 20px;
  }

  .customer-voice-item {
    width: 100%;
  }
  .customer-voice-item img {
    margin: 0 auto;
  }
  .customer-voice-item h4 {
    text-align: center;
  }
  .works-list img {
    width: 100%;
    height: 300px;
    margin: 10px auto;
  }
  .article {
    margin-top: 100px;
  }

  .article.helpful-list {
    margin-top: 20px;
  }

  .article-content {
    padding-top: 5%;
  }

  .article-content h2 {
    font-size: 1.4rem;
    margin-top: 10px;
  }

  .article-content h3 {
    font-size: 1.2rem;
  }

  .faq-anker {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .question-icon {
    margin-bottom: 10px;
  }

  .faq-list_item-right {
    width: 100%;
  }

  .company .right,
  .company .left {
    width: 100%;
  }

  .company dt {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }

  .under-company-wrapper {
    flex-direction: column;
  }

  .under-company-wrapper dt {
    margin-bottom: 3.259452412%;
    width: 100%;
  }

  .spwidth,
  .under-company-wrapper dd {
    width: 100%;
  }

  .sp-mt20 {
    margin-top: 20%;
  }

  .sp-mt30 {
    margin-top: 30px;
  }

  .sp-mb20 {
    margin-bottom: 20px;
  }

  .sp-mb30 {
    margin-bottom: 30px;
  }

  .sp-mb40 {
    margin-bottom: 40px;
  }

  .sp-align-center {
    align-items: center;
  }

  .helpful-list .content,
  aside {
    width: 100%;
  }

  .works-now .item,
  .t-left dt {
    width: 100%;
  }

  .seminar-list button ,.seminar-list .link-button {
    width: 100%;
    margin-bottom: 5%;
  }

  .toso-estate .right,
  .toso-estate .right p {
    margin-left: inherit;
    width: 100%;
  }

  .toso-estate .photo-list img {
    width: 100%;
    height: auto;
  }

  .left-part {
    width: 100%;
  }
  .right-part {
    width: 100%;
    padding-left: 0;
  }
  .pl-x {
    margin-left: 30px;
  }
  .img-h-full {
    height: auto !important;
  }
  .pd-top-bit {
    padding-top: 0;
  }
  .third-biulding {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
  }
  .third-biulding .first-part {
    width: 100%;
    width: 100%;
    height: auto;
    height: auto;
  }
  .third-biulding .second-part {
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  .toso-estate .left {
    width: 100%;
  }

  .sp-nowrap {
    flex-wrap: nowrap;
  }

  .w30,
  .w50,
  .leftbox,
  .rightbox {
    width: 100%;
  }

  .toso-estate .left p {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

  .water .left,
  .water .right {
    width: 100%;
  }

  .works-example-area-item {
    width: 100%;
  }

  .example-arrow {
    width: 30px;
    height: 30px;
    border-style: solid;
    border-width: 15px 15px 15px;
    border-color: #b3003f transparent transparent transparent;
    margin-top: 9%;
    margin: 15px auto 0 auto;
  }

  .example-arrow9 {
    width: 30px;
    height: 30px;
    border-style: solid;
    border-width: 15px 15px 15px;
    border-color: #b3003f transparent transparent transparent;
    margin-top: 9%;
    margin: 15px auto 0 auto;
  }

  .service-bg {
    background-image: none;
  }

  .service.content {
    padding-top: 0;
  }

  .sample-image,
  .sample-image img,
  .service-icon-item,
  .service-icon-item img {
    width: 100%;
  }
  .wall-paint .service-icon-item {
    margin-bottom: 7rem;
  }
  .service-icon-item:last-child {
    margin-bottom: 0;
  }

  .large-scale-list {
    padding: 30px 10px;
  }

  .service h4 {
    margin-left: 0;
    text-align: center;
  }

  .tblComm {
    width: inherit;
    white-space: nowrap;
  }

  .ml15 {
    margin-left: 0;
  }

  .roof-painting-item {
    width: 100%;
  }
  .tble {
    overflow: scroll;
  }
  .service-pirce {
    text-align: right;
  }
  .roof-replace .service-tax {
    position: absolute;
    bottom: -28px;
    right: 0px;
    font-size: 1rem;
    width: 300px;
  }
  .help-link a {
    width: 100%;
  }
  .page.larger,
  .page.smaller,
  .first,
  .last {
    padding: 10px 6px;
    margin: 0 5px;
  }
  .current {
    padding: 10px 10px;
    margin: 0 5px;
  }
  .cta-btn {
    margin-bottom: 30px;
  }
  .achievements.mini {
    font-size: 16px;
    line-height: 1;
  }
  .small-text {
    font-size: 16px;
  }
  .block-image.sakura-frame.single {
    width: 100%;
  }
  .block-image.sakura-frame.single img {
    height: auto;
  }
  .works-now.works-closed .item {
    width: 100%;
  }
  .works-closed .block-image.sakura-frame img {
    height: auto;
  }
  .footer-content-menu {
    margin-bottom: 20px;
  }
  .footer-content .footer-comment {
    font-size: 14px;
  }
  .plan__text1 {
    margin-top: 4rem;
  }
  .serive-guarantee.sp-abs-right {
    right: 0;
  }
  .roof-paint-sec {
    margin-top: 5%;
  }
}

@media screen and (max-width: 500px) {
  .mv.top {
    margin-top: 50px;
  }
  /* .mv.top img {
    max-height: 228px;
  } */
  .content {
    padding: 20px 0;
    width: 100%;
  }
  .helpful-list-article img {
    width: 100%;
    height: 300px;
  }
  .bukken .item,
  .bukken .item img {
    width: 100%;
  }
  .mv-text-small {
    font-size: 2.3vw;
    margin-top: 5vh;
  }

  #splash_logo svg {
    width: 100%;
  }

  .bg-font {
    top: 5vw;
    font-size: 27vw;
  }
  .year10 {
    font-size: 1rem;
  }
  .cutomer-voice-list h5 {
    font-size: 8vw;
  }

  .article-content {
    border-top: none;
  }

  .article-content h2 {
    font-size: 1.1rem;
  }

  .article-content h3 {
    font-size: 1rem;
  }

  .paginaiton-item {
    font-size: 15px;
  }

  .service h2,
  .large-scale-list h2 {
    font-size: 1.3rem;
  }

  .youtube {
    width: 100%;
    height: 350px;
  }

  .h2-1 {
    font-size: 1.3rem;
  }

  .f-rem2 {
    font-size: 1.3rem;
  }
  .f09 {
    font-size: 0.6rem;
  }
  .service-icon-item.plan-explain {
    margin-top: 5rem;
  }

  .f-rem6 {
    font-size: 3rem;
  }

  .service-tax-paint {
    font-size: 11px;
    bottom: -35px;
    width: 245%;
    height: 100%;
  }

  .serive-faq {
    width: 100%;
    margin: 8% auto;
  }

  .service h2.big_text {
    font-size: 3.3rem;
  }

  .serive-guarantee {
    right: 0%;
    top: 0px;
  }

  .disposal {
    top: -17px;
    font-size: 0.5rem;
  }
  .sp-abs-right {
    right: -33%;
  }
  .service-icon-item-text {
    padding: 10px 10px 26px 10px;
    height: auto;
  }
  .comment2 {
    font-size: 1rem;
  }
  .per.f-rem3 {
    font-size: 1.5rem;
  }
  .year__by-build li.year__by-build-head {
    font-size: 1.6rem;
  }
  .year__by-build li {
    font-size: 4.55vw;
    padding-right: 30px;
  }
  /* 0418年度別施工実績 */
  .achievements table tr td {
    height: 70px;
    font-size: 18px;
    padding: 20px;
    white-space: nowrap;
  }
  .achievements table tr td:first-child {
    position: sticky;
    left: 0;
    border: 2px solid #b30040;
  }
}

@media screen and (max-width: 376px) {
  .year__by-build li {
    font-size: 4.55vw;
    padding-right: 20px;
  }
}

/* 20250402 TOPIX 追加 */
@media screen and (max-width: 1200px) {
  .topix-label div {
    font-size: 2.5rem;
  }
  .topix-label p {
    font-size: 1rem;
  }
  .btn-topix button ,.btn-topix .link-button {
    height: 3rem;
    font-size: 0.875rem;
  }
  .btn-topix button::before ,.btn-topix .link-button::before {
    width: 3rem;
  }
  .btn-topix button:hover::before ,.btn-topix .link-button:hover::before {
    left: calc(100% - 3rem);
  }
  .btn-topix button::after ,.btn-topix .link-button::after {
    right: 3rem;
  }
  .btn-topix .btn-arrow {
    right: 1.125rem;
  }
}
@media screen and (max-width: 768px) {
  .topix-label {
    align-items: unset;
    flex-direction: column;
    padding-bottom: 1rem;
  }
  .topix-label div {
    justify-content: unset;
  }
  .topix-label p {
    font-size: 0.875rem;
  }
  .topix-label-sub p {
    font-size: 2rem;
  }
  .topix-contents-blocks {
    flex-direction: column;
  }
  .topix-contents-block {
    padding: 0 1rem;
  }
  .topix-contents-block:not(:last-child) {
    margin-right: unset;
    margin-bottom: 2rem;
  }
  .block-image.sakura-frame img {
    height: 74vw;
  }

  .block-image.back-blur img {
    height: 103.25vw;
  }
  .block-image.sakura-frame.single {
    width: 100%;
  }
  .block-image.sakura-frame.single img {
    height: 100%;
  }
  .wall-paper_banner {
    width: 100%;
  }
  .topix-bg {
    margin: 1rem 0;
  }
  .pc-only {
    display: none;
  }
  .swiper.sp-only {
    display: block;
  }
}
