@media screen and (max-width: 1200px) {}
@media screen and (max-width: 1024px) {}
@media screen and (max-width:820px) {}
@media screen and (max-width:600px) {}
@media screen and (max-width: 1200px) {}
@media screen and (max-width: 1024px) {}
@media screen and (max-width:820px) {}
@media screen and (max-width:600px) {}
/*========================================================================================

 共通事項 

=========================================================================================*/
@media screen and (max-width:1024px) {
  p, a, li, dt, dd, time, h1, h2, h3, h4, h5, h6, th, td, span {
    font-size: 1.6rem
  }
}
@media screen and (max-width: 820px) {
  .width23, .width30, .width32, .width40, .width48, .width50, .width55, .width60, .width65, .width70, .width80 {
    width: 80%;
    margin-inline: auto;
  }
  .title-head {
    margin-bottom: clamp(40px, 5vw, 60px);
    color: #55524e;
    font-size: clamp(1.8rem, 1.582rem + 1.09vw, 2.4rem);
  }
  .sub-header-txt {
    font-size: clamp(2rem, 1.855rem + 0.73vw, 2.4rem);
  }
  .catch-copy {
    font-size: 2.4rem;
  }
  .lead-txt {
    line-height: 2;
  }
}
@media screen and (max-width: 600px) {
  p, a, li, dt, dd, time, h1, h2, h3, h4, h5, h6, th, td, span {
    font-size: 1.4rem
  }
  .width23, .width30, .width32, .width40, .width45, .width48, .width50, .width55, .width60, .width65, .width70, .width80 {
    width: 100%;
  }
  .sp-block {
    display: block;
  }
  .sp-nonw {
    display: none;
  }
  .catch-copy {
    font-size: 1.8rem;
  }
  .lead-txt {
    font-size: 1.6rem;
    text-align: left;
  }
  .lead-txt .font-green2 {
    font-size: 1.6rem;
  }
  .linear {
    font-size: 1.4rem;
  }
}
/*リキッドレイアウト*/
@media screen and (max-width:820px) {
  .liquid-content {
    width: 80% !important;
    margin-inline: auto !important;
  }
}
@media screen and (max-width:600px) {
  .liquid-content {
    width: 100% !important;
  }
}
/*flexの解除*/
@media screen and (max-width: 820px) {
  .flex-release {
    flex-direction: column;
    gap: 10vw;
  }
}
/*モバイル以外電話リンク禁止
@media screen and (min-width: 600px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}*/
/*パララックス解除*/
@media screen and (max-width:600px) {
  .parallax_content {
    background-attachment: scroll;
    background-position: left;
    background-size: cover;
    background-repeat: no-repeat;
  }
}
/*========デフォルトスタイルのレスポンシブ========*/
/*news*/
@media screen and (max-width: 1024px) {
  .news-list03 li:last-of-type {
    padding-bottom: 0px;
    margin-bottom: 0px;
  }
}
@media screen and (max-width: 600px) {
  .news-list03 li {
    flex-direction: column;
  }
  .news-list03 li .news-img {
    width: 80%;
    margin: 0 auto 2em;
  }
  .news-list03 li .news-img img {
    height: auto;
    min-height: auto;
  }
  .news-list03 flex {
    gap: 10vw;
  }
  .news-list02 {
    width: 90%;
    margin-inline: auto;
  }
  .news-list02 li:not(l:last-of-type) {
    margin-bottom: 30px;
  }
  .news-list02 li.flex {
    flex-direction: column;
    row-gap: 10vw;
  }
  .news-list02 li .news-img {
    width: 100%;
  }
  .news-list02 li .news-content, .news-list03 li .news-content {
    width: 100%;
    text-align: left;
  }
  .flex.news-list03 {
    gap: 8vw;
  }
}
@media screen and (max-width: 450px) {
  .news-list02 li .news-txt a, .news-list03 li .news-txt a {
    font-size: 1.4rem;
  }
}
/*com-box01*/
/*com-box02*/
@media screen and (max-width: 940px) {
  .com-box02-list.com-box02-list {
    gap: 60px 20px;
  }
  .com-box02-list.com-box02-list li {
    margin-bottom: 0px;
  }
}
@media screen and (max-width: 600px) {
  .com-box02-list.com-box02-list li {
    width: 90%;
    margin: 0 auto;
  }
  .com-box02-listcom-box02-list li:last-of-type {
    margin-bottom: 10px;
  }
}
/*com-box03*/
@media screen and (max-width: 940px) {
  .com-box03-list.com-box03-list {
    gap: 60px 20px;
  }
}
@media screen and (max-width: 820px) {
  .com-box03-list.com-box03-list li {
    margin-bottom: 0px;
  }
}
@media screen and (max-width: 600px) {
  .com-box03-list.com-box03-list li {
    width: 90%;
    margin: 0 auto;
  }
  .com-box03-list.com-box03-list::before {
    content: none;
  }
  .com-box03-list.com-box03-list::after {
    content: none;
  }
}
/*com-flow02*/
@media screen and (max-width: 820px) {
  .com-flow02-list.com-flow02-list {
    gap: 80px;
  }
  .com-flow02-list.com-flow02-list li {
    width: 100%;
    position: relative;
    margin-bottom: 0px;
  }
  .com-flow02-icon.com-flow02-icon img {
    width: 30%;
  }
  .com-flow02-head.com-flow02-head h3 {
    font-size: 18px;
    margin-bottom: 0px;
  }
  .com-flow02-arrow.com-flow02-arrow {
    top: -76px;
  }
  .com-flow02-list.com-flow02-list::before, .com-flow02-list.com-flow02-list::after {
    content: none;
  }
  .com-flow02-txt.com-flow02-txt {
    text-align: center;
  }
}
@media screen and (max-width: 600px) {
  .com-flow02-icon.com-flow02-icon img {
    width: 50%;
    margin: 0 auto 0.5em;
  }
  .com-flow02-txt.com-flow02-txt {
    font-size: 14px;
    text-align: left;
  }
  .com-flow02-num.com-flow02-num {
    margin-bottom: 0.5em;
  }
}
/*com-menu01*/
@media screen and (max-width: 600px) {
  .flex.com-menu01-list.com-menu01-list {
    gap: 8vw;
    flex-direction: column;
  }
  .com-menu01-list.com-menu01-list li {
    width: 90%;
    margin-inline: auto
  }
  .com-menu01-tit.com-menu01-tit {
    width: 160px;
    height: 160px;
    font-size: 1.4rem;
  }
}
/*com-list01*/
@media screen and (max-width: 820px) {
  .flex.com-list01.com-list01 {
    gap: 10em 2em;
  }
  .com-list01.com-list01 li {
    width: 46%;
    margin-bottom: 0px;
  }
  .com-list01-head.com-list01-head {
    font-size: 1.6rem;
  }
  .com-list01-icon.com-list01-icon img {
    width: 80%;
  }
}
@media screen and (max-width: 600px) {
  .com-list01.com-list01 li {
    width: 100%;
    margin-top: 0em;
  }
  .com-list01.com-list01::before {
    content: none;
  }
  .flex.com-list01.com-list01 {
    gap: 10vw;
  }
  .com-list01-txt.com-list01-txt {
    font-size: 14px;
    margin: 1em 0 1em;
  }
  .com-list01-icon.com-list01-icon {
    margin-top: 0em;
  }
  .com-list01-head.com-list01-head {
    margin: 1em 0 1em;
  }
  .com-list01-nm.com-list01-nm {
    font-size: 30px;
  }
}
/*com-interview01*/
@media screen and (max-width: 600px) {
  .com-interview01-list {
    gap: 7vw;
  }
}
/*com-interview02*/
@media screen and (max-width: 1024px) {
  .com-interview02-img.com-interview02-img img {
    aspect-ratio: 2 / 3;
    height: auto;
  }
}
@media screen and (max-width: 600px) {
  .flex.com-interview02-list.com-interview02-list {
    gap: 8em 1em;
  }
  .com-interview02-list.com-interview02-list > li {
    width: 100%;
  }
  .com-interview02-img.com-interview02-img {
    width: 80%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 600px) {
  .com-timeline01-content {
    margin-bottom: 20px;
  }
}
/*tab*/
@media screen and (max-width: 820px) {
  .tab-item.tab-item, .tab-item2.tab-item2 {
    font-size: 1.8rem;
    font-weight: 500;
  }
}
@media screen and (max-width: 600px) {
  .tab-item.tab-item, .tab-item2.tab-item2 {
    font-size: 1.6rem;
    font-weight: 500;
    width: 100%;
    border-radius: 15px;
  }
  .tab-list.tab-list {
    gap: 2em;
    justify-content: center;
  }
  .panel-item.panel-item, .panel-item2.panel-item2 {
    padding: 1.5rem;
  }
  .tab-panel-a.tab-panel-a .tab {
    width: 100%;
  }
  .tab-wrap {
    margin-bottom: 4em;
  }
}
/*テーブルのレスポンシブ*/
@media screen and (max-width: 600px) {
  table.tablepress tbody td.column-1, table.tablepress tbody td.column-2 {
    display: block !important;
    width: 100% !important;
  }
  table.tablepress th:not(:last-child), table.tablepress td:not(:last-child) {
    border-right: none !important;
  }
  table.tablepress tbody tr:last-of-type td.column-1 {
    border-bottom: none !important;
  }
  .scroll600 {
    overflow-x: auto;
    width: 100%;
  }
  .scroll600 table {
    width: 100%;
    min-width: 200vw;
  }
  .scroll600 table th, .scroll700 table td {
    white-space: nowrap;
  }
  .scroll600::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  .scroll600::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 5px;
  }
  .scroll600::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 5px;
  }
  .scroll600::-webkit-scrollbar-thumb:hover {
    background: #555;
  }
}
@media screen and (max-width: 600px) {
  iframe.g-map {
    aspect-ratio: 3 / 2;
  }
}
/*問い合わせフォーム*/
@media screen and (max-width: 820px) {
  table.contact-form01 td {
    border-left: none;
  }
  table.contact-form01 th {
    border-right: none;
  }
  .contact-form01 td {
    border-bottom: none;
  }
  .contact-form01 th {
    border-bottom: none;
  }
}
@media screen and (max-width: 600px) {
  input[type="submit"], input[type="button"] {
    width: 90%;
  }
}
/*========<!-- ヘッダー　-->========*/
#mobile-nav {
  background-image: none;
}
#hamburger {
  background-color: transparent;
  border-radius: 15px;
}
#hamburger span {
  background-color: #555555;
}
.mobile-menu-icon-list > li.sub-on .mobile-sub-menu a {
  display: block;
  padding: 10px;
  background-color: #ec7f38;
}
.mobile-logo {
  background: #ffffff;
  padding: 15px 0;
}
.mobile-logo img {
  max-width: 120px;
}
@media screen and (max-width: 1024px) {
  .header-content {
    padding: 0px;
  }
  .sp-header02 {
    padding: 15px 0 15px;
    background: #d1d1d1 url(/wp-content/uploads/2024/09/img-noise-361x370-1.png) repeat left top/20%
  }
  header .sns-icon {
    display: none;
  }
  .moblie-menu-head {
    width: 100%;
    color: #ffffff;
    font-size: 1.6rem;
    background-color: inherit !important;
  }
  .sp-header {
    display: block;
    padding: 15px 0 15px;
    height: auto;
  }
  .logo {
    max-width: 500px;
  }
  .logo.logo img {
    width: 100%;
  }
  .sp-header-inner .logo img {
    max-height: none;
    width: 100%;
    margin-left: 5px;
  }
  .mobile-logo img {
    max-width: 240px;
  }
  .header-inner, .header-inner02, .header-content02 {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  .header {
    background: url(/wp-content/uploads/2024/11/circle-flag@.png) repeat-x left top / 30%;
  }
}
/*========<!-- 追従ナビ　-->========*/
@media screen and (max-width:820px) {
  .sticky-nav {
    width: 100%;
    top: auto;
    bottom: 0;
    transform: none;
  }
  .sticky-nav .g-sub-nav-list a {
    writing-mode: horizontal-tb;
    width: 100%;
    font-size: 1.6rem;
    padding: 10px;
    text-align: center;
    margin-left: 0;
    margin-bottom: 0px;
    border-right: 3px solid #fff;
    border-radius: 10px 10px 0 0;
  }
  .g-sub-nav-list {
    display: flex;
  }
  .g-sub-nav-list a {
    width: 50%;
  }
  .sticky-nav .g-sub-nav-list a {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width:600px) {
  .sticky-nav .g-sub-nav-list a {
    font-size: 1.4rem;
    line-height: 1.3;
  }
}
/*========<!-- フッター　-->========*/
@media screen and (max-width: 1024px) {
  .footer-inner.flex {
    -webkit-box-direction: normal !important;
    -ms-flex-direction: normal !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }
}
@media screen and (max-width: 820px) {
  #page-top {
    right: 5px;
    bottom: 5px;
  }
  /*.footer {
    padding: 40px 0 100px;
  }*/
  .footer-logo-address, .footer-nav-wrap {
    width: 100% !important;
  }
  .flex.footer-inner {
    gap: 10vw;
  }
  .footer-logo {
    width: 90%;
  }
  .footer-logo img {
    margin-right: auto;
  }
}
@media screen and (max-width: 600px) {
  .footer-logo {
    width: 100%;
    margin: 0 auto 20px;
    padding-bottom: 20px;
  }
  .footer-logo img {
    margin: 0 auto;
    max-width: 320px;
  }
  .footer-inner {
    margin: 20px auto 120px;
  }
  .footer {
    background: url(/wp-content/uploads/2024/11/circle-flag@.png) repeat-x left top / 30%, url(/wp-content/uploads/2024/11/flower@1.5x-8.png) no-repeat 2% 100% / 20%, url(/wp-content/uploads/2024/11/bg_paper.png) repeat left top / 100%;
    padding: 1em;
  }
  .footer-nav-wrap p {
    margin-bottom: 2em;
  }
  #page-top img {
    max-height: 80px;
  }
}
/*========================================================================================

HOME

=========================================================================================*/
/*=====全階層共通背景色柄余白の指定=====*/
@media screen and (max-width: 1024px) {
  .header-menu {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  main {
    background: #f3f5e9 url(/wp-content/uploads/2025/03/23200465-ye2.png) repeat left top / 100%;
  }
}
/*========<!-- トップスライダー　-->========*/
/*========<!-- home-section01 -->========*/
@media screen and (max-width: 600px) {
  section.home-section01 {
    padding: clamp(80px, 15vw, 160px) 0 clamp(160px + 250px, 15vw + 250px, 160px + 250px);
  }
}
/*========<!-- home-section02 -->========*/
@media screen and (max-width: 820px) {
  .policy-wrapper {
    background-color: rgba(0, 0, 0, 0.2);
    background-blend-mode: overlay;
    flex-direction: column;
    padding: 5em 8em;
    align-items: flex-start;
    justify-content: space-around;
  }
  .policy p {
    font-size: 1.8rem;
    margin-bottom: 0px;
    color: #ffffff;
  }
  .policy-wrapper .vertical {
    writing-mode: horizontal-tb;
    color: #ffffff;
  }
  section.home-section02 {
    padding: clamp(80px, 15vw, 160px) 0 clamp(320px, 30vw, 320px);
  }
  .img1 {
    width: 35vw;
    height: 35vw;
    left: 4%;
    bottom: 7%;
  }
  .img2 {
    width: 30vw;
    height: 30vw;
    right: 3%;
    bottom: 9%;
  }
  .img3 {
    bottom: 4%;
    right: 18%;
    width: 20vw;
    height: 20vw;
  }
}
@media screen and (max-width: 600px) {
  .policy-wrapper {
    padding: 5em;
    border-radius: 100px;
    height: 400px;
  }
  .policy-wrapper .vertical {
    font-size: 2.4rem;
  }
  .object-inner {
    align-items: flex-start;
  }
  .img1 {
    width: 41vw;
    height: 41vw;
    left: 4%;
    bottom: 7%;
  }
  .img2 {
    width: 34vw;
    height: 34vw;
    right: 3%;
    bottom: 9%;
  }
  .img3 {
    bottom: 4%;
    right: 18%;
    width: 25vw;
    height: 25vw;
  }
  span.gr {
    font-size: 1.8rem;
  }
  .lead-txt {
    line-height: 1.5;
  }
}
@media screen and (max-width: 500px) {
  section.home-section02 {
    padding: clamp(80px, 15vw, 160px) 0 clamp(240px, 30vw, 240px);
  }
}
/*========<!-- home-section03 -->========*/
/*========<!-- home-section04 -->========*/
@media screen and (max-width: 600px) {
  section.home-section04 {
    padding: clamp(80px, 15vw, 160px) 0 clamp(240px + 280px, 15vw + 280px, 240px + 280px);
    border-radius: 100px 100px 0 0;
  }
  .home .contact-band {
    height: 800px;
    margin-top: -400px;
  }
  .home .contact-band-tel-block.flex {
    flex-direction: column;
  }
  .home .contact-band-tel-box {
    width: 100%;
    padding: 1em;
  }
  .home .contact-band-title {
    font-size: 2.4rem;
  }
  .home .cf-cb-head.cf-cb-head {
    font-size: 1.8rem;
  }
  .home .contact-band-inner .cf-cb-txt, .flex.cf-tel-number {
    font-size: 1.6rem;
  }
  .home .contact-band-tel-box:not(:last-of-type) {
    border-bottom: 1px solid #ffffff;
  }
  .home .contact-band-tel-box:not(:last-child)::after {
    content: none;
  }
}
/*========<!-- home-section05 -->========*/
@media screen and (max-width: 600px) {
  .contact-band {
    background-attachment: scroll;
  }
}
/*========================================================================================

ABOUT

=========================================================================================*/
@media screen and (max-width: 820px) {
  .title01 {
    margin-bottom: 2em;
  }
  .title06 {
    font-size: 2.4rem;
  }
  .col-22 p {
    font-weight: 500;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 600px) {
  .width70.facility-img {
    width: 90%;
  }
  .facility-img img {
    border-radius: 40px;
  }
  .col-22 {
    width: 45%;
  }
  .title06 {
    font-size: 2rem;
  }
  .flex.service-list {
    justify-content: center;
    row-gap: 3em;
  }
  .col-30 {
    margin-bottom: 0px;
  }
  .about-section02 .flex {
    flex-direction: column;
    row-gap: 15vw;
  }
  .about-section02 .column-1 {
    border-bottom: 1px solid #00723f !important;
  }
  .facility-content:nth-of-type(3) ul.service-list:after {
    content: "";
    display: block;
    width: 45%;
  }
}
/*========================================================================================

SERVICE

=========================================================================================*/
@media screen and (max-width: 600px) {
  .service-section table.tablepress tbody .row-1 td.column-1 {
    border-bottom: 1px solid #00723f;
  }
  .com-flow02-txt.com-flow02-txt {
    font-weight: 500;
  }
}
/*========================================================================================

COTACT

=========================================================================================*/
@media screen and (max-width: 600px) {
  table.contact-form01 th {
    border-bottom: none;
  }
  table.contact-form01 tbody tr:first-child td {
    border-top: none;
  }
  .wpcf7-list-item {
    width: 100%;
    margin: 0;
  }
  .contact-form01 td {
    padding: 15px 15px;
  }
  .form-message {
    font-size: 1.8rem;
  }
}