@charset "UTF-8";
@media screen and (max-width: 1024px) {
  p,
  a,
  li,
  dt,
  dd,
  time,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  th,
  td,
  span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1400px) {
  .width1400 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1200px) {
  .width1200 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1000px) {
  .width1000 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 900px) {
  .width900 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 700px) {
  .width700 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1024px) {
  section {
    padding: 60px 0;
  }
}
@media screen and (max-width: 820px) {
  .col-25,
  .col-26,
  .col-27,
  .col-28,
  .col-29,
  .col-30,
  .col-31,
  .col-32,
  .col-33,
  .col-34,
  .col-35,
  .col-36,
  .col-37,
  .col-38,
  .col-39,
  .col-40,
  .col-41,
  .col-42,
  .col-43,
  .col-44,
  .col-45,
  .col-46,
  .col-47,
  .col-48,
  .col-49,
  .col-50,
  .col-51,
  .col-52,
  .col-53,
  .col-54,
  .col-55,
  .col-56,
  .col-57,
  .col-58,
  .col-59,
  .col-60,
  .col-61,
  .col-62,
  .col-63,
  .col-64,
  .col-65,
  .col-66,
  .col-67,
  .col-68,
  .col-69,
  .col-70,
  .col-71,
  .col-72,
  .col-73,
  .col-74,
  .col-75 {
    width: 100%;
    margin-bottom: 40px;
  }
  .flex-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .sp-flex-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
  }
  section {
    padding: 60px 0;
  }
  .mt10 {
    margin-top: 5px;
  }
  .mt20 {
    margin-top: 10px;
  }
  .mt30 {
    margin-top: 15px;
  }
  .mt40 {
    margin-top: 20px;
  }
  .mt50 {
    margin-top: 25px;
  }
  .mt60 {
    margin-top: 30px;
  }
  .mt70 {
    margin-top: 35px;
  }
  .mt80 {
    margin-top: 40px;
  }
  .mt90 {
    margin-top: 45px;
  }
  .mt100 {
    margin-top: 50px;
  }
  .mb10 {
    margin-bottom: 5px;
  }
  .mb20 {
    margin-bottom: 10px;
  }
  .mb30 {
    margin-bottom: 15px;
  }
  .mb40 {
    margin-bottom: 20px;
  }
  .mb50 {
    margin-bottom: 25px;
  }
  .mb60 {
    margin-bottom: 30px;
  }
  .mb70 {
    margin-bottom: 35px;
  }
  .mb80 {
    margin-bottom: 40px;
  }
  .mb90 {
    margin-bottom: 45px;
  }
  .mb100 {
    margin-bottom: 50px;
  }
  .pt0 {
    padding-top: 0;
  }
  .pt10 {
    padding-top: 5px;
  }
  .pt20 {
    padding-top: 10px;
  }
  .pt30 {
    padding-top: 15px;
  }
  .pt40 {
    padding-top: 20px;
  }
  .pt50 {
    padding-top: 25px;
  }
  .pt60 {
    padding-top: 30px;
  }
  .pt70 {
    padding-top: 35px;
  }
  .pt80 {
    padding-top: 40px;
  }
  .pt90 {
    padding-top: 45px;
  }
  .pt100 {
    padding-top: 50px;
  }
  .pb0 {
    padding-bottom: 0;
  }
  .pb10 {
    padding-bottom: 5px;
  }
  .pb20 {
    padding-bottom: 10px;
  }
  .pb30 {
    padding-bottom: 15px;
  }
  .pb40 {
    padding-bottom: 20px;
  }
  .pb50 {
    padding-bottom: 25px;
  }
  .pb60 {
    padding-bottom: 30px;
  }
  .pb70 {
    padding-bottom: 35px;
  }
  .pb80 {
    padding-bottom: 40px;
  }
  .pb90 {
    padding-bottom: 45px;
  }
  .pb100 {
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 600px) {
  section {
    padding: 40px 0;
  }
}
@media screen and (max-width: 1024px) {
  .title01 {
    font-size: 2.4rem;
    margin-bottom: 30px;
  }
  .title02 {
    font-size: 1.6rem;
  }
  .title03 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 820px) {
  .menu-a-txt {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 600px) {
  p,
  a,
  li,
  dt,
  dd,
  th,
  td,
  span {
    font-size: 1.4rem;
  }
  .title01 {
    font-size: 2.2rem;
  }
  .title01::before {
    width: 20px;
    height: 3px;
  }
  .btn-arrow {
    top: 17px;
  }
  .pcnone600 {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .link-over:hover {
    background-color: rgba(255, 255, 255, 0);
  }
  .o-hover img:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 1400px) {
  .header-inner.flex,
  .header-box01,
  .header-box02 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1200px) {
  .header-menu > li a {
    font-size: 1.4rem;
    padding: 0 20px;
  }
}
@media screen and (max-width: 1024px) {
  .header-content,
  .header-content02 {
    padding: 0;
  }
  .header-inner,
  .header-inner02,
  .header-content02 {
    display: none;
  }
  .g-sub-nav {
    display: none;
  }
  .header-box02 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1024px) {
  #hamburger {
    display: block;
  }
  .sp-header {
    display: block;
    width: 100%;
    padding: 5px 0;
    height: 50px;
  }
  .sp-header02 {
    display: block;
    width: 100%;
    padding: 15px 0;
  }
  .logo {
    max-width: 150px;
    margin: auto;
  }
  .logo img {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  #page-top {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 2;
  }
  #page-top img {
    max-height: 40px;
    width: auto;
  }
}
@media screen and (max-width: 1024px) {
  #breadcrumbs {
    padding-right: 0;
    overflow-x: auto;
    word-break: keep-all;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  #breadcrumbs ul {
    display: block;
    padding-right: 15px;
  }
}
@media screen and (max-width: 600px) {
  #breadcrumbs {
    margin-bottom: 20px;
    padding-right: 0;
  }
  #breadcrumbs ul li a,
  #breadcrumbs ul li {
    font-size: 1.2rem;
  }
  #breadcrumbs ul li {
    padding-left: 3px;
  }
  #breadcrumbs ul li:before {
    font-size: 1.2rem;
    padding-right: 3px;
  }
}
@media screen and (max-width: 1024px) {
  .page-nav > div {
    display: block;
    padding: 10px;
  }
  .page-nav div img {
    max-width: 100%;
    height: 17vw;
    width: 100%;
    margin-bottom: 10px;
  }
  .page-nav div span {
    text-align: center;
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  .tab-panel-b .tab-group {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0;
  }
  .tab-panel-b .tab {
    width: 30%;
    font-size: 1.4rem;
  }
  .tab-panel-b .panel-inner {
    padding: 20px 20px 5px;
    border-radius: 20px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 1024px) {
  .tablepress-table-name {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 600px) {
  .table-wrap01 .tablepress tbody td.column-1 {
    width: 100%;
    display: block;
    text-align: center;
  }
  .table-wrap01 .tablepress tbody td.column-2 {
    width: 100%;
    display: block;
    text-align: center;
  }
  .table-wrap02.scroll600 {
    overflow-x: scroll;
  }
  .table-wrap02.scroll600 table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
  }
}
@media screen and (max-width: 1024px) {
  .sub-header {
    height: 35vw;
  }
  .sub-header-txt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 450px) {
  .sub-header {
    height: 50vw;
  }
  .sub-header-txt {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 1024px) {
  .news-list01 li .news-cat a,
  .news-list02 li .news-cat a,
  .news-list03 li .news-cat a {
    font-size: 1rem;
    padding: 4px 8px;
  }
  .news-list03 li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #d1dee8;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .news-list03 li .news-img {
    width: 200px;
    margin-bottom: 0;
  }
  .news-list03 li .news-content {
    width: calc(100% - 220px);
  }
  .news-list03 li .news-img img {
    height: 150px;
  }
  .news-list03 li:last-of-type {
    border-bottom: none;
  }
}
@media screen and (max-width: 600px) {
  .news-list02 li .news-img,
  .news-list03 li .news-img {
    width: 140px;
  }
  .news-list02 li .news-img img,
  .news-list03 li .news-img img {
    height: 20vw;
    min-height: 100px;
  }
  .news-list02 li .news-content,
  .news-list03 li .news-content {
    width: calc(100% - 160px);
  }
}
@media screen and (max-width: 450px) {
  .news-list02 li .news-txt a,
  .news-list03 li .news-txt a {
    font-size: 1.2rem;
    letter-spacing: 0;
    line-height: 1.5em;
  }
  .news-list02 li .date-cat.flex,
  .news-list03 li .date-cat.flex {
    margin-bottom: 5px;
  }
  .news-list02 li .date,
  .news-list03 li .date {
    font-size: 1.2rem;
    margin: 0 0 10px;
    width: 100%;
  }
  .news-cat {
    display: block;
  }
}
@media screen and (max-width: 820px) {
  .tab-panel-a .tab-group {
    margin-bottom: 20px;
  }
  .tab-panel-a .tab {
    width: 47%;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 820px) {
  .com-post-link {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .contact-band-title {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 450px) {
  .cf-tel-number {
    font-size: 1.8rem;
    margin-right: 5px;
  }
  .contact-band-tel-icon {
    width: 25px;
    height: 25px;
    margin-right: 10px;
  }
}
@media screen and (max-width: 1400px) {
  .footer-inner {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1024px) {
  .footer {
    padding: 40px 0 15px;
  }
  .footer-logo-address,
  .footer-nav-wrap {
    width: 100%;
  }
  .footer-inner.flex {
    margin-bottom: 10px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
  }
  .footer-logo img {
    max-width: 300px;
    margin: 0 auto;
  }
  .footer-logo {
    padding-bottom: 0;
    margin-bottom: 20px;
    border-bottom: none;
  }
  .footer-address p {
    text-align: center;
  }
  .footer-menu a {
    color: #fff;
    font-size: 1.4rem;
  }
  .footer-menu .sub-menu li {
    padding-left: 0;
  }
  .footer-menu .sub-menu a {
    font-size: 1.4rem;
    padding-left: 0;
  }
  .footer-menu > li > a {
    padding-left: 0;
  }
  .sns-icon-wrap {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 600px) {
  .footer-nav.flex .left,
  .footer-nav.flex .right {
    width: 100%;
    margin: 0;
  }
  .footer-menu-title {
    font-size: 1.6rem;
  }
  .sns-icon-title p span {
    font-size: 1.2rem;
  }
  .sns-icon-wrap.flex .line {
    margin: 0 10px;
  }
  .copyright p {
    margin: 10px 0 0;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .greeting-txt {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 600px) {
  .greeting-txt {
    font-size: 1.4rem;
  }
  .btn {
    font-size: 1.4rem;
    max-width: 280px;
  }
}
@media screen and (max-width: 1024px) {
  .archive-info-wrap main {
    width: 100%;
    margin-bottom: 40px;
  }
  .sidebar {
    width: 100%;
  }
  .archive-info-title a {
    font-size: 1.6rem;
  }
  .archive-time-cat time {
    font-size: 1.6rem;
  }
  .sidebar h3 {
    font-size: 1.6rem;
  }
  .side-box li a,
  .widget_archive li a {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 820px) {
  .archive-info-wrap {
    margin-bottom: 40px;
  }
  .archive-info-txt {
    width: calc(100% - 220px);
  }
  .archive-info-title {
    line-height: 1.5em;
  }
  .archive-info-title a {
    font-size: 1.4rem;
  }
  .archive-time-cat time {
    font-size: 1.4rem;
  }
  .archive-info-cat a {
    font-size: 1rem;
    margin-right: 10px;
    padding: 4px 8px;
  }
  .archive-time-cat {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 600px) {
  .archive-info-img {
    width: 140px;
  }
  .archive-info-img img {
    height: 20vw;
    min-height: 100px;
  }
  .archive-info-txt {
    width: calc(100% - 160px);
  }
}
@media screen and (max-width: 450px) {
  .archive-info-title a {
    font-size: 1.2rem;
  }
  .archive-time-cat {
    margin-bottom: 5px;
  }
  .archive-time-cat time {
    font-size: 1.2rem;
    margin: 0 0 10px;
    width: 100%;
    line-height: 1em;
  }
}
@media screen and (max-width: 1024px) {
  .archive-info-wrap {
    margin-top: 60px;
  }
  .archive-info-list {
  padding: 40px 10px;
}
  .single-info-wrap {
    margin-bottom: 40px;
    margin-top: 60px;
  }
  .single-info-wrap main {
    width: 100%;
  }
  .single-info-title {
    font-size: 2rem;
  }
  .file-list a {
    font-size: 1.4rem;
  }
  .single-info-catch-img img {
    max-width: 400px;
    margin: 0 auto;
  }
  .single-info-article h2 {
    font-size: 18px;
    padding: 10px 15px;
  }
  .single-info-article h3 {
    font-size: 16px;
  }
}
@media screen and (max-width: 820px) {
  .gallery-list li {
    width: 32%;
  }
  .gallery-list::before {
    display: none;
  }
  .gallery-list::after {
    width: 32%;
  }
  .gallery-list a img {
    height: 22vw;
  }
}
@media screen and (max-width: 600px) {
  .single-info-title {
    letter-spacing: 0;
    font-size: 1.8rem;
  }
  .page-nav {
    margin: 40px 0;
  }
  .page-nav div img {
    height: 25vw;
  }
  .page-nav div span {
    font-size: 1.2rem;
  }
  .file-list li {
    width: 100%;
  }
}
@media screen and (max-width: 450px) {
  .single-info-title {
    font-size: 1.6rem;
  }
  .gallery-list li {
    width: 48%;
  }
  .gallery-list::after {
    display: none;
  }
  .gallery-list a img {
    height: 30vw;
  }
}
@media screen and (max-width: 1024px) {
  .recruit-feed01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .recruit-feed01 > li {
    width: 48%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .recruit-feed01 > li:nth-of-type(2) {
    margin-top: 0;
  }
  .recruit-feed01 .recruit-img {
    width: 100%;
    margin-bottom: 20px;
  }
  .recruit-feed01 .recruit-content {
    width: 100%;
    margin-bottom: auto;
  }
  .recruit-feed01 h3 {
    font-size: 1.8rem;
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 3px solid #3a3227;
  }
  .recruit-feed01 .recruit-sub.flex li {
    font-size: 1.4rem;
    margin-right: 15px;
    margin-bottom: 6px;
  }
  .recruit-feed01 .recruit-sub.flex {
    margin-bottom: 10px;
  }
  .recruit-feed01 .recruit-sub.flex span {
    font-size: 1.2rem;
  }
  .recruit-single-title {
    font-size: 1.6rem;
  }
  .recruit-single-content {
    margin: 20px 0 30px;
  }
  .job-table th,
  .job-table td {
    padding: 20px;
    font-size: 1.4rem;
  }
  .entry-btn a {
    font-size: 1.8rem;
  }
  .contents-none {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 820px) {
  .recruit-feed01 > li {
    padding: 20px;
  }
}
@media screen and (max-width: 600px) {
  .recruit-feed01 > li {
    width: 100%;
  }
  .recruit-feed01 > li {
    margin-top: 40px;
  }
  .recruit-feed01 > li:nth-of-type(2) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 450px) {
  .job-table th,
  .job-table td {
    display: block;
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 1024px) {
  .contact-form01 th,
  .contact-form01 td {
    font-size: 1.4rem;
  }
  .required {
    padding: 3px 10px;
    font-size: 1rem;
  }
  .privacy-check .wpcf7-list-item-label {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 820px) {
  .contact-form01 th,
  .contact-form01 td {
    display: block;
    width: 100%;
  }
  input[type="submit"],
  input[type="button"] {
    font-size: 1.6rem;
  }
  .wpcf7 form.invalid .wpcf7-response-output,
  .wpcf7 form.unaccepted .wpcf7-response-output {
    font-size: 1.4rem;
    border-radius: 0;
  }
  .wpcf7 form.sent .wpcf7-response-output {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 450px) {
  input[type="submit"],
  input[type="button"] {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .privacy-head {
    font-size: 1.8rem;
  }
  .privacy-head span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 820px) {
  .privacy-head {
    font-size: 1.8rem;
  }
  .privacy-head span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 600px) {
  .privacy-head {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .wsp-pages-list li {
    width: 31%;
  }
  .wsp-pages-list::before {
    display: none;
  }
  .wsp-pages-list li a {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 820px) {
  .login-section {
    padding: 30px 0 50px;
  }
  .login-form .error {
    font-size: 1.3rem;
  }
  .wsp-pages-list li {
    width: 48%;
  }
  .wsp-pages-list::before {
    width: 48%;
  }
  .login-section dt {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 450px) {
  .wsp-pages-list li a {
    font-size: 1.2rem;
    padding: 10px;
  }
}
@media screen and (max-width: 600px) {
  #wpmem_login,
  #wpmem_reg {
    font-size: 1.4rem !important;
  }
  .wpmem_msg {
    font-size: 1.2rem !important;
  }
  #logout-btn a {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .search-txt01 {
    font-size: 1.8rem;
  }
  .error-url,
  .error-url span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 600px) {
  .search-txt01 {
    font-size: 1.6rem;
  }
}
