@charset "utf-8";
/*==============================================================================
	all style
============================================================================= */
h1.head-title{
  font-size:11px;
  padding:5px;
}
.head-meta{
  background:#D6EAF8;
  color:#1B4F72;
}
body {
    overflow-x: hidden;
}

body.path-frontpage .dialog-off-canvas-main-canvas{
  overflow: hidden;
}

.inner {
    max-width: 1280px;
    margin: 0 auto;
}

/* * {
    letter-spacing: 2px;
} */

html {
    scroll-behavior: smooth;
}

img {
    width: 100%;
    height: 100%;
}

/*メインタイトル*/
@import url('https://fonts.googleapis.com/css2?family=Oswald&display=swap');


.ttl_flex h2 {
    /* font-size: 128px; */
    font-size: clamp(21px, 5vw, 68px);
    padding-left: 50px;
    font-family: "Oswald", NotoSansJP,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
}


/*リンク*/
.ttl_flex {
    display: flex;
    align-items: end;
    justify-content: space-between;
    border-bottom: solid 1px #343434;
    margin-bottom: 80px;
    padding: 0 20px 0 0;
    margin-top: 25px;
}

.ttl_flex ul {
    display: flex;
    gap: 20px;
}

.ttl_flex ul li {
    border: 1px solid #343434;
    padding: 20px 10px 20px 20px;
    border-radius: 4.6px;
    position: relative;
    display: flex;
    align-items: center;
    color: #343434;
    transition: .2s;
}

.ttl_flex ul li::after {
    content: "";
    background-image: url(/themes/custom/maiken/images/icons/yazirusi.svg);
    display: inline-block;
    width: 50px;
    height: 50px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.ttl_flex ul a {
    text-decoration: none;
}



/****************************
 ホバー
*****************************/

@media (hover: hover) {
    .ttl_flex ul li:hover {
        background-color: #343434;
        color: #fff;
    }

    .ttl_flex ul li:hover::after {
        filter: brightness(0) invert(1);
    }
}

/****************************
 レスポンシブ
*****************************/

@media (max-width: 992px) {
    .ttl_flex ul li {
        padding: 10px 0px 10px 15px;
    }

    .ttl_flex ul {
        gap: 10px;
    }

    .ttl_flex ul li a {
        font-size: 14px;
    }
}

@media (max-width: 768px) {

    .ttl_flex h2,
    .interview-wrapper h2 {
        padding-left: 20px;
    }

    .ttl_flex ul {
        padding-inline-start: 20px;
    }

    .ttl_flex {
        display: block;
        margin-bottom: 40px;
        margin-top: 35px;
    }

    .ttl_flex ul li {
        padding: 0 0 0 10px;
    }
}

@media (max-width: 550px) {
    .ttl_flex ul li {
        flex-direction: column;
        padding: 5px 10px 0px 10px;
        height: 100%;
        font-size: 14px;
    }
}


/*==============================================================================
	パンクズ style
============================================================================= */


#block-maiken-breadcrumbs {
    background-color: #fff;
    position: static;
    padding: 10px 20px;
    margin: 0px;
    /* border-radius: 9999px; */
    box-shadow: rgba(14, 63, 126, 0.06) 0px 0px 0px 1px, rgba(42, 51, 70, 0.03) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 2px 2px -1px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.03) 0px 5px 5px -2.5px, rgba(42, 51, 70, 0.03) 0px 10px 10px -5px, rgba(42, 51, 70, 0.03) 0px 24px 24px -8px;
    z-index: 1;
}

body #block-maiken-breadcrumbs ol {
    margin: 5px 0;
    display: flex;
    gap: 10px;
      overflow-x: scroll;
    scrollbar-width: none;
}

body .breadcrumb li::before {
    content: "/";
    padding-right: 5px;
}

body .breadcrumb li:first-child:before {
    content: none;
}
body .breadcrumb{
  font-size:10px;
}
body .breadcrumb a {
    color: #808b96;
    text-decoration: none;
    font-size:10px;
    white-space: nowrap;
}
body .breadcrumb-item{
  display: flex;
}

body .breadcrumb-item:last-child {
    white-space: nowrap;
}


/*==============================================================================
	login password再設定 style
============================================================================= */
/*タイトル*/
.path-user #block-maiken-primary-local-tasks ul.tabs li.is-active {
    text-align: center;
    position: relative;
    font-weight: bold;
    display: flex;
    flex-direction: column;
}

.path-user #block-maiken-primary-local-tasks ul.tabs li:last-child {
    margin-bottom: 40px;
}

.path-user #block-maiken-primary-local-tasks ul.tabs li.is-active a {
    color: #343434;
    font-size: clamp(12px, 2vw, 16px);
    text-decoration: none;
    pointer-events: none;
}

.path-user:not(.user-logged-in) #block-maiken-primary-local-tasks ul.tabs li:first-child::before {
    content: "Log\a0in";
    font-size: clamp(26px, 5vw, 36px);
    font-family: "Oswald", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
}

.path-user:not(.user-logged-in) #block-maiken-primary-local-tasks ul.tabs li:last-child::before {
    content: "Reset\a0Password";
    font-size: clamp(26px, 5vw, 36px);
    letter-spacing: 2px;
    font-family: "Oswald", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
}


.path-user #block-maiken-primary-local-tasks ul.tabs.primary li:not(.is-active) {
    display: none;
}

.path-user #block-maiken-primary-local-tasks {
    margin-top: 70px !important;
}

/*フォーム*/
.path-user #block-maiken-content .user-login-form>div.form-item,
.path-user #block-maiken-content .user-pass>div.form-item {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 auto 20px;
}

.path-user #block-maiken-content .user-login-form>div.form-item input,
.path-user #block-maiken-content .user-pass>div.form-item input {
    background-color: #F8F8F8;
    border: 1px solid #E8E8E8;
    max-width: 633px;
    width: 100%;
    height: 70px;
    border-radius: 10px;
    padding: 0 16px;
    font-size: 16px;
    box-sizing: border-box;
    margin-top: 15px;
}

.path-user form#user-login-form,
.path-user form#user-pass {
    padding: 0 20px;
}

.path-user #block-maiken-content .user-login-form>div.form-item input:focus,
.path-user #block-maiken-content .user-pass>div.form-item input:focus {
    border-color: #343434;
    outline: none;
    box-shadow: 0 0 0 3px #34343408;
}

/*パスワードリセット
  再設定メッセージ  */
/* .password-reset,
.path-user #block-maiken-content .user-pass>p {
    padding: 0 19.5px;
} */

.user-login-form,
.user-pass {
    max-width: 633px;
    width: 100%;
    margin: 0 auto;
}

.password-reset a {
    color: #808080;
    display: flex;
    align-items: center;
}

.password-reset a::after {
    content: ">";
    padding-left: 5px;
}


/*ログイン・送信ボタン*/
.path-user #block-maiken-content .user-login-form #edit-actions,
.path-user #block-maiken-content .user-pass #edit-actions {
    width: fit-content;
    margin: 5% auto;
}

.path-user #block-maiken-content .user-login-form #edit-actions input,
.path-user #block-maiken-content .user-pass #edit-actions input {
    width: 236px;
    padding: 30px;
    font-size: 20px;
    color: #fff;
    font-weight: bold;
    background: linear-gradient(to right, #0083ED 0%, #02BBFE 100%);
    border: none;
    border-radius: 10px;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.path-user #block-maiken-content .user-login-form #edit-actions input[type="submit"],
.path-user #block-maiken-content .user-pass #edit-actions input[type="submit"] {
    -webkit-text-fill-color: #fff;
}

/****************************
 ホバー
*****************************/

@media (hover: hover) {
    .password-reset a:hover {
        color: #535353;
    }

    .path-user #block-maiken-content .user-login-form #edit-actions input:hover,
    .path-user #block-maiken-content .user-pass #edit-actions input:hover {
        cursor: pointer;
        /* transform: translateY(-5px); */
        transform: scale(.9);
    }
}


@media only screen and (max-width: 768px) {

    .path-user #block-maiken-content .user-login-form #edit-actions input,
    .path-user #block-maiken-content .user-pass #edit-actions input {
        padding: 20px;
        font-size: 16px;
        margin-bottom: 20px;
    }

    .path-user #block-maiken-primary-local-tasks ul.tabs li:last-child {
        margin-bottom: 20px;
    }

    .password-reset,
    .path-user #block-maiken-content .user-pass>p {
        padding: 0 0 10px;
    }
}


/*==============================================================================
	エントリーバナー style
============================================================================= */
section.entry_banner a {
    text-decoration: none;
}

.entry_banner {
    padding: 0 20px;
    margin-bottom: 30px;
    transition: opacity 0.3s ease;
}

.entry_banner .inner {
    background: linear-gradient(to right, #0083ED 0%, #02BBFE 100%);
    padding: 15px;
    box-shadow: rgba(14, 63, 126, 0.06) 0px 0px 0px 1px, rgba(42, 51, 70, 0.03) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 2px 2px -1px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.03) 0px 5px 5px -2.5px, rgba(42, 51, 70, 0.03) 0px 10px 10px -5px, rgba(42, 51, 70, 0.03) 0px 24px 24px -8px;
    max-width: 780px;
}

.entry_banner .inner .entry_banner_wrap {
    border: 1px solid #fff;
}

.entry_banner .inner .entry_banner_wrap>div>h2 {
    font-size: clamp(22px, 3vw, 54px);
    color: #fff;
    font-weight: bold;
}

.entry_banner .inner .entry_banner_wrap>div>p {
    margin: 0;
    font-size: 16px;
    color: #fff;
    /* font-weight: bold; */
    letter-spacing: 2px;
}

.entry_banner_wrap {
    display: flex;
    padding: 50px 30px 50px 50px;
    justify-content: space-between;
    align-items: center;
  gap:20px;
}

.entry_banner_img {
    display: flex;
    align-items: center;
}
.entry_banner_img img{
  width: 80%;
  height: auto;
  object-fit: contain;
}

.entry_banner_img>div:first-child {
    margin-right: -40px;
}

.entry_banner .inner .entry_banner_wrap .entry_banner_arrow::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 30px;
    background-image: url(/themes/custom/maiken/images/icons/arrow_right.svg);
    filter: brightness(0) invert(1);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

/****************************
 ホバー
*****************************/

@media (hover: hover) {
    .entry_banner:hover {
        opacity: 0.8;
    }
}

/****************************
 レスポンシブ
*****************************/

@media only screen and (max-width: 992px) {
    .entry_banner .inner .entry_banner_wrap>div>p {
        font-size: 16px;
    }
}


@media only screen and (max-width: 768px) {
    .entry_banner_wrap {
        flex-direction: column;
        gap: 20px;
    }

    .entry_banner .inner .entry_banner_wrap>div>h2,
    .entry_banner .inner .entry_banner_wrap>div>p {
        text-align: center;
    }

    .entry_banner_wrap {
        padding: 20px 50px;
    }
}

@media only screen and (max-width: 500px) {
    .entry_banner_wrap {
        padding: 20px 20px;
    }

    .entry_banner_img>div:first-child {
        margin-right: -30px;
    }

    .entry_banner .inner .entry_banner_wrap .entry_banner_arrow::after {
        height: 15px;
    }
}


/*==============================================================================
	otherchapters style
============================================================================= */
.otherchapters .inner {
    border-radius: 46px;
    background: #343434;
    padding: 50px;
}

.otherchapters {
    padding: 0 20px;
}

.otherchapters h2 {
    font-size: clamp(21px, 2vw, 28px);
    color: #FFF;
    padding: 0 30px;
    margin-bottom: 45px;
}

.about-content-warp.otherchapters .contents {
    padding: 0;
}

.otherchapters .item-ttl h3 {
    color: #FFF;
    display: flex;
    align-items: center;
    width: 100%;
    gap: 20px;

}

.otherchapters .item-ttl span.itemsub-ttl {
    width: fit-content;
}

.otherchapters .about-content-warp .contents {
    width: 100%;
}

@media only screen and (max-width: 1270px) {
    .otherchapters .item-ttl h3 {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
}

@media only screen and (max-width: 992px) {
    .otherchapters .inner {
        padding: 50px 30px 50px;
    }

}


@media only screen and (max-width: 768px) {
    .otherchapters .contents-box.about {
        margin-bottom: 20px;
    }

    .otherchapters .item-ttl h3 {
        gap: 0;
    }

    .otherchapters h2 {
        padding: 0;
        margin-bottom: 20px;
    }

    .otherchapters .inner {
        padding: 20px 20px 50px;
        border-radius: 20px;
    }

    body:has(.recruitment) .about-content-warp {
        margin: 0px 0px 50px;
    }
}


/*==============================================================================
	運営メニュー style
============================================================================= */
.user-logged-in.path-node .hamburger {
    display: block !important;
}

#block-maiken-front-manager-menu-block {
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 1000;
    height: 40px;
    transform: translateY(-50%);
}

/* トグルボタン */
.admin-toggle {
    padding: 10px 16px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.3s ease;
    width: fit-content;
    background-color: #fff;
    color: #0083ED;
    border: 1px solid #0083ED;
    height: 100%;
}

.admin-toggle:hover {
    background-color: #0083ED;
    color: #fff;
}

/* メニュー */
#nav-menu {
    position: absolute;
    top: 100%;
    right: 0;
    width: 220px;
    display: none;
    background-color: #f8f8f8;
    padding: 20px;
    border: 1px solid #ccc;
    margin-top: 10px;
    z-index: 999;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

#nav-menu.is-open {
    display: block;
}

/* メニュー内のリスト */
#nav-menu ul.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

#nav-menu ul.menu li {
    margin-bottom: 10px;
}

#nav-menu ul.menu a {
    text-decoration: none;
    color: #333;
    font-weight: 600;
}

#nav-menu ul.menu a:hover {
    color: #0083ED;
}

/*==============================================================================
	プライバシーポリシー style
============================================================================= */


.privacy-policy-section .policy-title {
    font-size: clamp(20px, 5vw, 36px);
    text-align: center;
    position: relative;
    padding: 0.5rem 0 27px;
    margin-bottom: 2.5rem;
}

.privacy-policy-section .policy-title::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 85px;
    height: 4px;
    background: linear-gradient(to left, #0083ED 0%, #02BBFE 100%);
}

.privacy-policy-section .inner {
    padding: 0 20px;
    margin-bottom: 50px;
}

.privacy-policy-section .inner h4 {
    font-size: 20px;
}

.privacy-policy-section .inner a {
    font-weight: bold;
    color: #343434;
}

.privacy-policy-section .inner a:hover {
    opacity: 0.7;
}

.privacy-policy-section ul {
    padding-left: 1.2em;
    margin: 0 0 20px;
}

.privacy-policy-section ul li {
    list-style-type: disc;
    margin-bottom: 5px;
}

.privacy-policy-section p {
    margin-bottom: 20px;
}

.text-right {
    text-align: right;
    margin-top: 40px;
}

@media only screen and (max-width: 500px) {
    .privacy-policy-section .ttl_flex h2 {
        line-height: 1;
        padding: 20px 0px 20px 20px;
    }

    .privacy-policy-section .policy-title{
        font-size: 19px;
    }

    .privacy-policy-section .inner h4 {
    font-size: 16px;
}
}