@charset "UTF-8";
@import url(typho.css);
@font-face {
    font-family: icomoon;
    font-style: normal;
    font-weight: 400;

    font-display: block;
    src: url("fonts/icomoon.eot?78o7gn");
    src: url("fonts/icomoon.eot?78o7gn#iefix") format("embedded-opentype"),
    url("fonts/icomoon.ttf?78o7gn") format("truetype"),
    url("fonts/icomoon.woff?78o7gn") format("woff"),
    url("fonts/icomoon.svg?78o7gn#icomoon") format("svg");
}
@font-face {
    font-family: iconfont;
    font-style: normal;
    font-weight: 400;

    font-display: block;
    src: url("fonts/iconfont.woff") format("woff");
}
[class*=" icon-"],
[class^="icon-"] {
    font-family: icomoon !important;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    line-height: 1;

    text-transform: none;

    speak: never;
}
.icon-arrow_left:before {
    content: "\e903";

    color: #1A78E6;
}
.icon-arrow_btm:before {
    content: "\e900";

    color: #e0f4fa;
}
.icon-arrow_top:before {
    content: "\e901";

    color: #e0f4fa;
}
.icon-arrow_right:before {
    content: "\e902";

    color: #1A78E6;
}
.icon-phone:before {
    content: "\e942";
}
.icon-plus:before {
    content: "\ea0a";
}
.icon-minus:before {
    content: "\ea0b";
}
.icon-facebook:before {
    content: "\ea90";
}
.icon-instagram:before {
    content: "\ea92";
}
.icon-twitter:before {
    content: "\ea96";
}
.icon-new-tab:before {
    content: "\ea7e";
}
#header .icon {
    line-height: 1;

    -webkit-transition: color .3s ease;
            transition: color .3s ease;
}
#header .icon::before,
.contact_box .icon::before {
    font-family: iconfont !important;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1;
}
.icon.-pin::before {
    content: "\EA01";
}
.icon.-mail::before {
    content: "\EA02";
}
.icon.-mobile::before {
    content: "\EA03";
}
.icon.-arrow::before {
    content: "\EA04";
}
.icon.-twitter::before {
    content: "\EA05";
}
.icon.-facebook::before {
    content: "\EA06";
}
.icon.-instagram::before {
    content: "\EA07";
}
.icon.-phone::before {
    content: "\EA08";
}
.icon.-device::before {
    content: "\EA09";
}
.icon.-calendar::before {
    content: "\EA0A";
}
.icon.-equal::before {
    content: "\EA0B";
}
.icon.-plus::before {
    content: "\EA0C";
}
.icon.-device2::before {
    content: "\EA0D";
}
.icon.-cross::before {
    content: "\EA0E";
}
#wrapper {
    width: 100%;
    min-width: 1150px;
    margin: 0 auto;
}
.inner {
    width: 1150px;
    padding: 0 15px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.s_inner {
    width: 798px;
    padding: 0 15px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.inner:after {
    display: block;
    clear: both;

    content: "";
}
.switch-pc {
    display: block;
}
.switch-sp {
    display: none;
}
.fl_between {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: space-between;
    -ms-flex-pack: space-between;
    flex-wrap: wrap;
    justify-content: space-between;
}
.fl_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    flex-wrap: wrap;
}
#header {
    width: 100%;
}
#header .head_m {
    position: fixed;
    top: 0;
    z-index: 999;

    width: 100%;
    height: 58px;

    transition: .5s;
    transform: translateY(0);

    background-color: #000;
}
#header .head_m.hide {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
}
#header .head_m {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
#header .head_m.sticky.fixed {
    position: fixed;
    top: 0;
    z-index: 4;

    display: block;
    width: 100%;

    -webkit-animation-name: stickySlideDown;
            animation-name: stickySlideDown;
}
#header .head_m.normal.fixed {
    position: fixed;
    top: 0;
    z-index: 4;

    width: 100%;
    min-width: 1150px;
}
#header .head_m::after {
    display: block;
    clear: both;

    content: "";
}
#header .logo_mark {
    float: left;
    width: 40px;
    padding-top: 8.5px;
}
#header .logo_mark a {
    display: block;

    line-height: 1;
}
#header .h_nav {
    position: relative;

    float: right;
    width: 572px;
}
#header .h_nav li {
    float: left;
    margin-right: 24px;
}
#header .h_nav li a {
    display: block;

    color: #fff;
}
#header .h_nav li .img-svg {
    width: 12px;
}
#header .h_nav li.ico {
    margin-right: 20px;
}
#header .h_nav li.ico2 .img-svg {
    width: 13px;
}
@media all and (-ms-high-contrast: none) {
    #header .h_nav li.ico2 .img-svg {
        width: 14px;
    }
}
#header .h_nav li.ico a:hover {
    opacity: 1;
}
#header .h_nav li.ico a:hover .icon {
    opacity: 1;
    color: #1A78E6;
}
#header .h_nav li .icon {
    vertical-align: middle;
}
#header .h_nav li .icon.-pin {
    font-size: 1.05rem;
}
#header .h_nav li .icon.-mail {
    font-size: .75rem;
}
#header .h_nav li .icon.-mobile {
    margin-right: 6px;

    font-size: 1.1rem;

    color: #fff;
}
#header .h_nav .tel_number {
    margin-top: -4px;

    font-size: 16px;
    font-weight: 500;

    letter-spacing: 2px;
}
#header .h_nav .tel_sm {
    font-size: 10px;

    letter-spacing: 1.2px;
}
#header .h_nav .h_btn {
    width: 165px;
    margin-top: 12px;
    margin-bottom: 13px;
}
#header .h_nav .h_btn .btn-primary {
    display: table;
    width: 100%;
    height: 32px;

    font-size: 14px !important;
}
#header .h_nav .h_btn:first-child {
    width: 215px;
    margin-right: 12px;
}
#header .h_nav .tb_blog {
    display: flex;
    height: 34px;

    line-height: 34px;

    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}
#header .h_nav .tb_blog span {
    letter-spacing: 1.2px;
}
#header .h_nav .tb_blog span.icon {
    padding-right: 5px !important;
}
@media only screen and (max-width: 768px) {
    #header .head_m {
        position: fixed;
        top: 0;

        width: 100%;
        height: 50px;
    }
    #header .h_nav li {
        margin-right: 25px;
    }
    .tel-span {
        margin-top: 4px;
    }
    #header .h_nav li .img-svg {
        width: 13px;
    }
    #header .h_nav li:nth-child(2) .img-svg {
        width: 14px;
    }
}
@media only screen and (max-width: 480px) {
    #header .h_nav li {
        margin-right: 21px;
    }
}
.btn-toggle-menu {
    position: absolute;
    top: 20px;
    right: 5px;

    display: block;
    width: 16px;
    height: 16px;

    cursor: pointer;
}
.btn-toggle-menu .line {
    position: absolute;
    left: 0;

    display: block;
    width: 16px;
    height: 2px;

    -webkit-transition: all .4s;
       -moz-transition: all .4s;
            transition: all .4s;

    border-radius: 0;
    background: #1A78E6;
}
.btn-toggle-menu .line.line-1 {
    top: 0;
}
.btn-toggle-menu .line.line-2 {
    top: 50%;

    margin-top: -1px;
}
.btn-toggle-menu .line.line-3 {
    top: 100%;

    margin-top: -1px;
}
.btn-toggle-menu.collapsed .line-1 {
    top: 50%;

    -webkit-transform: translateY(-65%) translateX(0) rotate(45deg);
       -moz-transform: translateY(-65%) translateX(0) rotate(45deg);
            transform: translateY(-65%) translateX(0) rotate(45deg);
}
.btn-toggle-menu.collapsed .line-2 {
    opacity: 0;
}
.btn-toggle-menu.collapsed .line-3 {
    top: 50%;

    -webkit-transform: translateY(-30%) translateX(0) rotate(-45deg);
       -moz-transform: translateY(-30%) translateX(0) rotate(-45deg);
            transform: translateY(-30%) translateX(0) rotate(-45deg);
}
#header .head_logo {
    height: 58px;
    margin-top: 58px;

    background-color: #fff;
}
#header .logo {
    padding: 17px 0;

    font-size: 24px;
}
#header .logo a {
    display: block;

    line-height: 1;
}
.txt_blue {
    color: #1A78E6;
}
#header .logo img {
    vertical-align: middle;
}
#header .logo .c_logo {
    position: relative;
    top: -2px;

    width: 123px;
    margin-left: 27px;
}
.tel-span {
    line-height: 1;

    color: #fff !important;
}
a.sou-btn {
    color: #1A78E6 !important;
    background-color: #fff;
}
.icon-left {
    padding-left: 0;
}
.yan-icon {
    font-size: 1.25rem;
}
#header .h_nav .menu_iconsp {
    display: flex;
    padding: 12px 0;

    align-items: center;
    flex-wrap: wrap;
}
#gnav {
    position: fixed;
    top: 58px;
    z-index: 9999;

    display: none;
    width: 100%;
    min-width: 1150px;
}
#gnav.sticky {
    -webkit-transition: .5s;
            transition: .5s;
    -webkit-animation-duration: .5s;
            animation-duration: .5s;
}
#gnav.sticky.fixed {
    position: fixed;
    top: 0;
    z-index: 4;

    display: block;
    width: 100%;

    -webkit-animation-name: stickySlideDown;
            animation-name: stickySlideDown;
}
@-webkit-keyframes stickySlideDown {
    0% {
        transform: translateY(-100%);

        opacity: .7;
    }
    100% {
        transform: translateY(0);

        opacity: 1;
    }
}
@keyframes stickySlideDown {
    0% {
        transform: translateY(-100%);

        opacity: .7;
    }
    100% {
        transform: translateY(0);

        opacity: 1;
    }
}
.g_navi {
    z-index: 4;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 58px;

    background-color: #1A78E6;

    align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.g_navi > ul > li {
    float: left;
    margin-left: 20px;
}
.g_navi > ul > li:first-child {
    margin-left: 0;
}
#gnav li a {
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-transition: all .3s ease-in;
            transition: all .3s ease-in;
}
.g_navi li p a {
    position: relative;
    z-index: 1;

    display: block;
    padding: 17px 0;

    font-size: 14px;
    font-weight: 500;

    letter-spacing: -.65px;

    color: #fff;
}
.g_navi li ul.dropdown {
    position: absolute;
    top: 57px;
    left: 0;

    width: 100%;
    padding: 16px 0 20px;

    text-align: center;
    pointer-events: none;

    background-color: #f5f5f5;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.g_navi li ul.dropdown.open {
    z-index: 2;

    pointer-events: auto;

    opacity: 1;
}
.g_navi li ul.dropdown li {
    position: relative;

    display: inline-block;
    height: auto;
    margin-right: 40px;

    color: #333;
    border: 0;
}
.g_navi li ul.dropdown li:last-child {
    margin-right: 0;
}
.g_navi ul.dropdown .s_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;

    flex: 1;
    -ms-flex-flow: column;
        flex-flow: column;
}
.g_navi ul.dropdown .s_tit {
    margin-bottom: 2px;

    font-size: 12px;
    font-weight: 700;

    color: #1A78E6;
}
.g_navi ul.dropdown .s_tit_jp {
    margin-bottom: 5px;

    font-size: 16px;
    font-weight: 600;
}
.g_navi ul.dropdown .s_copy {
    width: 170px;
    margin-bottom: 10px;

    font-size: 10px;

    text-align: left;
}
.g_navi ul.dropdown .s-btn-outline {
    position: relative;

    width: 121px;
    height: 26px;
    margin-top: auto;

    align-self: center;
}
.icon-right:after {
    position: absolute;
    top: 50%;
    right: 8px;

    content: "\e902";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    color: #1A78E6;
}
.g_navi li ul.dropdown li a:hover {
    opacity: .7;
}
.txt_b {
    font-weight: 700;

    color: #1A78E6;
}
#main_visual {
    position: relative;

    background-color: #000;
}
#main_visual.bg_blk {
    background-color: #000;
}
#main_visual .pic {
    position: relative;

    max-width: 1280px;
    margin: 0 auto;
}
#main_visual.ovl .pic {
    background-color: #000;
}
#main_visual.ovl .pic img {
    opacity: .7;
}
.obj-fit img {
    font-family: "object-fit: cover;";
}
#main_visual .pic img {
    width: 100%;
    height: 400px;
}
#main_visual .inner {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    height: 100%;

    text-align: center;
}
#main_visual .copy_wrap {
    position: absolute;
    top: 49%;
    left: 50%;

    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
#main_visual .pg_title {
    color: #1A78E6;
    font-size: 30px;
    font-weight: 700;
}
#main_visual .pg_title_en {
    display: block;
    padding-top: 6px;

    font-size: 32px;
    font-weight: 500;
    line-height: 1.65;

    color: #fff;
}
#main_visual .copy {
    margin-top: 20px;

    font-size: 12px;

    color: #fff;
}
#content.top {
    border-top: 10px solid #bba170;
}
#content {
    border-top: 22px solid #bba170;
}
.section {
    position: relative;

    margin: 30px 0 60px;
}
.section:after {
    display: block;
    clear: both;

    content: "";
}
.bold {
    font-weight: 700;
}
.sec_bg {
    position: relative;
}
.bg_white {
    background-color: #fff;
}
.title {
    margin: 30px 0;

    text-align: center;

    color: #1A78E6;
}
.title_en {
    display: block;

    font-size: 24px;
    font-weight: 500;
    line-height: 1.7;

    color: #000;
}
.title_sm {
    margin: 30px 0;

    font-size: 30px;

    text-align: center;

    color: #1A78E6;
}
.copy_lg {
    font-size: 18px;
}
.copy_lg span {
    font-weight: 500;
}
.btn_wrap {
    margin: 30px 0;

    text-align: center;
}
.btn_gp .btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    text-align: center;

    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}
.btn {
    margin-bottom: 10px;

    line-height: 1;
}
.btn a,
.btn-outline a,
.btn_group li a,
.s-btn-outline,
.submit_btn {
    position: relative;

    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
    width: 100%;
    height: 100%;
    box-sizing: border-box;

    font-size: 12px;

    letter-spacing: .1em;

    color: #fff !important;
    background-color: #1A78E6;

    align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.btn a {
    width: 146px;
    height: 36px;

    font-weight: 500;

    letter-spacing: .2em;
}
.btn.md a {
    width: 381px;
    height: 52px;

    font-size: 18px;
}
.btn.lg a {
    width: 492px;
    height: 67px;

    font-size: 19px;
}
.btn.lg.cosmetic a {
    width: 492px;
    height: 80px;

    font-size: 19px;
    line-height: 1.5;

    text-align: center;
}
.s-btn-outline {
    width: 121px;
    height: 26px;

    color: #1A78E6 !important;
    border: 1px solid #1A78E6;
    background-color: #fff;
}
.btn-outline:not(:last-of-type) {
    margin-bottom: 10px;
}
.btn-outline a {
    position: relative;

    width: 552px;
    height: 68px;

    font-size: 24px;
    font-weight: 500;

    letter-spacing: .02em;

    color: #1A78E6 !important;
    border: 3px solid #1A78E6;
    background-color: #fff;
}
.btn-outline a::after {
    position: absolute;
    top: 50%;
    right: 20px;

    font-family: icomoon !important;
    font-size: .8em;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    line-height: 1;

    content: "\e902";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    text-transform: none;
}
.btn-outline.md a {
    width: 296px;
    height: 36px;

    font-size: 12px;
}
.btn-outline.md a::after {
    right: 10px;
}
.btn-outline.gray a {
    width: 245px;
    height: 50px;

    font-size: 22px;
    font-weight: 400;

    color: #939393 !important;
    border-color: #939393;
}
.btn-outline.gray a::after {
    content: "";
}
.btn_list {
    text-align: center;
}
.btn_list.mgb {
    margin-top: 20px;
}
.btn_list.mgb .btn-outline.gray {
    margin-top: 76px;
}
.btn_list.mgb .btn-outline:not(:last-of-type) {
    margin-bottom: 27px;
}
.btn_close {
    width: 122px;
    height: 36px;
    margin-bottom: 10px;
    box-sizing: border-box;

    font-size: 15px;
    line-height: 27px;

    cursor: pointer;
    text-align: center;
    letter-spacing: .1em;

    color: #939393;
    border: 3px solid #939393;
    background-color: #fff;
}
.btn-primary {
    display: table;

    text-align: center;

    color: #fff !important;
    background-color: #1A78E6;
}
.btn-primary2 {
    display: table;

    text-align: center;

    color: #1A78E6 !important;
    background-color: #fff !important;
}
.btn-primary span {
    display: table-cell;

    vertical-align: middle;
}
.bg_box {
    padding: 40px 50px 60px;
    box-sizing: border-box;

    border-radius: 20px;
    background-color: #f3f3f3;
}
.bg_box .lead {
    text-align: center;
}
.tab_menu {
    width: 684px;
    padding-top: 3px;
    padding-left: 3px;
    margin: 38px auto 45px;
    box-sizing: border-box;

    text-align: center;
}
.tab_menu li {
    position: relative;

    float: left;
    width: 342px;
    height: 68px;
    padding: 11px 28px;
    margin-top: -3px;
    margin-left: -3px;

    font-size: 22px;

    cursor: pointer;
    text-align: left;

    color: #1A78E6;
    border: 3px solid #1A78E6;
    background-color: #fff;
}
.tab_menu:not(.slider-nav) li {
    letter-spacing: .2em;
}
.tab_menu li::after {
    position: absolute;
    top: 50%;
    right: 20px;

    font-family: icomoon !important;
    font-size: .8rem;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    line-height: 1;

    content: "\e900";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    text-transform: none;
}
.tab_menu li.active {
    color: #fff;
    background-color: #1A78E6;
}
.tab_menu li.active::after {
    color: #e0f4fa;
}
.tab_content {
    display: none;
}
.tab_content.current {
    display: block;
}
.sec_desc {
    padding: 0 80px;
    margin: 52px 0 55px;
}
.card_wrap:not(:first-of-type) {
    margin-top: 70px;
}
.card_wrap .tit {
    margin: 12px 0;

    font-size: 32px;
    font-weight: 700;

    text-align: center;

    color: #1A78E6;
}
.s_card_gp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    flex-wrap: wrap;
}
.s_card {
    padding: 0 8px;
    margin-top: 15px;
}
.s_card_gp .s_card {
    box-sizing: border-box;
}
.s_card .card_in {
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    flex-direction: column;

    text-align: center;

    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-color: #1A78E6;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
       -moz-box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
            box-shadow: 0 3px 6px rgba(0, 0, 0, .16);

    -webkit-box-direction: column;
}
.s_card .img {
    display: inline-flex;
    height: 160px;

    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-color: #fff;

    align-items: center;
    justify-content: center;
}
.s_card .img img {
    width: 97px;
}
.s_card .s_card_body {
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 84px;
    padding: 12.5px 15px;

    background-color: #1A78E6;

    align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: start;
    flex: 1 1 auto;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    justify-content: start;
}
.s_card .name {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5;

    text-align: left;
    letter-spacing: -1px;

    color: #fff;
}
.s_card .s_card_body:after {
    position: absolute;
    top: 50%;
    right: 11px;

    display: block;

    font-family: icomoon !important;
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;

    content: "\e902";
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    color: #e0f4fa;
}
.s_card_gp.col_1 {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.s_card_gp.col_1 .s_card_body {
    min-height: 94px;
    padding-left: 25px;
}
.s_card .pic {
    padding: 0;

    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-color: #fff;
}
.s_card .pic img {
    width: 100%;
    height: 100%;

    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.trouble_list .s_card .name {
    font-size: 17px;
}
.bg_box.box_md {
    padding: 62px 44px 85px;
}
.box_md .card_wrap:not(:first-of-type) {
    margin-top: 80px;
}
.box_md .s_card {
    margin-top: 32px;
}
.s_card .s_card_body.md {
    min-height: 62px;
}
.s_card .s_card_body.md .name {
    font-size: 18px;
}
.sec_equipment .s_card .pic {
    height: 182px;
}
.fnd_link {
    margin-top: 32px;
}
.fnd_link li {
    padding-bottom: 5px;

    font-size: 18px;

    text-align: right;

    color: #1A78E6;
}
.fnd_link li a {
    color: #1A78E6;
}
.fnd_link li span {
    position: relative;
    top: -1px;

    display: inline-block;
    margin-left: 10px;

    vertical-align: middle;
}
.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    flex-wrap: wrap;
}
.col {
    float: left;
    margin-left: 16px;
}
.col_1 {
    width: 100%;
    margin-left: 0;
}
#ft_tel {
    min-height: 88px;
    margin-top: 140px;

    color: #fff;
    background-color: rgba(0, 0, 0, .5);
}
#ft_tel .tel_col {
    display: table;
    float: left;
    min-height: 88px;
}
#ft_tel li {
    display: table-cell;

    vertical-align: middle;
}
#ft_tel .tel_copy {
    padding-right: 70px;

    font-size: 21px;
}
#ft_tel .icon_mobile::before {
    position: relative;
    top: 8px;

    display: inline-block;

    font-family: iconfont !important;
    font-size: 1.86rem;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1;

    content: "\EA03";
    vertical-align: top;
}
#ft_tel .tel {
    display: inline-block;
    padding-left: 13px;

    font-size: 28px;
}
#ft_tel .tel .time {
    display: block;

    font-size: 12px;

    text-align: center;
}
#ft_tel .btn_gp {
    display: table;
    float: right;
    height: 88px;
}
#ft_tel .btn-primary {
    width: 234px;
    height: 48px;
    margin-left: 24px;

    font-size: 14px;
}
#ft_breadcrumb {
    height: 40px;

    background-color: #000;
}
#ft_breadcrumb li {
    float: left;
    padding: 9px 0 5px 15px;

    font-size: 10px;

    color: #cecece;
}
#ft_breadcrumb li a {
    display: block;

    color: #cecece;
}
#ft_breadcrumb li a:after {
    display: inline-block;
    margin-left: 15px;

    font-family: icomoon !important;
    font-size: 12px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    line-height: 1;

    content: "";
    content: "\e902";
    vertical-align: middle;
    text-transform: none;

    color: #646464;

    speak: never;
}
#ft_breadcrumb .ico_logo img {
    width: 22px;
}
#footer {
    position: relative;

    padding: 0 0 10px;

    color: #fff;
    background-color: #000;
}
#footer .inner {
    position: relative;
}
#footer .ft_home {
    padding-top: 20px;

    font-size: 12px;
    font-weight: 700;
}
.ft_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 85px;
}
.ft_nav ul:not(:first-of-type) {
    margin-left: 85px;
}
.ft_nav ul li ul {
    margin-left: 0;
}
.ft_nav li {
    padding-top: 15px;

    font-size: 12px;
}
.ft_home a,
.ft_nav a {
    display: block;
    clear: both;

    color: #fff;
}
.ft_nav li ul li {
    padding-top: 5px;
    padding-left: 12px;
}
.ft_nav .ft_search_clinic ul {
    float: left;
}
.ft_nav .ft_search_clinic ul:last-child {
    margin-left: 48px;
}
.ft_sns {
    position: absolute;
    bottom: 50px;
    left: 0;
}
.ft_sns li {
    float: left;

    font-size: 23px;
}
.ft_sns li:not(:first-of-type) {
    margin-left: 22px;
}
.ft_sns li a {
    color: #989898;
}
.ft_logo_mark {
    margin-bottom: 50px;

    text-align: center;
}
.ft_logo_mark img {
    width: 85px;
}
.copyright {
    font-size: 10px;

    text-align: center;

    color: #bba170;
}
.anchor {
    position: relative;
    top: -90px;

    display: block;
    visibility: hidden;
}
.swiper-button-next,
.swiper-button-prev {
    color: transparent !important;
}
@media only screen and (min-width: 769px) {
    .fl_md_between {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: space-between;
        -ms-flex-pack: space-between;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .fl_center {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        flex-wrap: wrap;
        justify-content: center;
    }
    .g_navi {
        z-index: 4;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .g_navi ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: space-between;
        -ms-flex-pack: space-between;
        justify-content: space-between;
    }
    .g_navi li ul.dropdown {
        z-index: 0;

        -webkit-transition: all .3s ease-in;
                transition: all .3s ease-in;
        pointer-events: none;

        opacity: 0;
    }
    .g_navi li ul.dropdown li.switch-sp {
        display: none;
    }
    .g_navi ul:not(.dropdown) li:nth-child(1) p {
        margin-right: 20px;
    }
    .g_navi ul:not(.dropdown) li:nth-child(2) p {
        margin-right: 12px;
    }
    .g_navi ul:not(.dropdown) li:nth-child(4) p {
        margin-right: 8px;
    }
    .g_navi ul:not(.dropdown) li:nth-child(5) p {
        margin-right: 8px;
    }
    .g_navi ul:not(.dropdown) li:first-child p a {
        margin-left: 10px;
    }
    .g_navi li .parents a:after {
        margin-left: 5px;

        font-family: icomoon !important;
        font-size: .65rem;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        font-style: normal;
        font-weight: 400;
        line-height: 1;

        content: "\e900";

        opacity: .69;
        color: #fff;
    }
    .g_navi li.active .parents a::after {
        content: "\e901";
    }
    br.sp {
        display: none;
    }
    .btn_group ul li:nth-child(3n) {
        margin-right: 0;
    }
    .col_md_6 .s_card {
        width: 16.6%;
    }
    .col_md_4 .s_card {
        width: 25%;
        padding: 0 16px;
    }
    .col_md_3 .s_card {
        width: 33.3%;
        padding: 0 16px;
    }
    .s_card_gp.col_1 .s_card {
        width: 338px;
    }
    .s_card_gp.col_1 .img img {
        width: 192px;
    }
    .trouble_list .s_card img {
        width: 89px;
    }
    .s_card .img_lg img {
        position: relative;
        top: -8px;
        left: -12px;

        width: 108px;
    }
    .s_card .img_sm img {
        width: 77px;
    }
    #ft_breadcrumb .ico_logo {
        padding-left: 0;
    }
}
@media only screen and (max-width: 768px) {
    #wrapper {
        min-width: inherit;
    }
    .inner {
        max-width: 100%;
        padding: 0;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .s_inner {
        width: 100%;
    }
    .inner-fluid {
        padding: 0 17px;
    }
    .switch-pc {
        display: none;
    }
    .switch-sp {
        display: block;
    }
    br.pc {
        display: none;
    }
    br.sp {
        display: block;
    }
    .anchor {
        top: -105px;
    }
    #header {
        width: 100%;
        min-height: 100px;
    }
    #header .head_m.inView {
        position: fixed;
        z-index: 3;

        width: 100%;
        height: 50px;
    }
    #header .logo_mark {
        width: 37px;
        padding-top: 4px;
        margin-left: 6px;
    }
    #header.inner {
        width: 100%;
    }
    #header .h_nav {
        width: 205px;
    }
    #header .h_nav li a {
        line-height: 1;
    }
    #header .h_nav li.ico {
        padding: 12px 0;
    }
    #header .h_nav li .icon.-pin {
        font-size: 1.5rem;
    }
    #header .h_nav li .icon.-mail {
        font-size: 1.12rem;
    }
    #header .h_nav li .icon.-mobile {
        font-size: 1.5rem;
    }
    #header .h_nav li span {
        vertical-align: middle;
    }
    #header .h_nav li span.tel_number {
        display: none;
    }
    .btn-toggle-menu {
        top: 15px;
        right: 21px;

        width: 19.5px;
        height: 18px;
    }
    .btn-toggle-menu .line {
        width: 19.5px;
        height: 2px;
    }
    #header .head_logo {
        height: 47.5px;
        padding-top: 50px;
        margin-top: 0;
    }
    #header .logo {
        padding: 16px 0;

        font-size: 17px;
    }
    #header .logo .c_logo {
        position: relative;
        top: -2px;

        display: inline-block;
        width: 92px;
        margin-left: 21px;
    }
    #header .logo img {
        vertical-align: middle;
    }
    #header .nav_wrap {
        float: none;
        width: 100%;
    }
    .yan-icon {
        width: 30px;
        height: 30px;
        margin-right: -18px;

        font-size: 1.5rem;
    }
    .ph-icn {
        color: #fff !important;
    }
    .menu_iconsp li a img {
        width: 13px;
    }
    #header .head_in {
        padding-bottom: 0;
    }
    .nav_wrap {
        position: static;
    }
    #gnav {
        position: fixed;
        top: 50px;
        z-index: 100;

        display: none;
        width: 100%;
        height: 100vh;
        min-width: inherit;
        padding-bottom: 50px;
        margin: 0;
        overflow-y: auto;
        clear: both;

        border-top: 1px solid #333;
        background-color: #000;

        -webkit-overflow-scrolling: touch;
    }
    #gnav.sticky.fixed {
        display: none;
    }
    .g_navi {
        height: auto;
        flex-direction: column;

        background-color: #000;
    }
    #gnav ul {
        width: 100%;
        padding: 0 0 215px;
    }
    #gnav li {
        float: none;
        margin-left: 0;

        border-bottom: 1px solid #333;
    }
    #gnav li p {
        position: relative;

        padding: 21px 20px;
        margin-bottom: 0;

        font-size: 14px;
        line-height: 1;
    }
    #gnav li a {
        position: relative;

        display: block;
        padding: 0;
    }
    #gnav li p a {
        padding: 0 10px 0 0;
        margin-left: 0;
    }
    #gnav li p.parents {
        position: relative;
    }
    #gnav li.menu-sp-tog .tog_icn {
        position: absolute;
        right: 0;

        width: 18px;
        height: 18px;
        margin: 0;

        text-align: center;
    }
    #gnav li.menu-sp-tog .tog_icn:after,
    #gnav li.menu-sp-tog .tog_icn:before {
        position: absolute;
        top: 50%;
        right: 0;
        bottom: 0;
        left: 0;

        display: block;
        margin: 0 auto;

        content: "";
        transition: transform .25s ease-out;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background-color: #1A78E6;
    }
    #gnav li.menu-sp-tog .tog_icn:before {
        width: 14px;
        height: 1px;
    }
    #gnav li.menu-sp-tog .tog_icn:after {
        width: 1px;
        height: 14px;
    }
    #gnav li.menu-sp-tog > p.open .tog_icn:before {
        -webkit-transform: rotate(0);
                transform: rotate(0);
    }
    #gnav li.menu-sp-tog > p.open .tog_icn:after {
        background-color: transparent;
    }
    #gnav li ul.dropdown {
        position: relative;
        top: 0;
        left: 0;

        display: none;
        width: 100%;
        padding: 5px 0 20px;

        text-align: left;
        pointer-events: auto;

        opacity: 1;
        background: #333;
    }
    #gnav li ul.dropdown li {
        width: 100%;
        margin: 15px 0 0;

        font-size: 11px;
        line-height: 1.8;

        color: #cecece;
        border-bottom: none;
    }
    #gnav li ul.dropdown .s_info {
        display: none;
    }
    #gnav li ul.dropdown li a {
        padding: 0 28px;

        color: #cecece;
    }
    #gnav .sns ul {
        padding: 0 0 20px;

        text-align: center;
    }
    #gnav .sns ul li {
        display: inline-block;

        border-bottom: none;
    }
    #gnav .sns a {
        padding: 0 5px;

        font-size: 22px;

        color: #989898;
    }
    #main_visual.ovl .pic img:after {
        opacity: .5;
    }
    #main_visual .pic img {
        width: 100%;
        height: 67vw;
    }
    #main_visual .copy_wrap {
        top: 50%;

        width: 100%;
    }
    #main_visual .pg_title_en {
        padding-top: 0;

        font-size: 23px;
    }
    #content {
        border-width: 12.5px;
    }
    #main {
        padding-bottom: 43px;
    }
    .fl_center_sp {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;

        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        justify-content: center !important;
    }
    .bd-sp-top {
        margin: 2.8em 0;

        border-top: 1px solid #777;
    }
    .pic-wide {
        margin: 0 -15px;
    }
    .section {
        margin: 15px 0 30px;
    }
    .title {
        margin-bottom: 20px;

        font-size: 24px;
    }
    .title_sm {
        margin-bottom: 20px;

        font-size: 18px;
    }
    .title_en {
        font-size: 18px;
    }
    .copy_lg {
        font-size: 14px;
    }
    .btn_wrap {
        margin-bottom: 10px;
    }
    .btn a {
        height: 34px;
        max-width: 138px;
    }
    .btn.lg a,
    .btn.md a {
        height: 45px;
        max-width: 274px;

        font-size: 12px;
    }
    .btn.lg.cosmetic a {
        height: 50px;
        max-width: 274px;

        font-size: 12px;

        letter-spacing: 0;
    }
    .btn_close {
        width: 79px;
        height: 23px;

        font-size: 10px;
        line-height: 19px;

        border-width: 1.5px;
    }
    .btn-outline a {
        height: 34px;
        max-width: 274px;

        font-size: 12px;

        border-width: 1.5px;
    }
    .btn-outline.gray a {
        height: 34px;
        max-width: 134px;

        font-size: 10px;
    }
    .btn-outline a:after {
        right: 10px;

        font-size: .9em;
    }
    .btn_group {
        margin-bottom: 0;
    }
    .btn_group ul {
        width: 70%;
        margin: 0 auto;
    }
    .btn_group ul li {
        width: 100%;
        height: 31px;
        margin-right: 0;
        margin-bottom: 17px;
    }
    .btn_group .btn_wrap {
        margin-bottom: 0;
    }
    .bg_box {
        padding: 20px 22px 30px;
        box-sizing: border-box;

        border-radius: 10px;
        background-color: #f3f3f3;
    }
    .bg_box .lead {
        font-size: 12px;
    }
    .tab_menu {
        position: relative;
        left: 2px;

        width: 100%;
        margin: 19px 0 20px;
    }
    .tab_menu li {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        width: 50%;
        height: 9.1vw;
        padding: 0 3.6vw .3vw;

        font-size: 2.93vw;

        align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
    }
    .tab_menu li::after {
        right: 9px;

        font-size: 1em;

        content: "\e902";
        -webkit-transform: translateY(-50%) rotate(90deg);
                transform: translateY(-50%) rotate(90deg);
    }
    .card_wrap .tit {
        margin: 6px 0 4px;

        font-size: 19px;
    }
    .s_card_gp {
        margin: 0 -6px;
    }
    .s_card {
        padding: 0 6px;
        margin-top: 13px;
    }
    .s_card .card_in {
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        -webkit-box-shadow: 0 1.5px 4px rgba(0, 0, 0, .16);
           -moz-box-shadow: 0 1.5px 4px rgba(0, 0, 0, .16);
                box-shadow: 0 1.5px 4px rgba(0, 0, 0, .16);
    }
    .col_sp_3 .s_card {
        width: 33.3%;
    }
    .col_sp_2 .s_card {
        width: 50%;
    }
    .s_card .img {
        height: 25.2vw;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .s_card .img img {
        max-width: 60%;
    }
    .col_sp_2 .s_card {
        width: 50%;
    }
    .s_card .s_card_body {
        min-height: 42px;
        padding: 5px 8px;
    }
    .s_card .s_card_body:after {
        right: 6px;

        font-size: .4rem;
    }
    .s_card .name {
        font-size: 11px;
    }
    .card_wrap:not(:first-of-type) {
        margin-top: 32px;
    }
    .sec_desc {
        padding: 0 15px;
        margin: 22px 0;
    }
    .s_card_gp.col_1 {
        margin: 0;
    }
    .s_card_gp.col_1 .s_card {
        width: 100%;
        padding: 0;
    }
    .s_card_gp.col_1 .s_card_body {
        min-height: 42px;
        padding-left: 20px;
    }
    .s_card_gp.col_1 .s_card_body:after {
        right: 8px;
    }
    .trouble_list .s_card .s_card_body {
        min-height: 55px;
    }
    .s_card .img_lg img {
        position: relative;
        top: -1%;
        left: -6%;

        max-width: 70%;
    }
    .trouble_list .s_card .name {
        font-size: 11px;
    }
    .bg_box.box_md {
        padding: 22px 22px 33px;
    }
    .bg_box.box_md .tit {
        margin-bottom: 0;
    }
    .box_md .card_wrap:not(:first-of-type) {
        margin-top: 51px;
    }
    .bg_box.box_md .s_card_gp {
        margin: 0 -9.5px;
    }
    .bg_box.box_md .s_card {
        padding: 0 9.5px;
        margin-top: 21px;
    }
    .sec_equipment .s_card .pic {
        height: 30vw;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .sec_equipment .s_card .pic img {
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .fnd_link li,
    .s_card .s_card_body.md .name {
        font-size: 11px;
    }
    .fnd_link li {
        padding-bottom: 9px;
    }
    .s_card .s_card_body.md {
        min-height: 38px;
    }
    .fnd_link {
        margin-top: 21px;
    }
    .ft_wrap {
        position: relative;

        padding-top: 61px;
    }
    #ft_breadcrumb {
        position: relative;

        height: 46px;

        border-bottom: 1px solid #666;
    }
    #ft_breadcrumb li {
        padding: 15px 0 15px 15px;
    }
    #footer {
        min-height: auto;
        padding: 0 0 8px;
    }
    .contact_box {
        position: absolute;
        bottom: -29vw;
        z-index: 2;

        width: 100%;

        -webkit-transition: all .2s ease;
                transition: all .2s ease;
        text-align: center;
    }
    .ft_wrap.move .contact_box {
        position: absolute;
        top: 0;

        height: 24vw;
    }
    .contact_box.sticky {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        z-index: 1;
    }
    .contact_box.sticky.hide {
        bottom: -29vw;
    }
    .contact_box li {
        float: left;
        width: 33.3%;

        text-align: center;
    }
    .contact_box li a {
        display: block;
    }
    .contact_box .icon {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        width: 20vw;
        height: 20vw;
        box-sizing: border-box;

        color: #1A78E6;
        border: 1.5px solid #1A78E6;
        border-right: 0;
        background-color: #fff;
        -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
           -moz-box-shadow: 0 1.5px 4px rgba(0, 0, 0, .16);
                box-shadow: 0 3px 6px rgba(0, 0, 0, .16);

        align-items: center;
        -webkit-box-align: center;
        -webkit-box-pack: center;
        -ms-flex-align: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .contact_box .icon.-phone {
        font-size: 9.6vw;
    }
    .contact_box .icon.-device {
        font-size: 9.8vw;
    }
    .contact_box .icon.-calendar {
        font-size: 12.2vw;
    }
    .contact_box .txt {
        display: block;
        margin-top: 3px;

        font-size: 2.5vw;

        color: #fff;
    }
    #footer .ft_home,
    .ft_nav li {
        padding-top: 0;
    }
    #footer .ft_home a,
    .ft_nav li a {
        position: relative;

        padding: 19px 17px;
        box-sizing: border-box;

        border-bottom: 1px solid #666;
    }
    .ft_nav {
        margin-bottom: 124px;

        flex-wrap: wrap;
    }
    .ft_nav ul {
        width: 100%;
        margin-left: 0 !important;
    }
    .ft_nav .dropdown {
        display: none;
        padding: 10px 0 12px;

        background-color: #333;
    }
    .ft_nav .dropdown a {
        padding: 10px 28px;

        color: #cecece;
        border: 0;
    }
    .ft_nav li.menu-sp-tog .tog_icn {
        position: absolute;
        right: 25px;

        width: 18px;
        height: 18px;
        margin: 0;

        text-align: center;
    }
    .ft_nav li.menu-sp-tog .tog_icn:after,
    .ft_nav li.menu-sp-tog .tog_icn:before {
        position: absolute;
        top: 50%;
        right: 0;
        bottom: 0;
        left: 0;

        display: block;
        margin: 0 auto;

        content: "";
        transition: transform .25s ease-out;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background-color: #1A78E6;
    }
    .ft_nav li.menu-sp-tog .tog_icn:before {
        width: 14px;
        height: 1px;
    }
    .ft_nav li.menu-sp-tog .tog_icn:after {
        width: 1px;
        height: 14px;
    }
    .ft_nav li.menu-sp-tog > a.open .tog_icn:before {
        -webkit-transform: rotate(0);
                transform: rotate(0);
    }
    .ft_nav li.menu-sp-tog > a.open .tog_icn:after {
        background-color: transparent;
    }
    .ft_nav li ul li {
        padding-top: 0;
        padding-left: 0;
    }
    .ft_nav .ft_search_clinic {
        padding-top: 0;
    }
    .ft_nav .ft_search_clinic ul {
        float: none;
    }
    .ft_nav .ft_search_clinic ul:last-child {
        margin-left: 0;
    }
    .ft_sns {
        position: relative;
        bottom: auto;

        margin-bottom: 70px;

        text-align: center;
    }
    .ft_sns ul {
        display: inline-block;
    }
    .ft_logo_mark img {
        width: 45px;
    }
    .spb_70px {
        padding-bottom: 70px !important;
    }
    .smb_80px {
        margin-bottom: 80px !important;
    }
    .smb_70px {
        margin-bottom: 70px !important;
    }
    .smb_60px {
        margin-bottom: 60px !important;
    }
    .smb_50px {
        margin-bottom: 50px !important;
    }
    .smb_20px {
        margin-bottom: 20px !important;
    }
    .ft-counseling,
    .ft-newgp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        flex-wrap: wrap;
    }
    .ft-newgp .ft-left {
        width: 25%;

        border: 2px solid #1A78E6;
        background: #fff;
    }
    .ft-trial {
        padding: 9px 0 5px;
        margin: 0 auto;

        line-height: 1.5;
    }
    .ft-trial span {
        display: block;
    }
    .ft-mail,
    .ft-ph {
        display: flex;

        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
    }
    .ft-newgp .ft-right {
        width: 75%;

        border-right: 2px solid #1A78E6;
        border-bottom: 2px solid #1A78E6;
        border-left: none;
    }
    .ft-newgp .ft-left a span,
    .ft-newgp .ft-right a span {
        font-size: 10px;

        text-align: center;

        color: #1A78E6;
    }
    .ft-newgp .ft-right a span {
        font-size: 13px;
    }
    .ft_text {
        height: 22px;

        font-size: 10px;
        line-height: 22px;

        text-align: center;
        letter-spacing: 2px;

        color: #fff;
        background: #1A78E6;
    }
    #ft_counsel.ft_mrg {
        background: #1A78E6;
    }
    .ft-counseling li {
        width: 50%;
        padding: 9px 0;

        border-right: 2px solid #1A78E6;
        border-left: 2px solid #1A78E6;
        background: #fff;
    }
    .ft-counseling li:first-child {
        border-left: none;
    }
    .ft-counseling li:last-child {
        border-right: none;
        border-left: none;
    }
    .ft-counseling li a {
        display: flex;

        align-items: center;
        justify-content: center;
    }
    .ft-counseling li a span {
        padding-left: 8px;

        font-size: 3.25vw;
        font-weight: 500;

        text-align: center;
        letter-spacing: 3px;

        color: #1A78E6;
    }
    .contact_box01 {
        position: fixed;
        bottom: 0;
        z-index: 99;

        width: 100%;

        background: #fff;
    }
    .contact_box01 ul {
        display: flex;
        width: 96%;
        padding: 10px 2%;
        margin: 0 auto;
    }
    .contact_box01 li {
        width: 50%;
        padding: 5px 0 0;
        margin: 0 5px;

        text-align: center;

        border-radius: 4px;
        background: #0093df;
    }
    .contact_box01 li:last-child {
        background: #ff4800;
    }
    .contact_box01 li a {
        display: inline-block;
    }
    .ft_phTtl {
        padding: 3px 10px;

        font-size: 9px;
        font-weight: 700;
        line-height: 1;

        transform: skew(-8deg, 0deg);

        color: #fff;
        background: #000;
    }
    .ft_phTtl span {
        transform: skew(0deg, 0deg);
    }
    .contact_box01 .ft-ph {
        padding-top: 3px;
    }
    .contact_box01 .ft-ph span {
        display: inline-block;
        padding-left: 5px;

        font-size: 18px;
        font-weight: 700;
        line-height: .82;

        color: #fff;
    }
    .contact_box01 img {
        max-width: 25px;
    }
}
@media only screen and (max-width: 480px) {
    #header .h_nav {
        width: 190px;
    }
}
@media only screen and (max-width: 375px) {
    #header .h_nav {
        width: 165px;
    }
    #header .h_nav li {
        margin-right: 15px;
    }
}
@media only screen and (max-width: 320px) {
    #gnav li ul.dropdown li {
        font-size: 12px;
    }
    .tab_menu li {
        padding: 0 1vw .3vw;
    }
    .tab_menu li::after {
        right: 5px;

        font-size: 6px;
    }
    .s_card .name,
    .s_card .s_card_body.md .name {
        font-size: .8vw;
    }
}
.banner_wrap {
    width: 1150px;
    padding: 0 15px;
    margin-top: 70px;
    margin-right: auto;
    margin-bottom: -70px;
    margin-left: auto;
}
.banner_wrap a {
    display: inline-block;
}
@media screen and (max-width: 767px) {
    .banner_wrap {
        max-width: 100%;
        margin-top: 35px;
        margin-bottom: -35px;
    }
}
#header .head_m.hide {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}
#gnav.gnav {
    top: 58px;
}
#header.header01 .logo_mark img {
    width: 41px;
    height: 51px;
}
.header01 .btn-toggle-menu .line {
    background: #fff;
}
#header .logo_mark {
    width: 350px;
    padding-top: 7px;
}
#header .head_m {
    height: 58px;
}
#header .logo_mark a {
    display: inline-block;
}
#header .logo_mark p {
    display: inline-block;
    padding-left: 20px;

    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 500;

    letter-spacing: 1.4px;

    color: #fff;
}
.btn-toggle-menu {
    top: 50%;

    transform: translateY(-50%);
}
#header.header01 .h_nav {
    width: auto;
}
#header.header01 .h_nav ul {
    display: flex;
    padding-top: 0;
    padding-right: 54px;

    align-items: center;
}
#header.header01 .h_nav li.ico.cliniclst {
    padding: 1px 15px 6px 15px;
    margin: 13px 22px 12px 0;

    text-align: center;

    background: #0093df;
}
#header.header01 .h_nav li.cliniclst figure {
    display: inline-block;
}
#header.header01 .h_nav li.cliniclst .caption {
    display: inline-block;

    font-size: 11px;
    font-weight: 400;

    letter-spacing: 1.1px;
}
#header.header01 .h_nav .tel_sm-italic {
    display: block;
    /* width: 155px; */
    /* padding: 2px 0; */
    margin: 0 auto 5px;
    /* background: #fff; */
}
#header.header01 .h_nav .tel_sm {
    display: block;

    font-family: "Noto Sans JP", sans-serif;
    font-size: 9px;
    font-weight: 400;
    line-height: 1.3;
    /* text-align: center; */

    letter-spacing: .9px;

    color: #fff;
}
#header.header01 .h_nav .tel_number {
    margin-top: 0;

    font-family: "Noto Sans JP", sans-serif;
    font-size: 15px;
    font-weight: 500;

    letter-spacing: 1.5px;
}
#header.header01 .h_nav li.ico {
    padding: 8px 0;
    margin-right: 0;
}
.header01 .tel-span {
    display: inline-block;
    margin-top: -11px;

    font-size: 22px;
}
#header.header01 .head_logo {
    height: auto;
    margin-top: 60px;
}
.g_navi {
    height: 62px;
}
.header01 .newMenu {
    max-width: 1080px;
    margin: 0 auto;
}
.header01 .newMenu ul {
    display: flex;
    padding: 14px 0 15px;
    margin: 0 -25px;

    align-items: center;
    justify-content: center;
}
.header01 .newMenu li {
    padding: 0 25px;

    text-align: center;
}
.header01 .newMenu li a {
    display: inline-block;
    padding: 2px 10px;

    font-size: 17px;
    font-weight: 700;

    transition: all .3s;
    letter-spacing: 1.28px;

    color: #000;
}
.header01 .newMenu li a:hover {
    opacity: .9;
    border-color: transparent;
    box-shadow: 0 7px 10px rgba(0, 0, 0, .3);
}
@media only screen and (max-width: 768px) {
    #header.header01 .head_m.inView {
        height: auto;
    }
    #header .logo_mark {
        width: 37px;
        padding-top: 7px;
        margin-left: 6px;
    }
    #header.header01 .h_nav {
        width: auto;
    }
    #header.header01 {
        min-height: auto;
    }
    #header.header01 .head_logo {
        height: auto;
        padding-top: 0;
        margin-top: 91px;
    }
    #header.header01 .logo {
        position: relative;
        z-index: 2;

        padding: 10px 0 8px;

        font-size: 13px;

        text-align: center;

        color: #fff;
        background: #0093df;
    }
    #header.header01 .logo_mark img {
        width: 37px;
        height: 43px;
    }
    #header.header01 .logo_mark p {
        display: none;
    }
    #gnav.gnav {
        top: 49px;
    }
    .g_navi {
        height: auto;
    }
    #header.header01 .head_m {
        height: 52px;
    }
    .header01 .cliniclst {
        display: inline-block;
        width: 120px;
        margin: 7px auto;

        border-radius: 35px;
        background: #0093df;
    }
    .header01 .cliniclst a {
        display: inline-flex;
        padding: 4px 12px 6px;

        color: #fff;

        align-items: center;
    }
    .header01 .cliniclst a picture {
        width: 17px;
    }
    .header01 .cliniclst .caption {
        display: inline-block;
        padding-left: 5px;

        font-size: 10px;
        font-weight: 700;
    }
    #header.header01 .head_m.hide {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    .header01 .newMenu {
        width: 100%;
        margin: 0 auto;

        background: #fff;
    }
    .header01 .newMenu ul {
        display:         flex;
        display: -webkit-box;
        display:    -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        padding: 6px 0 7px 0;
        margin: 0;

        align-items: center;
        justify-content: space-evenly;
    }
    .header01 .newMenu li {
        padding: 1px 0;

        text-align: center;
    }
    .header01 .newMenu li a:hover {
        box-shadow: unset;
    }
    .header01 .newMenu li picture {
        display: block;
    }
    .header01 .newMenu li img {
        width: 100%;
        max-width: 19px;
    }
    .header01 .newMenu li .menu-img2 {
        width: 100%;
        max-width: 26px;
    }
    .header01 .newMenu li .menu-img3 {
        width: 100%;
        max-width: 36px;
    }
    .header01 .newMenu li a {
        display: inline-block;
        padding: 2px 0;

        letter-spacing: 0;
    }
    .header01 .newMenu li p {
        padding-top: 3px;

        font-size: 11.5px;
        font-weight: 700;

        letter-spacing: 0;
    }
}
@media only screen and (max-width: 320px) {
    .header01 .newMenu li p {
        font-size: 8px;
    }
}

/* Adding styles For header and Navi */
#header.header01 .h_nav li.ico.g-map {
    margin-right: 20px;
}
#header .h_nav li .icon.g-map-icon {
    width: 10px;
    height: 17px;
}
#header .h_nav li .icon.g-map-icon img {
    width: 100%;
    height: auto;
}
@media only screen and (min-width: 769px) {
    #header.header01 .h_nav li.ico.cliniclst1 {
        width: 15px;
        height: 23px;
    }
    #header.header01 .h_nav li.ico.cliniclst2 {
        width: 9px;
        height: 23px;
    }
}

@media only screen and (max-width: 768px) {
    #header.header01 .h_nav .switch-sp {
        padding: 6px 0 5px 0;
    }
    #header.header01 .h_nav li.ico.cliniclst1 {
        margin-right: 12px;
    }
    #header.header01 .h_nav li.ico.cliniclst1 a {
        width: 15px;
        height: 23px;
    }
    #header.header01 .h_nav li.ico.cliniclst2 a {
        width: 18px;
        height: 23px;
    }
    .header01 .newMenu ul::after {
        display: none;
    }
}
