@charset "utf-8";
/* ====================================================================================================================================================================================
TOP、各下層ページ内の共通スタイル
共通header、footerスタイルは本ファイルにのみ記載済
 ====================================================================================================================================================================================*/

/* ====================================================================================================================================================================================
reset
*/
*,*::before,*::after{padding: 0;margin: 0;box-sizing: border-box;}
img{max-width: 100%;height: auto;}
a{text-decoration: none;color: inherit;}
li{list-style: none;}

/*====================================================================================================================================================================================
common
*/
html,body{
    font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",'Noto Sans JP',Meiryo,sans-serif;
    font-size: 18px;line-height:1.5;font-weight: 400;color: #333;
    font-feature-settings:"palt";
}

/* 色変更機能 body用スタイル
*/
body.js_blue{background: #000AFF;color:#fff;}
body.js_black{background: #000;color:#fff;}


/*カラーパレット色設定*/
.has-black-color{color:#000 !important;}
.has-black-background-color{background-color:#000 !important;}

.has-gray-color{color:#f2f2f2 !important;}
.has-gray-background-color{background-color:#f2f2f2 !important;}

.has-white-color{color:#ffffff !important;}
.has-white-background-color{background-color:#ffffff !important;}

.has-pink-color{color:#F78DA7 !important;}
.has-pink-background-color{background-color:#F78DA7 !important;}

.has-red-color{color:#ed5050 !important;}
.has-red-background-color{background-color:#ed5050 !important;}

.has-orange-color{color:#FF6900 !important;}
.has-orange-background-color{background-color:#FF6900 !important;}

.has-yellow-color{color:#FCB900 !important;}
.has-yellow-background-color{background-color:#FCB900 !important;}

.has-greencyan-color{color:#7BDCB5 !important;}
.has-greencyan-background-color{background-color:#7BDCB5 !important;}

.has-green-color{color:#00D084 !important;}
.has-green-background-color{background-color:#00D084 !important;}

.has-bluegray-color{color:#8ED1FC !important;}
.has-bluegray-background-color{background-color:#8ED1FC !important;}

.has-blue-color{color:#0693E3 !important;}
.has-blue-background-color{background-color:#0693E3 !important;}

.has-purple-color{color:#9B51E0 !important;}
.has-purple-background-color{background-color:#9B51E0 !important;}

/* ====================================================================================================================================================================================
フォーカスoutline
*/
/* 初期値
*/
body a:focus,
body button:focus,
body label:focus,
body input:focus,
body select:focus,
body option:focus{outline: auto;}

/* 青
*/
body.js_blue a:focus,
body.js_blue button:focus,
body.js_blue label:focus,
body.js_blue input:focus,
body.js_blue select:focus,
body.js_blue option:focus{outline: 2px solid #fff !important;}

/* 黒
*/
body.js_black a:focus,
body.js_black button:focus,
body.js_black label:focus,
body.js_black input:focus,
body.js_black select:focus,
body.js_black option:focus{outline: 2px solid #fff !important;}

a {transition: opacity .4s;}
a:hover {opacity: .6;}

/* ====================================================================================================================================================================================
TOPページ～下層ページ迄サイト全体で使用スタイル ここから
*/

.flex_box{display: flex;justify-content: space-between;}

/* ボーダーのみスタイル
*/
.border01{border: 3px solid #40A6E0;color:#006EAD;border-radius: 10px;text-align: center;display: flex;justify-content: center;align-items: center;}
/* 色変更 ボーダーのみスタイル用
*/
body.js_blue .border01,
body.js_black .border01{border: 3px solid #fff;color:#fff;}

/* 背景色付き 右下三角マーク付きボタン
*/
.btn01{position: relative;border: 3px solid #40A6E0;font-size: 15px;color:#006EAD;border-radius: 10px;text-align: center;display: flex;justify-content: center;align-items: center;background: #E8F7FF;transition: opacity .4s;}
.btn01:hover{opacity: .6;transition: opacity .4s;}
.btn01::after{position: absolute;content:"";bottom:8px;right: 8px;width: 0px;height:0;border-left:14px solid transparent;border-bottom:14px solid #024E79;}
/* 色変更 背景色付き 右下三角マーク付きボタン用スタイル
*/
body.js_blue .btn01,
body.js_black .btn01{border: 3px solid #fff;}
body.js_blue .btn01::after,
body.js_black .btn01::after{border-bottom:14px solid #fff;}

/* 背景色なし 右下三角マーク付きボタン
*/
.btn02{position: relative;border: 3px solid #40A6E0;font-size: 15px;color:#006EAD;border-radius: 10px;text-align: center;display: flex;justify-content: center;align-items: center;background: #fff;transition: opacity .4s;}
.btn02:hover{opacity: .6;transition: opacity .4s;}
.btn02::after{position: absolute;content:"";bottom:8px;right: 8px;width: 0px;height:0;border-left:14px solid transparent;border-bottom:14px solid #024E79;}

/* 色変更 背景色なし 右下三角マーク付きボタン用スタイル
*/
body.js_blue .btn02{background: #000AFF;}
body.js_black .btn02{background: #000;}
body.js_blue .btn02,
body.js_black .btn02{border: 3px solid #fff;color:#fff;}
body.js_blue .btn02::after,
body.js_black .btn02::after{border-bottom:14px solid #fff;}

/* フッター内 背景色付き 右下三角マーク付きボタン
*/
.footer_btn01{position: relative;border: 3px solid #40A6E0;font-size: 15px;color:#006EAD;border-radius: 10px;text-align: center;display: flex;justify-content: center;align-items: center;background: #E8F7FF;transition: opacity .4s;}
.footer_btn01:hover{opacity: .6;transition: opacity .4s;}
.footer_btn01::after{position: absolute;content:"";bottom:8px;right: 8px;width: 0px;height:0;border-left:14px solid transparent;border-bottom:14px solid #024E79;}

/* 色変更 フッター内 背景色付き 右下三角マーク付きボタン用スタイル
 */
body.js_blue .footer_btn01{background: #000AFF;}
body.js_black .footer_btn01{background: #000;}
body.js_blue .footer_btn01,
body.js_black .footer_btn01{border: 3px solid #fff;color:#fff;}
body.js_blue .footer_btn01::after,
body.js_black .footer_btn01::after{border-bottom:14px solid #fff;}

/*
TOPページ～下層ページ迄サイト全体で使用スタイル ここまで
====================================================================================================================================================================================*/

@media (max-width:767px){
    .btn01{border: 2px solid #40A6E0;}
    .btn01::after{bottom: 5px;right: 5px;width: 0px;height:0;border-left: 10px solid transparent;border-bottom: 10px solid #024E79;}

    .btn02{border: 2px solid #40A6E0;}
    .btn02::after{bottom: 5px;right: 5px;width: 0px;height:0;border-left: 10px solid transparent;border-bottom: 10px solid #024E79;}

    .border01{border: 2px solid #40A6E0;}
    .border02{border: 2px solid #40A6E0;}

    .footer_btn01{border: 2px solid #40A6E0;}
    .footer_btn01::after{bottom: 3px;right: 2px;width: 0px;height:0;border-left: 8px solid transparent;border-bottom: 8px solid #024E79;}

    /* outline モバイル以下は無効化
    */
    body a:focus,body button:focus,body label:focus,body input:focus,body select:focus,body option:focus{outline:none;}
}/* max-width:767px */

@media (max-width:500px){
    .btn03::after{bottom: 6px;right: 5px;border-left: 14px solid transparent;border-bottom: 14px solid #024E79;}
    .btn04::after{bottom:6px;right: 7px;border-left:16px solid transparent;border-bottom:16px solid #024E79;}
}
/* section単位でhoverエフェクト処理をするスタイル(hoverクラスを各セクションの親要素に設置する)
*/
.hover a {transition: opacity .4s;}
.hover a:hover {opacity: .6;}

/* ======================================================================================================================================================================================================
common header
*/

header.common_header #js_hamburger_btn{display:none;}
header.common_header{position: relative;z-index: 10;background: #fff;}

/* 色変変更 ヘッダー用スタイル
*/
body.js_blue header.common_header{background: #00f;}
body.js_black header.common_header{background: #000;}

header.common_header > div.header_inner{width: 100%;margin: 0 auto;}
header.common_header div.fixed_header_inner{display: flex;justify-content: space-between;padding: 0 10px 10px;margin: 0 auto;width: 100%;max-width: 1240px;}

/* ヘッダー左側 ロゴ
*/
header.common_header .header_logo{width: fit-content;margin: 12px 0 0 22px;background: #fff !important;}
header.common_header .header_logo a{display: flex;justify-content: flex-start;font-weight: 400;}

header.common_header .fixed_header_inner .logo{width: 62px;padding: 11px 0 0 0;display: inline-flex;margin: 0;}
header.common_header .fixed_header_inner .company_name_wrapp{display: flex;justify-content: flex-start;flex-direction: column;width: fit-content;}
header.common_header .company_name_wrapp .company_name_en{font-size: 20px;color: #40A6E0;font-family: 'Courier New';line-height: 1;margin: 0 0 6px 11px;letter-spacing: 1.6px;}
header.common_header .company_name_wrapp .company_name{font-size: 50px;color: #333;line-height: 1;margin: 0 0 0 7px;letter-spacing: 1.5px;}

/* ヘッダー右側 機能 電話
*/
header.common_header .functions_wrapp{display: flex; margin: 0;}
header.common_header .translattion_tel{width: fit-content;}

/* 日本語/英語翻訳 translation
*/
header.common_header .translation{width: fit-content;margin: 0 clamp(4px,1.8vw,38px) 0 auto;padding: 14px 0 0 0;}
header.common_header .translation select{width: 214px !important;display: block;border: none;background: #E2E2E2;padding: 7px 0;margin: 0;}

header.common_header .translation{position:relative;text-align: center;}
header.common_header .translation select{-moz-appearance: none;-webkit-appearance: none;appearance: none;text-align: center;}

header.common_header .translation::after{content:"";position:absolute;top: 22px;right: 55px;width: 4px;height: 4px;border-right: solid 4px #000;border-bottom: solid 4px #000;border-left: solid 4px transparent;border-top: solid 4px transparent;transform:rotate(45deg);}
header.common_header .translation select{font-size: 14px;}

/* ページ内検索 search
*/
#ajaxsearchlite1 .probox, div.asl_w .probox ,
div#ajaxsearchlite1.asl_m,
div.asl_w{
    margin: 0;
    border: 0 ;
    border-radius: 0 0 0 0;
    box-shadow: none !important;}
    div.asl_m .probox .proinput{margin: 0 !important;}
    #ajaxsearchlite1 .probox .proinput, div.asl_w .probox .proinput{background: #E2E2E2;}
header.common_header .search {width: 100%;margin: 0 0 0 5px;padding: 14px 0 0 0;}
@media (max-width:767px){
    header.common_header .search {padding: 19px 0;}
}

header.common_header .search input{border:none;background: #E2E2E2;padding: 8px 8px;width: 185px;}
header.common_header .search form.search_wrapp{width: 100%;display: flex;justify-content: flex-start;/* padding: 14px 0 0 0; */}

div.asl_w .probox .promagnifier{background: #40A6E0 !important;margin: 0 0 0 7px !important;width: 30px !important;}

header.common_header .search_button {width: 31px;background: #40A6E0;display: flex;margin: 0 0 0 7px;}
header.common_header .search_button button{display: block;width: 100%;background: #40A6E0;border: none;cursor: pointer;max-width: 24px;margin: 5px auto auto;}
header.common_header .search_button button img{width: 100%;height: auto;pointer-events: none;}

/* ヘッダー内電話番号 tel
*/
header.common_header .tel{width: fit-content;margin: 13px 0 0 auto;}
header.common_header .tel .tel_wrapp{display: flex;font-size: 24px;font-weight: 700;color: #40A6E0;line-height: 1;justify-content: flex-start;margin: 0 clamp(4px,1.8vw,30px) 0 auto;}
header.common_header .tel .tel_wrapp a{line-height:1;font-family: 'メイリオ';align-self: center;margin: 4px 0 0 6px;}

/* ヘッダー内電話番号 色変更 */
body.js_blue header.common_header .tel .tel_wrapp,
body.js_black header.common_header .tel .tel_wrapp{color: #fff;}

header.common_header .tel .tel_wrapp img{width: 32px;display: block;}

/* 色変更ボタン部 color_change
*/
header.common_header .color_change{width: fit-content;margin: 13px 0 0 0;display: flex;}
header.common_header .color_change p {align-self: center;line-height: 1;font-size: 14px;}

header.common_header .color_change .color_button_wrapp {font-size: 0;height: fit-content;align-self: center;margin: 0 0 0 7px;}
header.common_header .color_button_wrapp button{width: 51px;height: 31px;border:solid 2px #E2E2E2;cursor: pointer;}
header.common_header .color_button_wrapp .white{background: #fff;}
header.common_header .color_button_wrapp .blue{background: #000AFF;}
header.common_header .color_button_wrapp .black{background: #000000;}

/* 色変更 色変更ボタン部用スタイル
*/
body.js_blue header.common_header .color_change p,
body.js_black header.common_header .color_change p {color:#fff;}

/* ナビゲーションリンク
*/
header.common_header .nav_lists{background: #40A6E0;width: 100%;position: static;top:unset;}

/* 色変更 ナビゲーションリンク用スタイル
*/
body.js_blue header.common_header .nav_lists{background: #000AFF;}
body.js_black header.common_header .nav_lists{background: #000000;}

/* Fixedヘッダー
*/
header.common_header .nav_lists.js_active{position: fixed;top:0;background: rgb(64, 166, 224,.8);}
header.common_header .nav_lists ~ .fixed_header_margin{height: 0px;}
header.common_header .nav_lists.js_active ~ .fixed_header_margin{height: 50px;}

/*=================================================================================================================================================================================
 ==================================================================================================================================================================================
グロナビ wpにあわせる作業 20221220 ここから
*/

/* ナビ内親/子のラッパー
*/
header.common_header .nav_lists ul.nav_lists_inner{display: flex;width: fit-content;margin: auto;padding: 0px 10px;max-width: 1200px;}

/* 各ナビの親リンク共通
*/
header.common_header .nav_lists ul.nav_lists_inner > li {color: #fff;font-size: 16px;}

/* 各グロナビ
*/

/* 色変更 各グロナビ用スタイル
*/

header.common_header .nav_lists ul.nav_lists_inner > li > ul {
    visibility: hidden;
    z-index: -2;
    transition: height .4s ,visibility .4s, opacity .4s, padding-top .4s, padding-bottom .4s;
    position: absolute;
    top: 100%;
    left:0;
    height: auto;
    background: #fff;
    padding: 30px calc((100% - 1040px) / 2) 30px;
    overflow: hidden;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100%;
}

header.common_header .nav_lists ul.nav_lists_inner > li > ul li{width: 260px;margin: 0 0 14px 0;height: fit-content;/* padding: 0 0 0 35px; */}
header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(1),
header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(2),
header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(3),
header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(4){margin: 0;}

header.common_header .nav_lists ul.nav_lists_inner > li > ul li a{display: block;padding: 6px 19px 6px 42px;text-align: left;color: #333;}
header.common_header .nav_lists ul.nav_lists_inner > li > ul a{position: relative;}
header.common_header .nav_lists ul.nav_lists_inner > li > ul a::before{content:'';position: absolute;top: 6px;left:0;width: 24px;height:24px;text-align: center;border-radius: 50%;color: #fff;background: #40A6E0 url('/wp-content/themes/yonezawa-city-hospital/img/common/list_arrow.png') no-repeat 40% center / 12px;}

/* 色変更 各グロナビ用スタイル
*/

body.js_blue header.common_header .nav_lists ul.nav_lists_inner > li > ul{background: #000AFF;}
body.js_black header.common_header .nav_lists ul.nav_lists_inner > li > ul{background: #000;}
body.js_blue header.common_header .nav_lists ul.nav_lists_inner > li > ul li a,
body.js_black header.common_header .nav_lists ul.nav_lists_inner > li > ul li a{color: #fff;}
body.js_blue header.common_header .nav_lists ul.nav_lists_inner > li > ul a::before,
body.js_black header.common_header .nav_lists ul.nav_lists_inner > li > ul a::before{position: absolute;color: #fff;border: 1px solid #fff;}
body.js_blue header.common_header .nav_lists ul.nav_lists_inner > li > ul a::before{background-color: #000AFF;}
body.js_black header.common_header .nav_lists ul.nav_lists_inner > li > ul a::before{background-color: #000;}


/* wpにあわせ作業ここから↑まで着手中 */
header.common_header .nav_lists ul.nav_lists_inner > li ul li:hover {opacity:.6;transition: opacity 0.4s;}

/* 各ナビ親リンク詳細スタイル
*/
header.common_header .nav_lists ul.nav_lists_inner > li > a{font-weight: 400;position: relative;font-size: 16px;display: block;width: 100%;padding: 13px clamp(5px,1.1vw,41px);}
header.common_header .nav_lists ul.nav_lists_inner > li > a::before{position: absolute;content:"";height: 56%;width: 2px;background: #fff;top:50%;left:0;transform: translateY(-50%);}
header.common_header .nav_lists ul.nav_lists_inner > li:last-of-type > a::after{position: absolute;content:"";height: 56%;width: 2px;background: #fff;top:50%;right:0;transform: translateY(-50%);background:#fff;}

/*
グロナビ wpにあわせる作業 20221220 ここまで
=================================================================================================================================================================================
================================================================================================================================================================================= */

/* ======================================================================================================================================================================================================
SP版ハンバーガーメニュー
*/
/* サイト内検索
*/
#sp_menu {display:none;}
#sp_menu .search {width: fit-content;margin: 0 auto;}
#sp_menu .search_input input{border:none;background: #E2E2E2;padding: 8px 8px;width: 250px;
    /* クロスブラウザ対応 */
    -webkit-appearance: none;
    border-radius: 0;
}
#sp_menu .search form.search_wrapp{width: 100%;display: flex;justify-content: flex-start;/* padding: 19px 0; */}

#sp_menu .search_button {width: 31px;background: #40A6E0;display: flex;margin: 0 0 0 7px;}
#sp_menu .search_button button{display: block;width: 100%;background: #40A6E0;border: none;cursor: pointer;max-width: 24px;margin: 5px auto auto;}
#sp_menu .search_button button img{width: 100%;height: auto;pointer-events: none;}

#sp_menu .sp_menu_list{width: 100%;}
#sp_menu .sp_menu_list li{position: relative;width: 100%;border-top:#D8D8D8 solid 1px;padding: 15px;font-size: 15px;line-height: 20px;cursor: pointer;}
#sp_menu .sp_menu_list li::after{content:'';position: absolute;right: 20px;top: 22px;width: 10px;height: 10px;border-right: 2px solid #333;border-bottom: 2px solid #333;transform: rotate(315deg) translateY(-50%);}
#sp_menu .sp_menu_list li a{display:block;}

@media (max-width:1280px){
    /* ヘッダー左側 ロゴ
    */
    header.common_header .header_logo{width: fit-content;margin: 23px 0 0 0;}
    header.common_header .header_inner .logo{width: 50px;padding: 7px 0 0 0;}
    header.common_header .company_name_wrapp .company_name_en{font-size: 16px;margin: 0 0 6px 8px;letter-spacing: 0.6px;}
    header.common_header .company_name_wrapp .company_name{font-size: 38px;color: #333;line-height: 1;margin: 0 0 0 5px;letter-spacing: 1.2px;}

    /* translation
    */
    header.common_header .translation select{width: 180px !important;}

    /* search
    */
    header.common_header .search_input input{width: 165px;}
    header.common_header .search_button {width: 26px;margin: 0 0 0 4px;}
    header.common_header .search_button button{max-width: 20px;}

    /* tel
    */
    header.common_header .tel .tel_wrapp{font-size: 22px;margin: 0 clamp(4px,1.8vw,30px) 0 auto;}
    header.common_header .tel .tel_wrapp img{width: 28px;}

    /* color_change
    */
    header.common_header .color_button_wrapp button{width: 46px;}

    header.common_header .nav_lists ul.nav_lists_inner > li > ul {
        padding: 30px calc((100% - 880px) / 2) 30px;
        overflow: hidden;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 100%;
    }
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li{width: 220px;margin: 0 0 14px 0;height: fit-content;/* padding: 0 0 0 35px; */}
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li a{padding: 6px 19px 6px 30px;}
    /*=================================================================================================================================================================================
    ==================================================================================================================================================================================
    グロナビ wpにあわせる作業 20221220 ここから
    */

    /* 各ナビ親リンク詳細スタイル
    */
    header.common_header .nav_lists ul.nav_lists_inner > li > a{display: block;width: 100%;padding: 13px clamp(5px,1.6vw,26.838px);}

    /*
    グロナビ wpにあわせる作業 20221220 ここまで
    =================================================================================================================================================================================
    ================================================================================================================================================================================= */


}/* max-width:1280px */

@media (max-width:900px){
     header.common_header .nav_lists ul.nav_lists_inner > li > ul {padding: 30px 5% 30px;
        overflow: hidden;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 100%;
    }
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li{width: 220px;margin: 0 0 14px 0;height: fit-content;/* padding: 0 0 0 35px; */}
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li a{}
    header.common_header .nav_lists ul.nav_lists_inner > li > a{display: block;width: 100%;padding: 13px clamp(5px,1.6vw,26.838px);}
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(1){margin: 0;}
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(2),
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(3),
    header.common_header .nav_lists ul.nav_lists_inner > li > ul li:nth-last-child(4){margin: 0 0 14px 0;}
}
/* SP版レイアウト ここから
*/
@media (max-width:767px){
    /* SP版ヘッダをFixed Headerへ */
    header.common_header{position: fixed;width: 100%;top:0;left:0;z-index: 11;}
    main{margin-top:76.06px;}

    header.common_header .nav_lists ~ .fixed_header_margin{display: none;}
    header.common_header .functions_wrapp,.nav_lists{visibility: hidden;position: absolute !important;top: -9999px !important;}

    /* ヘッダー左側 ロゴ
    */
    header.common_header .common_header > div.header_inner{padding: 0 15px 10px;}
    header.common_header .header_logo{width: fit-content;padding: 17px 0 0 0;margin: 0 0 0 5px;}
    header.common_header .header_inner .logo{width: 38px;padding: 8px 0 0 0;}
    header.common_header .company_name_wrapp .company_name_en{font-size: 12px;margin: 0 0 5px 8px;letter-spacing: 1.4px;}
    header.common_header .company_name_wrapp .company_name{font-size: 31px;color: #333;line-height: 1;margin: 0 0 0 5px;letter-spacing: 1.2px;}

    /* ハンバーガーメニューボタン
    */
    header.common_header #js_hamburger_btn{display: block;}
    header.common_header .hamburger_btn{width: 42px;height: 32px;border: none;background: none;position: absolute;top: 26px;right: 18px;}
    header.common_header .hamburger_btn .hamburger_btn_inner{display: flex;flex-direction: column;justify-content: space-between;height: 100%;}
    header.common_header .hamburger_btn_inner span{background: #333;height: 3px;width: 100%;visibility: visible;transition: transform .4s,visibility .4s, opacity .3s;}
    header.common_header #js_hamburger_btn.js_active .hamburger_btn_inner span.top_line{transform: translateY(15px) rotate(315deg);}
    header.common_header #js_hamburger_btn.js_active .hamburger_btn_inner span.middle_line{opacity: 0;visibility: hidden;}
    header.common_header #js_hamburger_btn.js_active .hamburger_btn_inner span.bottom_line{transform: translateY(-14px) rotate(-315deg);}

    /* ハンバーガーメニュー
    */
    #sp_menu {display: block;transition: max-height .4s;border:none;position: relative;width: 100%;z-index: 10;background: #fff;max-height: 0;overflow: hidden;}
    #sp_menu.js_active {max-height: 380px;border-top:#D8D8D8 solid 1px;border-bottom:#D8D8D8 solid 1px;}

}/* max-width:767px */
@media(max-width:500px){
    main{margin-top:88.06px;}
    header.common_header div.fixed_header_inner{padding: 0 10px 22px;margin: 0 auto;width: 100%;max-width: 1240px;}
}/* max-width:500px */

/* ヘッダー内のクロスブラウザ対応分スタイル
*/
_:lang(x)+_:-webkit-full-screen-document,header.common_header .translation select{-webkit-appearance:none;padding: 9px 20px 9px 93px!important;border-radius: 0;}
_:lang(x)+_:-webkit-full-screen-document,header.common_header .translation input{-webkit-appearance:none;padding: 8px 8px 8px 8px!important;}
_::-webkit-full-page-media, _:future, :root header.common_header input {-webkit-appearance:none;}
_:lang(x)+_:-webkit-full-screen-document,header.common_header .translation::after{content:"";position:absolute;top: 25px;right: 55px;width: 4px;height: 4px;border-right: solid 4px #000;border-bottom: solid 4px #000;border-left: solid 4px transparent;border-top: solid 4px transparent;transform:rotate(45deg);}

@media(max-width:1280px){
    _:lang(x)+_:-webkit-full-screen-document,header.common_header .translation select{padding: 8px 10px 8px 74px!important;}
    _:lang(x)+_:-webkit-full-screen-document,header.common_header .translation::after{content:"";position:absolute;top: 25px;right: 43px;width: 4px;height: 4px;border-right: solid 4px #000;border-bottom: solid 4px #000;border-left: solid 4px transparent;border-top: solid 4px transparent;transform:rotate(45deg);}
}/* max-width:1280px */
@media(max-width:768px){
    _:lang(x)+_:-webkit-full-screen-document,header.common_header .translation select{padding: 6px 10px 6px 74px!important;}
    _:lang(x)+_:-webkit-full-screen-document,header.common_header .translation::after{content:"";position:absolute;top: 25px;right: 43px;width: 4px;height: 4px;border-right: solid 4px #000;border-bottom: solid 4px #000;border-left: solid 4px transparent;border-top: solid 4px transparent;transform:rotate(45deg);}
    _:lang(x)+_:-webkit-full-screen-document,header.common_header .header_inner .logo{width: 38px;padding: 0px 0 0 0;}
}/* max-width:768px */

/* ======================================================================================================================================================================================================
common footer
*/
footer.common_footer{border-top: #40A6E0 20px solid;}
footer.common_footer > .inner{padding: 60px 10px;max-width: 1238px;margin: auto;}

footer.common_footer .logo_tel_access{margin: 0px 0 38px 0;justify-content: flex-start;width: 100%;}

footer.common_footer .logo_tel_access .footer_logo{width: 100%;max-width: clamp(280px,30vw,373px);display: flex;justify-content: space-between;padding: 0px 0 0 0px;margin: 0;background: #fff !important;}

footer.common_footer .logo{width: 62px;padding: 11px 0 0 0;display: inline-flex;}
footer.common_footer .company_name_wrapp{display: flex;justify-content: flex-start;flex-direction: column;width: fit-content;}
footer.common_footer .company_name_wrapp .company_name_en{font-size: 20px;color: #40A6E0;font-family: 'Courier New';line-height: 1;margin: 0 0 6px 5px;letter-spacing: 1.6px;}
footer.common_footer .company_name_wrapp .company_name{font-size: 50px;color: #333;line-height: 1;margin: 0 0 0 2px;letter-spacing: 1.5px;}

footer.common_footer .logo_tel_access .tel_access{width: 100%;justify-content: flex-start;}

footer.common_footer .tel_access .inner{margin: 0 0 0 clamp(2%,1.9vw,4.5%);min-width: fit-content;padding: 0;}
footer.common_footer .tel_access .tel{display: block; font-size: 32px;margin: 8px 0 0 0px;width: fit-content;}
footer.common_footer .tel_access .address{font-size: 16px;}
footer.common_footer .tel_access a.access{width: 100%;max-width: 248px;height: 60px;margin: 9px 0 0 auto;}

/* jq_emblem追加用スタイル */
footer.common_footer .jq_emblem_wrapper_pc,
footer.common_footer .jq_emblem_wrapper_sp{justify-content: flex-start;align-items: center;padding-top: 10px;background: #fff;width: fit-content;}
footer.common_footer .jq_emblem_wrapper_pc{display: flex;margin: 0 0 0 clamp(2%,1.9vw,2.6%);}
footer.common_footer .jq_emblem_wrapper_sp{display: none;}

footer.common_footer .jq_emblem_logo{min-width: 55px;width: 55px;}
footer.common_footer .jq_emblem_text{font-size: 12px;line-height: 1.5;color: #333;}

footer.common_footer .business_hours_overview{margin: 0 0 58px 0; justify-content: flex-start; gap: 80px;}
footer.common_footer .business_hours_wrapp .reception_time{font-size: 15px; padding: 0 12px;}
footer.common_footer .business_hours_wrapp .desc{margin:0 0 0 10px;font-size: 18px;}

footer.common_footer .holiday_wrapp .holiday{font-size: 15px; padding: 0 12px;}
footer.common_footer .holiday_wrapp .desc{display: flex;align-items: center;justify-content: center;margin: 0 0 0 10px;}
footer.common_footer .copyright_area{max-width: 1178px;}
footer.common_footer .copyright_area .sitemap_wrapp {font-size: 16px;width: 100%;max-width: 592px;}
footer.common_footer .copyright_area .copyright{font-size: 14px;}
/* 色変更 */
body.js_blue footer.common_footer{border-top: #000AFF 20px solid;}
body.js_black footer.common_footer{border-top: #000 20px solid;}

@media (max-width:1280px){
    /* フッター左側 ロゴ
    */
    footer.common_footer .tel_access .tel{margin: 0;}
    footer.common_footer .logo_tel_access .footer_logo{width: 100%;max-width: 291px;min-width: clamp(280px,30vw,291px);padding: 0;margin: 0;}
    footer.common_footer .logo_tel_access .footer_logo .logo{width: 50px;padding: 7px 0 0 0;}

    footer.common_footer .company_name_wrapp .company_name{font-size: 38px;color: #333;line-height: 1;margin: 0 0 0 5px;letter-spacing: 1.2px;}
    footer.common_footer .company_name_wrapp .company_name_en{font-size: 16px;margin: 0 0 6px 8px;letter-spacing: 0.6px;}
    /* フッター下部リンクとコピーライト ラッパー*/
    footer.common_footer .copyright_area{flex-direction:column;}
    footer.common_footer .copyright_area .sitemap_wrapp{margin:0 0 36px 0;}

}

@media (max-width:1130px){
    footer.common_footer .logo_tel_access {margin: 0px 0 10px 0;width: 100%;}
    /* jq_emblem追加用スタイル */
    footer.common_footer .jq_emblem_wrapper_pc{display: none;}
    footer.common_footer .jq_emblem_wrapper_sp{display: flex;padding-top: 0px;margin: 0px 0 10px 0;width: fit-content;}
}

@media(max-width:768px){


    /* MACOS向けスタイル */
    _:lang(x)+_:-webkit-full-screen-document,footer.common_footer .footer_logo .logo{width: 38px;padding: 0px 0 0 0;}
}/* max-width:768px */

@media (max-width:767px) {
    footer.common_footer{border-top: #40A6E0 10px solid;}

    footer.common_footer .logo_tel_access{margin: 0px 0 10px 0;flex-direction: column;}

    footer.common_footer .logo_tel_access .footer_logo{width: 237px;min-width: unset;max-width: unset;padding: 17px 0 0 0;margin: 0;}
    footer.common_footer .logo_tel_access .footer_logo .logo{width: 38px;padding: 8px 0 0 0;}
    footer.common_footer .company_name_wrapp .company_name_en{font-size: 12px;margin: 0 0 5px 8px;letter-spacing: 1.4px;}
    footer.common_footer .company_name_wrapp .company_name{font-size: 31px;color: #333;line-height: 1;margin: 0px 0 0 5px;letter-spacing: 1.2px;}

    footer.common_footer .logo_tel_access .tel_access{justify-content: space-between;}

    footer.common_footer .tel_access .inner{display: flex;flex-direction: column-reverse;margin: 0;}
    footer.common_footer .tel_access .tel{font-size: 32px;margin: 10px 0 0 0;}
    footer.common_footer .tel_access .address{font-size: 16px;}
    footer.common_footer .tel_access a.access{margin:10px 0 0;border-radius: 5px;}

    footer.common_footer .business_hours_overview{max-width: 714px;margin: 0 0 58px 0;flex-direction: column;}
    footer.common_footer .business_hours_wrapp,footer.common_footer .holiday_wrapp{justify-content: flex-start;}
    footer.common_footer .business_hours_wrapp{margin:0 0 18px 0;}
    footer.common_footer .business_hours_wrapp .reception_time{width: 110px;height: 60px;}

    footer.common_footer .holiday_wrapp .holiday{width: 110px;height: 60px;}
    footer.common_footer .holiday_wrapp .desc{display: flex;align-items: center;justify-content: center;}
    footer.common_footer .copyright_area{flex-direction: column;}
    footer.common_footer .copyright_area .sitemap_wrapp {font-size: 16px;width: 300px;flex-direction: column;margin:0 0 30px 0;}

    footer.common_footer .copyright_area .business_operators {position: relative;margin:0 0 10px 0;width: fit-content;padding:0 0 0 16px;}
    footer.common_footer .copyright_area .contact {position: relative;margin:0 0 10px 0;width: fit-content;padding:0 0 0 16px;}
    footer.common_footer .copyright_area .privacy_policy {position: relative;margin:0 0 10px 0;width: fit-content;padding:0 0 0 16px;}
    footer.common_footer .copyright_area .sitemap {position: relative;width: fit-content;padding:0 0 0 16px;margin: 0 0 10px 0;}

    footer.common_footer .copyright_area .business_operators::before,
    footer.common_footer .copyright_area .contact::before,
    footer.common_footer .copyright_area .privacy_policy::before,
    footer.common_footer .copyright_area .sitemap::before{position: absolute;width: fit-content;content:"＞ ";left:0;top:0;}

    footer.common_footer .copyright_area .copyright{font-size: 14px;}
}/* max-width:767px */

@media (max-width:500px) {
    footer.common_footer > .inner{padding: 1px 16px clamp(17px,3vw,60px);}

    footer.common_footer .logo_tel_access{margin: 0px 0 19px 0;flex-direction: column;}
    footer.common_footer .logo_tel_access .logo{max-width: clamp(234px,59.7vw,280px);margin: 0 0 10px 0;}
    footer.common_footer .logo_tel_access .tel_access{justify-content: space-between;padding: 6px 0 0 0;}

    footer.common_footer .tel_access .inner{display: flex;flex-direction: column-reverse;padding: 6px 6px 0 0;}
    footer.common_footer .tel_access .tel{font-size: clamp(12px,3vw,32px);margin: 2px 0 0 0;}
    footer.common_footer .tel_access .address{font-size: clamp(12px,3vw,16px);}
    footer.common_footer .tel_access a.access{width: clamp(100px,25vw,248px);height: clamp(30px,7.7vw,60px);margin:10px 0 0;font-size: 10px;}

    footer.common_footer .business_hours_overview{max-width: 714px;margin: 0 0 30px 0;flex-direction: column;}
    footer.common_footer .business_hours_wrapp,footer.common_footer .holiday_wrapp{justify-content: flex-start;}
    footer.common_footer .business_hours_wrapp{margin:0 0 18px 0;}
    footer.common_footer .business_hours_wrapp .reception_time{width: 110px;height: 50px;}
    footer.common_footer .business_hours_wrapp .desc{font-size: clamp(14px,3.6vw,18px);margin: 0 0 0 13px;}

    footer.common_footer .holiday_wrapp .holiday{width: 110px;height: 50px;font-size: clamp(14px,3.6vw,18px);}
    footer.common_footer .holiday_wrapp .desc{display: flex;align-items: center;justify-content: center;font-size: clamp(14px,3.6vw,18px);margin: 0 0 0 13px;}
    footer.common_footer .copyright_area{flex-direction: column;}
    footer.common_footer .copyright_area .sitemap_wrapp{font-size: clamp(12px,3vw,16px);width: fit-content;flex-direction: column;margin: 0 0 25px 0;}
    footer.common_footer .copyright_area .sitemap{margin:0 0 10px 0;width: fit-content;}
    footer.common_footer .copyright_area .privacy_policy{width: fit-content;}
    footer.common_footer .copyright_area .copyright{font-size: clamp(12px,3vw,14px);}
}/* max-width:500px */

@media (max-width:375px) {
    footer.common_footer .business_hours_wrapp .reception_time{width: fit-content;padding:0 4px;}
    footer.common_footer .holiday_wrapp .holiday{width: fit-content;padding: 0 28px;}
    footer.common_footer .business_hours_wrapp .desc{font-size: 12px;}
    footer.common_footer .holiday_wrapp .desc{display: flex;align-items: center;justify-content: center;font-size: clamp(14px,3.6vw,18px);}
    footer.common_footer .copyright_area .copyright{font-size: clamp(10px,3vw,12px);}
}/* max-width:375px */


/* ======================================================================================================================================================================================================
ページ最上部へスクロールボタン
*/

.scroll_btn{position: fixed;display: flex;justify-content: center;align-items: flex-start;right: 20px;bottom: 20px;width: 75px;height: 75px;background: #006EAD;border-radius: 38px;color: #fff;font-size: 16px;z-index: 10;cursor: pointer;appearance:  none;border:none; transition: opacity .4s;}
.scroll_btn:hover{opacity: .8;}
.top_triangle{position: relative;padding:32px 0 0;}

.top_triangle::before{content:'';position: absolute;top: 20px;left:50%;transform:translateX(-50%) rotate(45deg);width: 12px;height: 12px;border-top:2px solid #fff;border-left:2px solid #fff;}

/* 色変更
*/
body.js_blue .scroll_btn{background: #000AFF;border: 2px solid #fff;}
body.js_black .scroll_btn{background: #000;border: 2px solid #fff;}

@media(max-width:767px){
    .scroll_btn{right: 14px;bottom: 20px;width: 58px;height: 58px;font-size: 14px;}
    .top_triangle{padding:24px 0 0;}
    .top_triangle::before{top: 16px;width: 8px;height: 8px;}
}/* max-width:767px */



/* ======================================================================================================================================================================================================
GTranslate
*/

.gtranslate_wrapper {
    padding-top: 13px;
}
.gtranslate_wrapper .gt_selector {
    width: 217px;
    padding: 10px 14px;
    border: none;
    background-color: #E2E2E2;
}
.gtranslate_wrapper .gt_selector option:first-of-type {
    display: none;
}

.company_name font {
    font-size: 40px;
}

@media (max-width: 1130px) {
    .company_name font {
        font-size: 30px;
    }
}

header.common_header .nav_lists ul.nav_lists_inner > li font {
    font-size: 14px;
}

:lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:first-of-type > ul {
    height: 342px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
:lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(2) > ul {
    height: 592px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
:lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(3) > ul {
    height: 244px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
:lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(4) > ul {
    height: 96px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
:lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(5) > ul {
    height: 194px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

@media (max-width: 1280px) {
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:first-of-type > ul {
        height: 366px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(2) > ul {
        height: 664px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(3) > ul {
        height: 268px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(4) > ul {
        height: 96px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(5) > ul {
        height: 194px !important;
    }
}

@media (max-width: 900px) {
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:first-of-type > ul {
        height: 454px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(2) > ul {
        height: 829px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(3) > ul {
        height: 356px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(4) > ul {
        height: 96px !important;
    }
    :lang(en) header.common_header .nav_lists ul.nav_lists_inner > li:nth-child(5) > ul {
        height: 268px !important;
    }
}

.top_mv_important_info_right_triangle font {
    font-size: 14px;
}

.recruitment_information ul li a {
    text-align: center;;
}

.common_footer .company_name font {
    font-size: 30px;
}

@media (max-width: 1200px) {
    footer.common_footer .tel_access .address > font > font {
        width: 260px !important;
        display: block;
    }
}