/*
Template: businesspress
Theme Name: BusinessPress Child
*/
/* Reset CSS */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: 62.5%; /* 1rem = 10px */
    line-height: 1.5;
    -webkit-text-size-adjust: 100%; /* モバイルブラウザのフォントサイズ調整を無効化 */
}
body {
    font-family: 'Arial', sans-serif;
    font-size: 1.6rem;
    line-height: 1.6;
    color: #333;
    background-color: #fff;
    text-rendering: optimizeLegibility; /* テキストのレンダリングを最適化 */
}

h1, h2, h3, h4, h5, h6 {
    font-weight: bold;
    line-height: 1.2;
    margin: 0;
}
h1 {
    font-size: 2.8rem;
}
h2 {
    font-size: 2.4rem;
}
h3 {
    font-size: 2rem;
}
h4 {
    font-size: 1.8rem;
}
h5 {
    font-size: 1.6rem;
}
h6 {
    font-size: 1.4rem;
}
p {
    margin-bottom: 1.6rem;
}
ul, ol {
    margin-left: 2rem;
    margin-bottom: 1.6rem;
    list-style-type: none;
}
li {
    margin-bottom: 0.8rem;
}
a {
    text-decoration: none;
    color: #0073e6;
    cursor: pointer;
}
a:hover {
    text-decoration: underline;
}
table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.6rem;
}
th, td {
    padding: 1rem;
    text-align: left;
    border: 1px solid #ddd;
}
th {
    background-color: #f2f2f2;
    font-weight: bold;
}
/* フォーム要素 */
input, textarea, select, button {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    margin: 0;
}
button {
    cursor: pointer;
    border: none;
    /* background-color: #0073e6; */
    color: #fff;
    padding: 0.8rem 1.6rem;
    border-radius: 4px;
}
button:hover {
    background-color: #005bb5;
}
img {
    max-width: 100%;
    height: auto;
    display: block;
}
blockquote {
    margin-left: 2rem;
    font-style: italic;
    color: #555;
}
hr {
    border: none;
    border-top: 1px solid #ddd;
    margin: 2rem 0;
}

@font-face {
    font-family: 'icomoon';
    src:  url('/fonts/icomoon.eot?r296qj');
    src:  url('/fonts/icomoon.eot?r296qj#iefix') format('embedded-opentype'),
      url('/fonts/icomoon.ttf?r296qj') format('truetype'),
      url('/fonts/icomoon.woff?r296qj') format('woff'),
      url('/fonts/icomoon.svg?r296qj#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
  }
  
  [class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
  
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  .icon-lock:before {
    content: "\e901";
  }
  .icon-envelope:before {
    content: "\e900";
  }
  

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.flex-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.flex-around {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.aligin-stretch {
  align-items: stretch;
}
.content-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.t-center {
    text-align: center;
}
.t-right {
    text-align: right;
}
.wrapper1200,.wrapper1095,.wrapper900,.wrapper850 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.recruit-box_sub {
    /* width: 100%; */
}

/* header */
.header {
    height: 80px;
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
}
.header .header-title {
    margin: 0;
}
.header .header-title .logo {
    height: 60px;
    object-fit: contain;
}
.header .gnav {
    width: 66%;
}
.header .gnav .menu {
    margin: 0;
}
.header .gnav .menu li {
    margin: 0;
}

.sec-title {
    position: relative;
    padding-left: 1rem;
}
.sec-title .en {
    display: block;
    font-family: "sweet-gothic", sans-serif;
    font-weight: 500;
    letter-spacing: -0.1em;   
    line-height: 0.95;
    margin-bottom: 2.4rem;
    margin-left: -1rem;
}

/* menu */
.menu {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 1;
    top: 0;
    right: 0;
    background-color: #333;
    overflow-x: hidden;
    transition: 0.5s;
    padding-top: 60px;
}
.menu ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
}
.menu li {
    padding: 8px 8px;
}
.menu a {
    text-decoration: none;
    color: black;
    display: block;
    transition: 0.3s;
}
.menu a:hover {
    color: #818181;
}
.menu .closebtn {
    position: absolute;
    top: 0;
    right: 25px;
    font-size: 2rem;
    margin-left: 50px;
}
.openbtn {
    font-size: 2rem;
    cursor: pointer;
    background-color: #333;
    color: #fdfdfd;
    padding: 10px 15px;
    border: none;
    display: none;
    border-radius: 50%;
}
.hamburger span {
    display: block;
    width: 24px;
    height: 3px;
    margin: 6px 0;
    background-color: #fdfdfd;
}
@media screen and (max-width: 834px) {
    .openbtn {
        display: block;
    }
    .menu ul {
        flex-direction: column;
        display: none;
    }
    .menu.open ul {
        display: block;
        padding: 2rem;
    }
    .menu a {
        color: #fdfdfd;
    }
    .header .gnav {
        width: auto;
    }
}
@media screen and (min-width: 835px) {
    .menu {
        width: auto;
        position: static;
        height: auto;
        background-color: transparent;
        padding-top: 0;
    }
    .menu ul {
        flex-direction: row;
        display: flex;
    }
    .menu .closebtn, .openbtn {
        display: none;
    }
}


/* footer */
footer {
    padding: 5rem 0 2rem;
    background-color: #666669;
    color: #fff;
}
.footer-content {
    margin-bottom: 3%;
}
.footer-content h3 {
    color: #fff;
}
.footer-content a {
    color: #fff;
}
footer .copyright p {
    margin-bottom: 0;
}
footer .left-box,
footer .center-box,
footer .right-box {
    border-bottom: 5%;
}
.footer-content .banner_area img {
    display: block;
    max-width: 300px;
    margin-bottom: 1rem;
}
.form_btn {
    display: inline-block;
    background-color: #fff;
    padding: 10px 20px;
    text-align: center;
    font-size: 1.6rem;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.form_btn a {
    text-decoration: none;
    color: #666669; /* テキストの色 */
    display: flex;
    align-items: center;
    gap: 8px; /* アイコンとテキストの間隔 */
}
.form_btn .icon {
    font-size: 20px; /* アイコンのサイズ */
}
.form_btn:hover {
    background-color: #ccc; /* ホバー時の背景色 */
    color: #fff; /* ホバー時のテキスト色 */
}  
.form_btn:hover a {
    color: #fff;
}

.member_btn {
    display: inline-flex; /* フレックスボックスで横並びにする */
    align-items: center; /* アイコンとテキストを縦方向で中央揃え */
    background-color: #222222; /* 背景色 */
    color: #ffffff; /* 文字色 */
    padding: 1rem 3rem; /* 内側の余白 */
    font-size: 1.6rem; /* フォントサイズ */
    text-decoration: none; /* 下線を削除 */
    border-radius: 30px; /* 角を丸くする */
    transition: background-color 0.3s ease, color 0.3s ease; /* ホバーアニメーション */
    gap: 8px; /* アイコンとテキストの間隔 */
    margin: 2rem auto;
}
.member_btn .icon {
    font-size: 20px; /* アイコンのサイズ */
}
.member_btn:hover {
    text-decoration: none;
    background-color: #ffffff; /* ホバー時の背景色 */
    color: #222222; /* ホバー時の文字色 */
}
.member_btn:hover .icon {
    color: #222222; /* アイコンのホバー時の色 */
}

/* main visual */
.mv {
    position: relative;
}
.mv::before {
    position: absolute;
    top:  10%;
    left: 32%;
    transform: translate(-32%,0);
    content: "";
    background-image: url("/images/top-quote_center.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 40%;
    height: 100%;
}
.mv::after {
    position: absolute;
    top: 10%;
    right: 3%;
    content: "";
    background-image: url("/images/top-quote_right.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 30%;
    height: 100%;
}

/* top news */
.news .sec-title {
    color: #2530AF;
}
.news .sec-title .en {
    color: #000;
}
.news .article-list {
    margin-left: 0;
    margin-top: 3rem;
    margin-bottom: 3rem;
    padding: 20px 15px;
    border-top: 1px solid #707070;
}
.news .article-list:last-of-type {
    border-bottom: 1px solid #707070;
}
.news .article-meta {
    margin-bottom: 2rem;
}
.news .article-meta .date {
    font-size: 1.4rem;
}
.news .article-meta .category {
    font-size: 1.4rem;
    background-color: #969696;
    color: #fff;
    text-align: center;
    margin-left: 2rem;
    padding: 3px 7px;
}

/* top Activity */
.top_active {
    background-image: url("/images/bg_act.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}
.top_active .sec-title {
    color: #000;
}
.top_active .sec-title .en {
    color: #ED7628;
}
.top_active .active-box {
    width: 100%;
    margin-bottom: 6rem;
}
.top_active .active-box p {
    margin-bottom: 5rem;
}
.top_active .flex-item {
    margin-bottom: 3rem;
}
.top_active .flex-item .item-img {
    margin-bottom: 2rem;
}
.top_active .flex-item .item-title {
    text-align: center;
}
.top_active .active-box .sec-title {
    margin-bottom: 5rem;
}
.top_active .active-box .more_btn {
}

/* top recruit */
.top_recruit {
    margin-top: -5%;
}
.recruit-box_under {
    background-color: #CBE027;
    border-radius: 0 0 50px 50px;
}
.recruit-box_sub .flex-item {
    margin-bottom: 5rem;
}
.recruit-box_sub .item-img {
    margin-bottom: 2rem;
}
.recruit-box_sub .item-title {
    color: #fff;
    text-align: right;
}
.recruit-box_upper {
    background-image: url("/images/bg_recruit.png");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50px 50px 0 0;
}
.top_recruit .sec-title {
    color: #E86310;
}
.top_recruit .sec-title .en {
    color: #fff;
}
.top_recruit .sec-title {
    margin-bottom: 5rem;
}

.recruit-box {
    width: 100%;
}
.recruit-box .recruit-img-box {
    position: relative;
}
.recruit-box .recruit-img-box::before {
    position: absolute;
    top: -16rem;
    right: -5rem;
    content: url("/images/hukudashi.svg");
}
.top_recruit .recruit-box .left-box p {
    line-height: 2.5;
}
.recruit-box_upper .item-title h3 {
    color: #fff;
}
.recruit-box_under .left-box {
    margin-top: 10rem;
}

/* top about us */
.top_about {
    width: 95%;
    /* padding-top: 3%;
    padding-bottom: 3%; */
    margin-top: 3%;
    margin-bottom: 3%;
    margin-left: auto;
    margin-right: auto;
}
.top_about .top_about_bg {
    padding-top: 12%;
    padding-bottom: 15%;
    background-image: url("/images/bg_about.png");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 15px;
}
.top_about .sec-title {
    color: #222;
}
.top_about .sec-title .en {
    color: #EF6565;
}
.top_about .sec-title {
    margin-bottom: 5rem;
}
.top_about .about-container {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
}
.top_about .title-box {
    max-width: 90%;
    margin: auto;
    text-align: center;
}
.top_about .flex-item .item-img {
    margin-bottom: 3rem;
}
.top_about .flex-item .item-title {
    color: #222;
    text-align: center;
}

/* top 7branch */
.top_branch {
    background-image: url("/images/bg_7branch.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
}
.top_branch .sec-title {
    color: #E86ADE;
}
.top_branch .sec-title .en {
    color: #fff;
}
.top_branch .sec-title {
    margin-bottom: 5rem;
}

/* top member */
.top_member {
    background-color: #599B96;
    color: #fff;
}

.more_btn {
    display: inline-block;
    background-color: #222;
    color: #fff;
    font-size: 1.6rem;
    text-align: center;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 28px;
    transition: background-color 0.3s ease;
  }
  
  /* ホバー効果 */
  .more_btn:hover {
    text-decoration: none;
    background-color: #444;
  }


/* 固定ページ */
#primary .page-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 3%;
    padding-bottom: 5%;
}
#primary .page-wrapper h3 {
    margin-top: 1rem;
    margin-bottom: 2rem;
}
#primary .page-wrapper p {
    margin-bottom: 1rem;
}
.content-area {
    margin-bottom: 0;
}
.hentry {
    margin-bottom: 0;
}
.page-container {
    margin-left: auto;
    margin-right: auto;
    max-width: 720px;
    padding-left: 20px;
    padding-right: 20px;
}
#main .page-sec-title {
    margin-top: 3rem;
    margin-bottom: 5rem;
    padding-top: 3rem;
}
.page-header-area {

}
.page-header-image {

}
.page-header-title {

}
.page-header-area .en {
    display: block;
    font-family: "sweet-gothic", sans-serif;
    font-weight: 700;
    letter-spacing: -0.1em;   
    line-height: 0.95;
}

/* recruit searching */
.page-recruit {
    background-color: #E0E6E8;
}
.rs-sec-1,.rs-sec-2,.rs-sec-3,.rs-sec-4 {
    padding-top: 15%;
    padding-bottom: 10%;
    background: repeating-linear-gradient(to bottom, #fff 0%, #fff 50%, #E0E6E8 50%, #E0E6E8 100%);
}
.rs-sec-1 h2,.rs-sec-2 h2,.rs-sec-3 h2,.rs-sec-4 h2 {
    position: relative;
    font-size: 4.8rem;
    margin-bottom: 5rem;
}
.rs-sec-1 h2::before {
    position: absolute;
    top: -13rem;
    left: 0;
    content: '01';
    font-size: 125px;
    color: #CBE027;
}
.rs-sec-2 h2::before {
    position: absolute;
    top: -13rem;
    left: 0;
    content: '02';
    font-size: 125px;
    color: #CBE027;
}
.rs-sec-3 h2::before {
    position: absolute;
    top: -13rem;
    left: 0;
    content: '03';
    font-size: 125px;
    color: #CBE027;
}
.rs-sec-4 h2::before {
    position: absolute;
    top: -13rem;
    left: 0;
    content: '04';
    font-size: 125px;
    color: #CBE027;
}
.recruit .rs-img-1 {
    margin-right: 0;
}
.rs1-img-1 img {
    display: block;
    margin-left: auto;
    margin-bottom: 5rem;
    text-align: right;
    border-radius: 0 0 50px 0;
}
.rs1-img-2 img {
    max-width: 350px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5rem;
    border-radius: 0 50px 0 0;
}
.rs-1-bottom {
    margin-bottom: 5rem;
}
.rs2-img-1 img {
    max-width: 540px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5rem;
    border-radius: 50px 0 0 0;
}
.rs2-img-2 img {
    margin-bottom: 5rem;
    border-radius: 0 0 0 50px;
}
.rs3-img-1 img {
    margin-bottom: 5rem;
    border-radius: 0 50px 0 0;
}
.rs3-img-2 img {
    margin-bottom: 5rem;
    border-radius: 50px 0 0 0;
}
.rs4-img-1 img {
    margin-bottom: 5rem;
    border-radius: 0 0 50px 0;
}
.rs4-img-2 img {
    margin-bottom: 5rem;
    border-radius: 50px 0 0 0;
}

/* about us */
.aboutus {
}
.greeting h2,.organogram_column h2,.history h2,.officer_column h2 {
    display: inline-block;
    padding: 1.5rem 2rem;
    border: 1px solid #707070;
    text-align: center;
    font-weight: normal;
    background-color: #fff;
}
.page-aboutus {
    background-color: #FFFBE0;
}
.image-wrapper {
    position: relative;
    display: inline-block;
}
.name-area {
    position: absolute;
    bottom: 2rem;
    right: 0;
    background-color: #fff;
    font-size: 2.4rem;
    padding: 1.5rem 2rem 1rem 3rem;
    border-radius: 30px 0 0 0;
}
.name-area .designation {
    font-size: 1.4rem;
    padding-right: 2rem;
}
.organogram_column {
    background-color: #FFFBE0;
    width: 90%;
    margin: 5% auto;
    padding-top: 10%;
    padding-bottom: 10%;
    padding-left: 5%;
    padding-right: 5%;
    border-radius: 30px;
}
.history {
    padding-top: 10%;
    padding-bottom: 10%;
}
.history-table table th,
.history-table table td {
    padding: 2rem;
}
.history-table table td:first-of-type {
    border-left: none;
    border-right: none;
    border-top: 2px solid #707070;
    border-bottom: 2px solid #707070;
}
.history-table table td:last-of-type {
    border-left: none;
    border-right: none;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.history-table table td:nth-of-type(1) {
    width: 30%;
    max-width: 240px;
}
.history-table table td:nth-of-type(2) {
    width: auto;
}
.officer_column {
    padding-left: 5%;
    padding-right: 5%;
    background-color: #FFFBE0;
}
.officer_column .officer_content {
    width: 90%;
    margin: 5% auto;
    padding-top: 10%;
    padding-bottom: 10%;
    background-color: #fff;
    border-radius: 30px;
}
.officer_column .officer_content thead,
.branch_column .branch_content thead {
    border: none;
}
.officer_column .officer_content th,
.branch_column .branch_content th {
    background-color: #F5F5F5;
    border-left: none;
    border-right: 1px solid #ccc;
    border-top: none;
    border-bottom: none;
    font-weight: normal;
    padding: 2rem;
}
.officer_column .officer_content th:last-of-type,
.officer_column .officer_content td:last-of-type,
.branch_column .branch_content th:last-of-type,
.branch_column .branch_content td:last-of-type {
    border-right: none;
}
.officer_column .officer_content td,
.branch_column .branch_content td {
    border-left: none;
    border-right: 1px solid #ccc;
    border-top: none;
    border-bottom: 1px solid #ccc;
    padding: 2rem;
    background-color: #fff;
    min-width: 120px;
}
.officer_column .officer_content th:first-of-type,
.officer_column .officer_content td:first-of-type,
.branch_column .branch_content td:first-of-type,
.branch_column .branch_content td:first-of-type {
    min-width: 80px;
}
.officer_column .officer_content tbody tr:last-of-type td,
.branch_column .branch_content tbody tr:last-of-type td {
    border-bottom: none;
}

/* 7branch */
.branch {
    position: relative;
    background-color: #EEF7F1;
    z-index: -5;
}
.branch .entry-content {
    padding-top: 10%;
}
.branch .branch_column {
    margin-bottom: 5rem;
    padding: 5%;
    background-color: #fff;
    border-radius: 30px;
}
.branch_column .branch_content .wp-block-table {
    margin-bottom: 5rem;
}
.branch_column .branch_content .wp-block-table:last-of-type {
    margin-bottom: 0;
}
.branch_column .branch_content h2 {
    margin-top: 3rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #189321;
}
.branch_column .branch_content h3 {
    margin-top: 2rem;
    margin-bottom: 1rem;
}

/* 会員専用ページ */

#main .members_column {
    margin-top: 3rem;
    margin-bottom: 5rem;
}
#main .members_column .wp-block-file {
    font-size: 1.6rem;
    margin-bottom: 1rem;
}
#main .wp-block-file__button {
    background: #32373c;
    color: #fff;
    padding: .5rem 1rem;
    text-decoration: none;
}
#main .wp-block-button__link {
    background-color: #599B96;
}

/* 投稿 */
.single {
    padding-top: 3rem;
}
.single .content-area {
    padding: 3%;
}
.single .sidebar-area {
    padding: 3%;
}

/* Link */
#main .banner_column {
    margin-top: 3rem;
    margin-bottom: 5rem;
}
#main .banner_column h2 {
    margin-bottom: 3rem;
}
#main .banner_column .flex-item {
    width: 30%;
    margin-bottom: 3rem;
}
#main .banner_column .flex-item img {
    width: 100%;
}



@media (max-width: 1023px) {
    #top .sec {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
    #top .sec-title .en {
        font-size: 3.2rem;
    }
    .top_active {
        background-position: right bottom;
        background-size: cover;
    }
    .recruit-box_upper {
        background-position: right top;
        background-size: cover;
    }
    .top_recruit .recruit-box_upper .recruit-box_sub .flex-item .item-img,
    .top_recruit .recruit-box_upper .recruit-box_sub .flex-item .item-title {
        width: 100%;
    }
    .top_active .active-box .flex-item .item-img,
    .top_recruit .recruit-box_upper .recruit-box_sub .flex-item .item-img,
    .top_about .flex-item .item-img {
        width: 100%;
        /* aspect-ratio: 1 / 1; 正方形を維持 */
        aspect-ratio: 4 / 3;      /* 幅と高さの比率を4:3に設定 */
        overflow: hidden;
    }
    .top_active .active-box .flex-item .item-img img,
    .top_recruit .recruit-box_upper .recruit-box_sub .flex-item .item-img img,
    .top_about .flex-item .item-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .top_recruit .recruit-box_under .left-box,
    .top_recruit .recruit-box_under .recruit-img-box,
    .top_recruit .recruit-box_under .right-box {
        width: 100%;
    }
    .recruit-box .recruit-img-box::before {
        top: -16rem;
        left: 60%;
        transform: translate(-60%,0);
    }
    #aboutus .entry-content,#branch .entry-content {

    }
    .page-header-area {
        position: relative;
        margin-bottom: 3rem;
        padding-top: 15%;
        padding-left: 5%;
        padding-bottom: 10%;
        z-index: -2;
    }
    .page-header-title {
        font-size: 2rem;
    }
    .page-header-area .en {
        font-size: 64px;
    }
    .page-header-image {
        position: absolute;
        top: 0;
        right: 0;
        width: 82%;
        z-index: -1;
    }
    .page-header-image img {
        border-radius: 0 0 0 100px;
    }
}

@media (max-width: 834px) {
    .top_branch .left-box,
    .top_branch .right-box {
        width: 100%;
    }
    footer .left-box, footer .center-box, footer .right-box {
        width: 100%;
        margin-bottom: 3rem;
    }
    .news .right {
        width: 100%;
    }
    .recruit-box_upper {
        padding-top: 5rem;
        border-radius: 30px 30px 0 0;
    }
    .recruit-box_upper .item-title h3 {
        text-align: center;
      }
    .recruit-box_under {
        border-radius: 0 0 30px 30px;
    }
    .recruit-box_under .left-box {
        margin-top: 5rem;
      }
    .top_about .about-container {
        max-width: 90%;
    }
    .top_about .about-container .flex-item {
        margin-bottom: 6rem;
    }
    .top_about .about-container .flex-item:last-of-type {
        margin-bottom: 0;
    }
    .top_about .about-container .flex-item .item-title h3 {
        margin-top: 0;
        margin-bottom: 0;
    }
    .rs-sec-1, .rs-sec-2, .rs-sec-3, .rs-sec-4 {
        padding-top: 20%;
        padding-bottom: 10%;
    }
    .rs-sec-1 h2,.rs-sec-2 h2,.rs-sec-3 h2,.rs-sec-4 h2 {
        font-size: 2.4rem;
        margin-bottom: 5rem;
    }
    .rs-sec-1 h2::before {
        top: -8rem;
        left: 0;
        font-size: 6rem;
    }
    .rs-sec-2 h2::before {
        top: -8rem;
        left: 0;
        font-size: 6rem;
    }
    .rs-sec-3 h2::before {
        top: -8rem;
        left: 0;
        font-size: 6rem;
    }
    .rs-sec-4 h2::before {
        top: -8rem;
        left: 0;
        font-size: 6rem;
    }
    .recruit-img-box {
        margin-top: 15rem;
    }
    .rs-sec-1,.rs-sec-2,.rs-sec-3,.rs-sec-4 {
        padding-left: 5%;
        padding-right: 5%;
    }
    .single .content-area {
        width: 100%;
    }
    .single .sidebar-area {
        width: 100%;
    }
}

@media (max-width: 428px) {
    .page-header-area {
        margin-bottom: 3rem;
        padding-top: 12%;
        padding-left: 5%;
        padding-bottom: 5%;
    }
    .page-header-area .en {
        font-size: 4.8rem;
    }
    .officer_column .officer_content td,
    .branch_column .branch_content td {
        padding: 1.5rem 1rem;
    }
    #main .banner_column .flex-item {
        width: 100%;
    }
}


/* ブレークポイント：タブレット以上 */
@media (min-width: 835px) {
    section {
        /* padding: 6rem 4rem;
        margin-bottom: 6rem; */
    }
    .top_active .active-box .flex-item {
        width: 30%;
    }
    .recruit-box_upper {
        min-height: 450px;
    }
    .top_recruit .recruit-box_upper .recruit-box_sub .flex-item {
        width: 33%;   
    }
    .recruit-box_under .left-box {
        width: 35%;
    }
    .recruit-box .recruit-img-box {
        width: 25%;
        padding-left: 3%;
        padding-right: 2%;
    }
    .recruit-box_under .right-box {
        width: 40%;
    }
    .top_about .flex-item {
        width: 30%;
    }
    .top_branch .left-box {
        width: 50%;
    }
    .top_branch .right-box {
        width: 50%;
    }
    .rs-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
}

/* ブレークポイント：デスクトップ以上 */
@media (min-width: 1024px) {
    .wrapper1200 {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
    main .wrapper1200 {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
    .wrapper1095 {
        max-width: 1095px;
        margin-left: auto;
        margin-right: auto;
    }
    #main .wrapper900 {
        max-width: 900px;
        margin-left: auto;
        margin-right: auto;
    }
    .wrapper850 {
        max-width: 850px;
        margin-left: auto;
        margin-right: auto;
    }
    section {
        /* padding: 8rem 6rem;
        margin-bottom: 8rem; */
    }
    .header .logo h1 {
        font-size: 2rem;
        font-weight: 500;
    }
    footer .center-box,
    footer .right-box {
        width: 31%;
    }
    footer .left-box {
        width: 35%;
        padding-left: 3%;
    }
    footer .center-box {
        width: 40%;
        padding-left: 5%;
        padding-right: 5%;
        border-left: 1px solid #fff;
        border-right: 1px solid #fff;
    }
    footer .right-box {
        width: 25%;
        padding-left: 3%;
    }
    .mv::before {
        top: 15%;
        left: 48%;
        transform: translate(-48%,0);
        width: 30%;
        height: 100%;
    }
    .mv::after {
        top: 15%;
        right: 5%;
        width: 25%;
        height: 100%;
    }
    #top .sec {
        padding-top: 15rem;
        padding-bottom: 15rem;
    }
    .recruit-box_upper {
        min-height: 750px;
    }
    .recruit-box_sub {
        position: relative;
        flex-direction: column;
    }    
    .top_recruit .recruit-box .recruit-box_sub .item1 {
        position: relative;
        top: -18%;
        left: 50%;
        transform: translate(-50%,0);
        width: 30%;
    }
    .top_recruit .recruit-box .recruit-box_sub .item2 {
        position: absolute;
        top: 35%;
        left: 8%;
        width: 21%;
    }
    .top_recruit .recruit-box .recruit-box_sub .item3 {
        position: absolute;
        left: 0;
        bottom: -25%;
        width: 35%;
    }
    .top_about .about-container .flex-item {
        width: 30%;
    }
    .sec-title .en {
        font-size: 7rem;
    }
    .sec-title {
        font-size: 1.8rem;
    }
    .news .flex .left {
        width: 40%;
    }
    .news .flex .right {
        width: 50%;
    }
    .page-header-area {
        position: relative;
        padding-top: 15%;
        padding-left: 5%;
        padding-bottom: 10%;
        z-index: -2;
    }
    .page-header-title {
        font-size: 2.8rem;
    }
    .page-header-area .en {
        font-size: 122px;
    }
    .page-header-image {
        position: absolute;
        top: 0;
        right: 0;
        z-index: -1;
    }
    .page-header-image img {
        border-radius: 0 0 0 100px;
    }
    .single .content-area {
        width: 55%;
    }
    .single .sidebar-area {
        width: 25%;
    }
}