@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 1300px) {
    /*=====周辺サブボタンメニュー===========================*/
    #around-nav_btn .contact-area {
        width: 100%;
        height: 45px;
        bottom: 0;
        top: auto;
    }
    #around-nav_btn .contact-list {
        width: 100%;
        display: flex;
        flex-flow: nowrap;
        justify-content: space-between;
        gap: 0px;
        box-shadow: 0px 1px 7px 0px rgba(70, 34, 14, 0.5);
        background-color: #fff;
    }
    #around-nav_btn .contact-list li {
        width: 100%;
        display: flex;
        align-items: center;
        position: relative;
    }
    #around-nav_btn .contact-list li a img {
        width: 25px;
    }
    #around-nav_btn .contact-list li .outpatient-link, #around-nav_btn .contact-list li .contact-link {
        width: 100%;
        height: 45px;
        padding: 8px 4px;
        box-sizing: border-box;
        writing-mode: horizontal-tb;
        border-radius: 0px;
        font-size: 80%;
        box-shadow: none;
        justify-content: center;
        letter-spacing: 0.08rem;
        font-weight: 700;
    }
    #around-nav_btn .contact-list li a:hover {
        width: 100%;
        opacity: 0.6;
        transform: translateX(0px);
        transition: 0.3s;
    }
    #around-nav_btn .contact-list li:hover {
        width: 100%;
        transform: translateX(0px);
        transition: 0.2s;
    }
    /*	ページトップボタン*/
    .pagetop {
        bottom: 40px;
        right: 30px;
    }
}
@media screen and (max-width: 1100px) {
    .dropdown .dd-wrap .dd-list ul.dd-nav p {
        font-size: 90%;
    }
    .dropdown .dd-wrap .dd-list ul.dd-nav img {
        width: 20px;
        height: 20px;
    }
    .ftr-wrap {
        width: 94%;
        gap: 40px;
    }
    .ftr_access-btn {
        flex-flow: column;
        gap: 10px;
    }
    .ftr_access-btn {
        margin: 20px auto;
    }
    .ftr_access-btn a {
        margin: 0;
    }
    .ftr_access-btn .tel-tap {
        pointer-events: all;
    }
    .ftr-access_list li {
        gap: 20px;
    }
}
@media screen and (max-width: 960px) {
    /*=====pc・sp　on/off===========================*/
    .pc {
        display: none;
    }
    .tb {
        display: none;
    }
    .sp {
        display: none;
    }
    .br-pc {
        display: none;
    }
    .br-tb {
        display: none;
    }
    .br-sp {
        display: block;
    }
    /*=====共通===========================*/
    p {
        font-size: 85%;
        line-height: 220%;
        margin: 0;
        padding: 0;
    }
    .arrow-link_w, .arrow-link_o {
        width: 25px;
        height: 25px;
    }
    /*=====ヘッダー===========================*/
    .header {
        height: auto;
    }
    .header .hdr-top, .header .hdr-btm {
        display: block;
        text-align: center;
    }
    .hdr-sub {
        padding: 8px 0;
        justify-content: center;
    }
    .header .hdr-logo img {
        max-width: 250px;
    }
    .header ul.nav-list {
        width: 100%;
    }
    .header .hdr-top, .header .hdr-btm {
        height: 100%;
    }
    /*=====フッター===========================*/
    .ftr-logo a {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .ftr-logo img {
        max-width: 420px;
    }
    .ftr-wrap {
        max-width: 92%;
        display: block;
    }
    .ftr-left, .ftr-right {
        width: 100%;
    }
    .ftr-access_list .box-title {
        width: 40%;
        padding: 4px;
        font-size: 85%;
    }
    .ftr-access_list li {
        gap: 20px;
    }
    .ftr_access-btn {
        margin: 20px auto;
        display: flex;
        flex-flow: column;
        gap: 20px;
    }
    .ftr_access-btn a {
        margin: 0;
        font-size: 100%;
    }
    .ftr-nav_list {
        margin: 32px auto 8px;
    }
    .ftr-nav_list li a {
        font-size: 85%;
        padding: 10px 5px;
    }
    .nav-link_btm a {
        font-size: 75%;
    }
    .catchcopy {
        padding: 32px 0 120px;
    }
}
@media screen and (max-width: 700px) {
    /*=====pc・sp　on/off===========================*/
    .pc {
        display: none;
    }
    .tb {
        display: none;
    }
    .sp {
        display: block;
    }
    .br-pc {
        display: none;
    }
    .br-tb {
        display: block;
    }
    .br-sp {
        display: block;
    }
    /*=====共通===========================*/
    /*-----------------見出し1*/
    .one-title {
        width: 98%;
        margin: 60px auto 20px;
        padding: 12px;
        font-size: 120%;
    }
    /*-----------------見出し2*/
    .two-title {
        margin: 40px auto 24px;
    }
    .two-title img {
        max-width: 24px;
    }
    .two-title p {
        padding: 0 0 0 6px;
        font-size: 68%;
        line-height: 150%;
    }
    .sub_link-btn {
        margin: 60px auto 0;
        font-size: 80%;
    }
    /*-----------------arrow*/
    .arrow, .arrow {
        width: 10px;
    }
    .arrow::before, .arrow::after {
        width: 7px;
        height: 2px;
    }
    .arrow::before {
        top: calc(40% - 1px);
    }
    .arrow::after {
        bottom: calc(63% - 5px);
    }
    #around-nav_btn .contact-list li .outpatient-link, #around-nav_btn .contact-list li .contact-link {
        font-size: 75%;
    }
    /*=====ヘッダー===========================*/
    .header {
        height: 60px;
    }
    .header a {
        text-decoration: none;
    }
    .header .hdr-top, .header .hdr-bot {
        height: unset;
        display: block;
        line-height: 70%;
        overflow: hidden;
    }
    .header .hdr-top, .header .hdr-bot {
        display: none;
    }
    .header .hdr-bot {
        height: 100%;
    }
    .header .hdr-wrap {
        width: 100%;
        overflow: visible;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
    .header .hdr-logo {
        width: 50%;
        max-width: 200px;
        margin: 15px 0 0 1%;
    }
    .header .hdr-logo a {
        width: 100%;
        display: block;
    }
    .menu-nav {
        position: fixed;
        top: -120%;
        left: 0;
        z-index: 100;
        width: 100%;
        height: 100%;
        background-color: #FFF;
        transition: top 0.3s all;
        display: block;
    }
    .header .hdr-right {
        display: none;
    }
    .header .main-nav {
        width: 100%;
        height: 100%;
        margin: 0 auto;
        padding: 0;
        position: relative;
        overflow: hidden;
        display: block;
    }
    .header ul.nav-list {
        width: 90%;
        margin: 0 auto 20px;
        padding: 0;
        overflow: visible;
        list-style: none;
        display: block;
        font-size: 0.9em;
    }
    .header ul.nav-list > li {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        position: relative;
        overflow: hidden;
        border-bottom: solid 1px #FFDCC7;
        text-align: left;
    }
    .header ul.nav-list > li.nav-expand {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        position: relative;
        overflow: hidden;
        border-bottom: solid 1px #FFDCC7;
        text-align: left;
        background-color: #fff;
        transition: all 0.3s ease-in-out;
    }
    li.nav-expand input.expand-check[type=checkbox] {
        display: none;
    }
    li.nav-expand .dropbtn {
        width: 98% !important;
        margin: 0 auto;
        padding: 12px 0% 12px 2%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        background-color: #FFF;
        position: relative;
        font-size: 90%;
        font-weight: 700;
        transition: all 0.3s;
    }
    .li.nav-expand a, .nav-expand .nav-only {
        margin: 0 auto;
        padding: 12px 2%;
        font-size: 90%;
        font-weight: 700;
    }
    .li.nav-expand a, .nav-expand .nav-only:after {
        content: ' ';
        width: 20px;
        height: 20px;
        top: 10px;
        left: 90%;
        background-image: url("../img/arrow-nav_ore.svg");
        background-size: contain;
        background-repeat: no-repeat;
        transition: all 0.3s;
        display: block !important;
        z-index: 1;
    }
    li.nav-expand .dropbtn:after {
        opacity: 1;
        visibility: visible !important;
    }
    .nav-expand .nav-only:hover::after {
        top: 10px;
        background-color: #FFF5EF;
        left: 89%;
    }
    li.nav-expand:hover .dropbtn {
        background-color: #fff;
        border-radius: 0px;
    }
    li.nav-expand input.expand-check:unchecked ~ .dropbtn {
        background-color: #FFF;
    }
    .header ul.nav-list > li.no-ex {
        width: 100% !important;
        margin: 0;
        padding: 0;
        display: block;
        cursor: pointer;
        background-color: #FFF;
    }
    li.nav-expand .dropbtn:after {
        content: ' ';
        width: 20px;
        height: 20px;
        top: 10px;
        left: 90%;
        background-image: url(../img/toggle-btn.svg);
        background-size: contain;
        background-repeat: no-repeat;
        transform: rotateX(0deg);
        transition: all 0.3s;
        z-index: 1;
        display: block;
    }
    li.nav-expand .dropbtn.active:after {
        transform: rotate(45deg) !important;
    }
    li.nav-expand .dropbtn.active {
        background-color: #FFF5EF;
    }
    li.nav-expand .dropbtn.active {
        background-color: #FFF5EF;
    }
    .header ul.nav-list > li.no-ex > a {
        width: 90%;
        margin: 0 auto;
        padding: 10px 5%;
        display: block;
    }
    li.nav-expand .dropdown {
        width: 100%;
        margin: 0;
        padding: 0;
        position: relative;
        top: 100%;
        left: 0;
        z-index: 100;
        overflow: hidden;
        list-style: none;
        background-color: #fff;
        color: #333;
        height: 100%;
        opacity: 100%;
        transition: all 0s;
        display: none;
        border-radius: 0px;
    }
    li.nav-expand:hover .dropdown {
        padding: 0;
        height: 100%;
        opacity: 100%;
        min-height: auto;
        border-radius: 0px;
    }
    li.nav-expand .dropdown a {
        color: #FFF;
    }
    .dropdown .dd-wrap {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0;
        border-radius: 0px;
    }
    .dropdown .dd-wrap .dd-title {
        display: none;
    }
    .dropdown .dd-wrap .dd-list {
        width: 100%;
        margin: 0;
        padding: 0;
        position: relative;
        overflow: hidden;
    }
    .dropdown .dd-wrap .dd-list ul.dd-nav {
        width: 100%;
        margin: 0;
        padding: 0;
        position: relative;
        overflow: hidden;
        list-style: none;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        border-radius: 0px;
        gap: 0px;
    }
    .dropdown .dd-wrap .dd-list ul.dd-nav li {
        width: 100%;
        margin: 0 auto;
        border: none;
        border-top: solid 1px #FFDCC7;
        text-align: left;
        border-radius: 0px;
        background-color: #fff;
    }
    .dropdown .dd-wrap .dd-list ul.dd-nav li a {
        width: 100%;
        display: flex;
        margin: 0 auto;
        padding: 1.2% 7%;
        transition: all 0.3s;
        background-color: #fff;
        border-radius: 0px;
        color: #FC6813;
        font-size: 90%;
    }
    .dropdown .dd-wrap .dd-list ul.dd-nav li:hover a {
        background-color: #FFF5EF;
        border-radius: 0px;
    }
    .sp-nav {
        display: block;
    }
    ul.sp-lang-list {
        width: 90%;
        margin: 0 auto;
        padding: 0;
        position: relative;
        overflow: hidden;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        list-style: none;
    }
    ul.sp-lang-list li {
        width: 33%;
        margin: 0 0 10px;
    }
    ul.sp-lang-list li:before {
        content: "";
        width: 10px;
        height: 10px;
        display: inline-block;
        background-color: #333333;
        margin: 0 5px 0 0;
    }
    .sp-nav-bot {
        width: 100%;
        margin: 30px 0 0;
        padding: 0;
        position: relative;
        overflow: hidden;
        display: block;
    }
    .header ul.hdrsns-list {
        width: 100%;
        max-width: 200px;
        margin: 0 auto 30px;
        padding: 0;
        position: relative;
        list-style: none;
        display: flex;
        justify-content: space-between;
    }
    .header ul.hdrsns-list li {
        width: 25%;
        margin: 0;
        line-height: 100%;
    }
    .header ul.hdrsns-list li a {
        width: 100%;
        display: block;
    }
    .sp-nav-bot .info {
        width: 80%;
        margin: 0 auto;
        font-size: 80%;
        line-height: 180%;
    }
    .spnav-btn_menu {
        width: 90%;
        display: flex;
        flex-flow: column;
        margin: 10px auto 40px;
        justify-content: space-between;
        gap: 8px;
    }
    .spnav-btn_menu a, .spnav-btn_men .dc-sp_link {
        margin-bottom: 2%;
        text-decoration: none;
        color: #FC6813;
        display: flex;
        align-items: center;
        transition: 0.2s;
        font-size: 75%;
    }
    .spnav-btn_menu a img {
        width: 18px;
        height: 18px;
        margin-left: 4px;
    }
    .spnav-btn_menu a:hover, .dc-sp_link:hover {
        transition: 0.2s;
        color: #FFDD90;
    }
    .sub-spnav_list {
        width: 20%;
        margin: 4px 0 0 0;
        display: flex;
        gap: 30%;
    }
    .sub-spnav_list a img {
        margin: 0;
        width: 40px;
        height: 25px;
    }
    .sub-spnav_list a {
        width: 30px;
        height: 30px;
        background-color: #FFF5EF;
        border-radius: 30px;
    }
    .sub-spnav_list a:hover {
        background-color: #FFDD90;
    }
    /**SP NAV: BUTTONS***/
    .sub-nav {
        width: 100%;
        display: flex;
        justify-content: space-between;
    }
    .sub-nav .sub-logo {
        display: flex;
        align-items: center;
    }
    .sub-nav .sub-logo img {
        width: 100%;
        height: 30px;
        margin: 0px 0 0 8px;
        max-width: 200px;
    }
    .sub-btn {
        width: 60px;
        height: 60px;
        margin: 0 0 0 2px;
        background-color: #FFF;
        color: #333333;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        text-align: center;
    }
    .sub-btn.sb-access {
        display: none;
    }
    .sub-btn a {
        width: 100%;
        height: 100%;
        color: #333333;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        text-align: center;
    }
    .sub-btn .sb-flex {
        width: 100%;
        height: 100%;
        color: #333333;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        border-radius: 0px 0px 0px 10px;
        text-align: center;
        background-color: #FC6813;
    }
    .sub-btn .sb-icon {
        width: 50%;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
        display: block;
    }
    .sub-btn .access-icon {
        width: 30%;
    }
    .sub-btn .ham-icon {
        width: 50%;
    }
    .sub-btn .sb-txt {
        width: 100%;
        margin: 0;
        padding: 0;
        position: relative;
        overflow: hidden;
        font-size: 70%;
        line-height: 100%;
    }
    #menu-wrapper {
        cursor: pointer;
        z-index: 100;
    }
    /*==========hamburger==========*/
    #menu-wrapper.active {
        position: fixed;
        top: 0;
        right: 0;
    }
    #hamburger-menu {
        position: relative;
        width: 25px;
        height: 20px;
        margin: 0 auto 5px;
    }
    #hamburger-menu span {
        opacity: 1;
        left: 0;
        display: block;
        width: 100%;
        height: 2px;
        border-radius: 10px;
        color: black;
        background-color: #fff;
        position: absolute;
        transform: rotate(0deg);
        transition: .3s all;
    }
    #hamburger-menu span:nth-child(1) {
        top: 0;
    }
    #hamburger-menu span:nth-child(2) {
        top: 9px;
        background-color: #FFDCC7;
    }
    #hamburger-menu span:nth-child(3) {
        top: 18px;
    }
    #hamburger-menu.open span:nth-child(1) {
        transform: translateY(9px) rotate(135deg);
    }
    #hamburger-menu.open span:nth-child(2) {
        opacity: 0;
        transform: translateX(-60px);
    }
    #hamburger-menu.open span:nth-child(3) {
        transform: translateY(-9px) rotate(-135deg);
    }
    /*----------------パンクズ*/
    .breadcrumbs {
        width: 98%;
        margin: 10px auto;
    }
    .breadcrumbs a, .open-page {
        font-size: 70%;
    }
    /*----------------サブコンテンツ*/
    .sub-top_wrap {
        width: 98%;
        margin: 14px auto 0;
    }
    .sub-top_title {
        margin: 0;
        padding: 0;
        font-size: 140%;
        font-weight: 700;
    }
    .sub-top_title_wrap img {
        width: 50%;
        height: 50px;
    }
    .content-wrap {
        width: 90%;
    }
    .sub-img_box {
        height: 130px;
        border-radius: 5px;
    }
    .sub-top_title_wrap img {
        height: 40px;
    }
    /*----------------サブ下メニューリスト*/
    .sub-nav_title {
        width: 60%;
        margin: 0px auto 20px;
        padding: 8px;
        border-radius: 5px;
        text-align: center;
        background-color: #fff;
        color: #FC6813;
        font-size: 100%;
    }
    .sub-nav-list_sp-wrap {
        width: 80%;
        margin: 80px auto 0;
        background-color: #FFDCC7;
        border-radius: 5px;
        padding: 20px 10px;
        display: flex;
        flex-flow: column;
    }
    .sub-nav-list_sp {
        width: 98%;
        margin: 0 auto;
        padding: 0;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
    }
    .sub-nav-list_sp li {
        width: 100%;
        min-width: auto;
    }
    .sub-nav-list_sp li a {
        min-height: 7.5vh;
        font-size: 85%;
    }
    /*-----------------サブコンテンツ_リスト*/
    .box-wrap_content {
        width: 98%;
    }
    /*----------------サブメニュースマホ*/
    .sub-nav-list {
        display: none;
    }
    /*-----------------サブコンテンツ説明*/
    .cap-imgtxt {
        display: flex;
        flex-flow: column;
        gap: 20px;
    }
    .cap-imgtxt img {
        width: 100%;
        margin: 0 auto;
        border-radius: 5px;
    }
    /*----------------サブコンテンツ*/
    .list_box li {
        flex-flow: column;
        gap: 10px;
    }
    .box-txt, .box-title {
        width: 100%;
        line-height: 220%;
    }
    .box-title {
        padding: 4px;
        font-size: 90%;
    }
    .list_ore-number {
        margin: 20px 0;
    }
    .list_ore-number li:before {
        top: 3px;
    }
    /*=====フッター===========================*/
    .footer {
        padding: 80px 0 0;
        background: linear-gradient(180deg, rgba(255, 228, 213, 1) 0%, rgba(255, 245, 239, 1) 30%);
    }
    .ftr-access_list li {
        gap: 8px;
    }
    .ftr-logo img {
        max-width: 240px;
    }
    .googlemap-wrap {
        height: 230px;
    }
    .pagetop {
        width: 50px;
        height: 55px;
        bottom: 50px;
        right: 0px;
        z-index: 1;
    }
    .pagetop:hover {
        transition: 0.3s;
        transform: scale(1.0);
    }
    .ftr-left, .ftr-right {
        width: 98%;
        margin: 0 auto;
    }
    .ftr-access_list .box-title {
        width: 30%
    }
}