@charset "UTF-8";

html {
    font-size: 1vw;
    -webkit-text-size-adjust:none;
    color:#303030;
}
@media screen and (max-width: 1200px) {
    html {
        font-size:2vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px) {
    html {
        font-size:1.2vw;
    }
}
.symbol-m {
    display: none;
}
@media screen and (max-width: 1200px) {
    .symbol-m {
        display: block;
    }
    .symbol-pc {
        display: none;
    }
}
body {
    background: #fff;
    font-family:'Noto Sans TC',"Microsoft JhengHei";
    color: #282828;
}

img {
    position: relative;
    display: block;
    border: 0;
    width: 100%;
    height: auto;
}
.wrap {
    position: absolute;
    display: block;
    width: 100%;
    overflow: hidden;
}
.wrap .preload {
    display: none;
}

.nav {
    position: fixed;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: 5.2vw;
    z-index: 10;
    padding: 0 4.16vw;
    background: #fff;
    border-bottom: 1px solid #EAEAEA;
}
.nav-block {
    position: relative;
    display: block;
    height: 5.2vw;
}

.nav .nav-logo {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 9.34vw;
}
.nav .nav-menu {
    position: relative;
    display: block;
    margin-left: 2.6vw;
    width: calc(100% - 9.34vw - 2.6vw - 12vw);
}
.nav .nav-menu ul {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.nav .nav-menu ul li {
    font-size: 1vw;
    line-height: 150%;
    font-weight: 500;
    cursor: pointer;
    margin-right: 2.6vw;
}

.nav .nav-menu ul li:hover > a{
    color: #5696CB;
}
.nav .nav-sub-menu {
    position: fixed;
    display: block;
    width: 100vw;
    top:5.2vw;
    left: 0;
    background: #f9f9f9;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease;
    transition: max-height 0.3s ease;
}
.nav .nav-sub-menu.expand,.nav .nav-menu ul li.level2:hover .nav-sub-menu {
    max-height: 15vw;
}
.nav-sub-menu-list {
    position: relative;
    display: flex;
    padding: 3vw 16.2vw 2vw 16.2vw;
}
.nav-sub-menu-title {
    font-size: 1.5vw;
    line-height: 150%;
    font-weight: 500;
    color: #5696CB;
    letter-spacing: 0.2vw;
    width: 15vw;
}
.nav-sub-menu-list ul {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}
.nav-sub-menu-list ul li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.8vw;
    line-height: 150%;
    font-weight: 500;
    cursor: pointer;
    margin-right: 3.5vw;
    margin-bottom: 2vw;
}
.nav-sub-menu-list ul li:hover {
    color: #5696CB;
}
.nav-sub-menu-list ul li::after {
    content: "";
    position: relative;
    display: block;
    width: 1.67vw;
    height: 1.67vw;
    background: url(../images/icon_more_arrow.svg) no-repeat center center;
    background-size: contain;
    margin-left: 0.3vw;
}
.nav .nav-iconbtn {
    position: relative;
    display: block;
    width: 12vw;
}
.nav .nav-iconbtn ul {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.nav .nav-iconbtn ul li {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.nav .nav-iconbtn ul li .imgbox {
    position: relative;
    display: block;
    width: 1.56vw;
}
.nav .nav-iconbtn ul li .textbox {
    font-size: 0.73vw;
    line-height: 150%;
    font-weight: 500;
    cursor: pointer;
    margin-top: 0.2vw;
}
.nav .nav-iconbtn ul li:hover .textbox{
    color: #5696CB;
}
.nav-lang-container {
    position: absolute;
    display: none;
    justify-content: center;
    align-items: center;
    width: 15vw;
    right:3vw;
    background: #fff;
    top:7vw;
    padding: 1vw 0;
}
.nav-lang-container.expand {
    display: flex;
}
.nav-lang-container::before {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0.5vw 1vw 0.5vw;
    border-color: transparent transparent #ffffff transparent;
    top:-1vw;
    left: 80%;
}
.nav-lang-container .lang-box {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
}
.nav-lang-container .lang-box .lang-box-title {
    font-size: 0.8vw;
    line-height: 200%;
    font-weight: 500;
    color: #aaa;
    letter-spacing: 0.1vw;
}
.nav-lang-container .lang-box ul {
    position: relative;
    display: block;
}
.nav-lang-container .lang-box ul li {
    font-size: 0.8vw;
    line-height: 200%;
    font-weight: 500;
    letter-spacing: 0.1vw;
    cursor: pointer;
}
.nav-lang-container .lang-box ul li:hover {
    color: #5696CB;
}
.nav-sreach-container {
    position: absolute;
    display: none;
    background: #fff;
    right: 14.2vw;
    padding: 0.5vw;
    top:1vw;
    width: 13vw;
}
.nav-sreach-container.expand {
    display: block;
}
.nav-sreach-container .sreach-box {
    position: relative;
    display: block;
}
.nav-sreach-container .sreach-box input {
    position: relative;
    display: block;
    border:1px solid #5696CB;
    height: 2.2vw;
    font-size: 1vw;
    border-radius: 1.1vw;
    width: 100%;
    padding-left: 1em;
    padding-right: 2vw;
}
.nav-sreach-container .sreach-box .sreach-btn {
    position: absolute;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
    top:0.3vw;
    right: 0.5vw;
    cursor: pointer;
}
@media screen and (max-width: 1200px) {
    .nav {
        height: 64px;
        padding: 0 20px;
    }
    .nav-block {
        height: 64px;
    }
    .nav .nav-logo {
        width:145px;
    }
    .nav .nav-menu {
        position: absolute;
        margin-left: 0;
        width: 100%;
        height: calc(100dvh - 64px);
        left: 100vw;
        top: 64px;
        padding: 20px;
        background: #fff;
    }
    .nav.expand .nav-menu {
        left: 0;
    }
    .nav .nav-menu ul {
        height: calc(100% - 100px);
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .nav .nav-menu ul li {
        font-size: 22px;
        line-height: 22px;
        padding: 15px 0;
        margin-right: 0;
    }
    .nav-sub-menu-list {
        display: none;
    }
    .nav .nav-iconbtn {
        position: absolute;
        display: block;
        width: 100%;
        top:calc(100dvh - 100px);
        left: 100vw;
        padding: 0 20px;
        background: #fff;
    }
    .nav.expand .nav-iconbtn {
        left: 0;
    }
    .nav .nav-iconbtn ul {
        justify-content: center;
    }
    .nav .nav-iconbtn ul li {
        padding: 0 20px;
    }
    .nav .nav-iconbtn ul li .imgbox {
        position: relative;
        display: block;
        width: 30px;
    }
    .nav .nav-iconbtn ul li .textbox {
        font-size: 16px;
        line-height: 21px;
        margin-top: 5px;
    }
    .nav-sreach-container {
        right: auto;
        padding: 0.5vw;
        top:calc(100dvh - 45vw);
        width: 70vw;
        left: 15vw;
    }
    .nav-sreach-container .sreach-box {
        position: relative;
        display: block;
    }
    .nav-sreach-container .sreach-box input {
        height: 12vw;
        font-size: 18px;
        border-radius: 6vw;
        padding-right: 9vw;
    }
    .nav-sreach-container .sreach-box .sreach-btn {
        width: 7vw;
        height: 7vw;
        top:2.5vw;
        right: 4vw;
    }
    .nav-lang-container {
        width: 80vw;
        right:auto;
        left: 10vw;
        background: #fff;
        top:calc(100dvh - 75vw);
        padding: 2vw 0;
        border: 1px solid #ddd;
    }
    .nav-lang-container.expand {
        display: flex;
        z-index: 3;
    }
    .nav-lang-container::before {
        display: none;
    }
    .nav-lang-container .lang-box .lang-box-title {
        font-size: 3.5vw;
        letter-spacing: 0.2vw;
    }
    .nav-lang-container .lang-box ul li {
        font-size: 3.5vw;
        letter-spacing: 0.2vw;
    }
    .nav .burger-btn {
        position: absolute;
        display: block;
        width:26px;
        height: 21px;
        right: 20px;
        top:20px;
        cursor: pointer;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    .nav .burger-btn span {
        position: absolute;
        display: block;
        width: 100%;
        height: 2px;
        background: #5696CB;
        -webkit-transition: -webkit-transform 0.3s ease;
        transition: transform 0.3s ease;
    }
    .nav .burger-btn span:nth-child(1) {
        top:0;
    }
    .nav .burger-btn span:nth-child(2) {
        top:calc(50% - 1px);
    }
    .nav .burger-btn span:nth-child(3) {
        top:calc(100% - 2px);
    }
    .nav .burger-btn span:nth-child(1) {
        -webkit-transform: scale(1,1) rotate(0deg);
        transform: scale(1,1) rotate(0deg);
    }
    .nav .burger-btn span:nth-child(2) {
        -webkit-transform: scale(1,1) rotate(0deg);
        transform: scale(1,1) rotate(0deg);
    }
    .nav .burger-btn span:nth-child(3) {
        -webkit-transform: scale(1,1)  rotate(0deg);
        transform: scale(1,1) rotate(0deg);
    }
    .nav.expand .burger-btn span:nth-child(1) {
        top:calc(50% - 1px);
        -webkit-transform: scale(1,1) rotate(45deg);
        transform: scale(1,1) rotate(45deg);
    }
    .nav.expand .burger-btn span:nth-child(2) {
        -webkit-transform: scale(0,1) rotate(0deg);
        transform: scale(0,1) rotate(0deg);
    }
    .nav.expand .burger-btn span:nth-child(3) {
        top:calc(50% - 1px);
        -webkit-transform: scale(1,1) rotate(-45deg);
        transform: scale(1,1) rotate(-45deg);
    }
}
.stage-container {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    background: #fff;
    z-index: 1;
}
.stage-banner-index {
    height: 33.75vw;
}
.banner-index-list {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0;
    line-height: 0;
    white-space: nowrap;
}
.banner-index-list li {
    position: relative;
    display: inline-block;
    width: 100%;
}
.banner-index-text {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    height: 100%;
    left: 15vw;
    top:0;
}
.banner-index-text .text1 {
    font-weight: 500;
    color:#282828;
    font-size: 3.75vw;
    line-height: 150%;
}
.banner-index-text .text2 {
    position: relative;
    display: block;
    font-weight: 500;
    color:#282828;
    font-size: 1.25vw;
    line-height: 150%;
}
.banner-index-text .line-icon {
    position: relative;
    display: block;
    width: 2.6vw;
    height: 1px;
    background: #282828;
    margin: 1.51vw 0;
}
.banner-index-text .text3 {
    position: relative;
    display: block;
    font-weight: 500;
    color:#282828;
    font-size: 1.25vw;
    line-height: 150%;
}
.banner-list-dot,.banner-list-dot.swiper-pagination-bullets{
    position: absolute;
    bottom: 2vw;
    text-align: center;
    width: 100%;
    z-index: 2;
}
.banner-list-dot li ,.banner-list-dot .swiper-pagination-bullet{
    position: relative;
    display: inline-block;
    font-size: 0;
    width: 12px;
    height: 12px;
    background: #5696CB;
    border-radius: 50%;
    margin: 0 5px;
    opacity: 0.2;
}

.banner-list-dot li.current,.banner-list-dot .swiper-pagination-bullet-active {
    opacity: 1;
}
.stage-banner-index .arrow-left {
    position: absolute;
    display: block;
    width: 2.7vw;
    height: 2.7vw;
    background: #5696CB;
    border-radius: 50%;
    left:calc(5% - 1.35vw);
    top:calc(50% - 1.35vw);
    cursor: pointer;
    z-index: 2;
}
.stage-banner-index .arrow-left::before {
    content: "";
    position: absolute;
    display: block;
    width: 1vw;
    height: 1vw;
    border-left:0.2vw solid #fff;
    border-top:0.2vw solid #fff;
    top:calc(50% - 0.5vw);
    left: calc(50% - 0.3vw);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.stage-banner-index .arrow-right {
    position: absolute;
    display: block;
    width: 2.7vw;
    height: 2.7vw;
    background: #5696CB;
    border-radius: 50%;
    right:calc(5% - 1.35vw);
    top:calc(50% - 1.35vw);
    cursor: pointer;
    z-index: 2;
}
.stage-banner-index .arrow-right::before {
    content: "";
    position: absolute;
    display: block;
    width: 1vw;
    height: 1vw;
    border-right:0.2vw solid #fff;
    border-top:0.2vw solid #fff;
    top:calc(50% - 0.5vw);
    right: calc(50% - 0.3vw);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
@media screen and (max-width: 1200px) {
    .stage-banner-index {
        height: 144.8vw;
    }
    .banner-index-text {
        position: absolute;
        justify-content: flex-end;
        padding: 0 0 12vw 4vw; 
        width: 100%;
        left: 0;
        background: linear-gradient(180deg, rgba(246, 248, 250, 0) 28.13%, #F6F8FA 79.17%);
    }
    .banner-index-text .text1 {
        font-size: 10vw;
    }
    .banner-index-text .text2 {
        font-size: 4.27vw;
    }
    .banner-index-text .line-icon {
        position: relative;
        display: block;
        width: 8vw;
        margin: 4vw 0;
    }
    .banner-index-text .text3 {
        font-size: 4.8vw;
    }
    .stage-banner-index .arrow-left {
        display: none;
    }
    .stage-banner-index .arrow-right {
        display: none;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .stage-banner-index {
        height: calc( 100dvh - 64px - 66px);
    }
    .banner-index-text {
        position: absolute;
        justify-content: flex-end;
        padding: 0 0 35vw 4vw; 
        width: 100%;
        left: 0;
        background: linear-gradient(180deg, rgba(246, 248, 250, 0) 40%, #F6F8FA 95%);
    }
    .banner-index-text .text1 {
        font-size: 5.71vw;
    }
    .banner-index-text .text2 {
        font-size: 2.57vw;
    }
    .banner-index-text .text3 {
        font-size: 2.57vw;
    }
    .banner-index-text .line-icon {
        width: 4.3vw;
        margin: 3vw 0;
    }
    .stage-banner-index .arrow-left {
        display: none;
    }
    .stage-banner-index .arrow-right {
        display: none;
    }
}
.stage-newsline {
    height: 5.83vw;
    padding: 0 4.16vw;
    background: #80B4E0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.stage-newsline .newsline-box {
    position: relative;
    display: block;
    white-space: nowrap;
    text-align: left;
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: flex;
    justify-content: flex-start;align-items: center;
}

.stage-newsline .newsline-box > li {
    position: relative;
    display: flex;
    font-size: 1.25vw;
    line-height: 150%;
    font-weight: 700;
    height: 100%;
    justify-content: center;align-items: center;
}
.stage-newsline .newsline-box .newsline-title {
    color: #fff;
    padding: 0 1.67vw 0 0;
}
.stage-newsline .newsline-box .newsline-date {
    color: #376D99;
    padding: 0 1.67vw 0 1.67vw;
    border-left: 1px solid #fff;
    display: inline-block;
}
.stage-newsline .newsline-box .newsline-text {
    color: #fff;
    display: inline-block;
}
.stage-newsline .newsline-box:hover .newsline-text {
    opacity: 0.7;
}
@media screen and (max-width: 1200px) {
    .stage-newsline {
        height: 16vw;
        padding: 0 4.2vw;
    }
    .stage-newsline .newsline-box li {
        position: relative;
        display: inline-block;
        font-size:3.7vw;
        line-height: 150%;
    }
    .stage-newsline .newsline-box .newsline-title {
        padding: 0 4.3vw 0 0;
    }
    .stage-newsline .newsline-box .newsline-date {
        padding: 0 4.3vw 0 4.3vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .stage-newsline {
        height: 8.57vw;
        padding: 0 2.2vw;
    }
    .stage-newsline .newsline-box li {
        font-size:2.28vw;
    }
    .stage-newsline .newsline-box .newsline-title {
        padding: 0 2.2vw 0 0;
    }
    .stage-newsline .newsline-box .newsline-date {
        padding: 0 2.2vw 0 2.2vw;
    }
}
.stage-intro .main-bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-image:url(../images/intro_bg_top.jpg), url(../images/intro_bg_bottom.jpg);
    background-repeat: no-repeat, no-repeat;
    background-position:top,bottom;
    background-size: 100% auto,100% auto;
}
.stage-intro .main-bg img {
    display: none;
}
@media screen and (max-width: 1200px) {
    .stage-intro .main-bg {
        position: absolute;
        display: block;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        background-image:url(../images/intro_bg_top.jpg), url(../images/intro_bg_bottom.jpg);
        background-repeat: no-repeat, no-repeat;
        background-position:top left,bottom right;
        background-size: 130% auto,130% auto;
    }
}
.stage-intro .health-intro-list {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    padding: 6.25vw 15.625vw;
}
.stage-intro .health-intro-list li {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 11.98vw;
    cursor: pointer;
    box-shadow: 1vw 1vw 3vw rgba(215, 224, 229, 0.5);
    background: #fff;
}
.stage-intro .health-intro-list li:hover {
    background: #80B4E0;
}
.health-intro-item-img {
    position: relative;
    display: block;
    width: 100%;
}
.health-intro-item-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../images/health_intro_bg1.svg) no-repeat top center;
    background-size: 100% auto;
    top:9.5vw;
}
.stage-intro .health-intro-list li:hover .health-intro-item-bg {
    background: url(../images/health_intro_bg2.svg) no-repeat top center;
    background-size: 100% auto;
}
.health-intro-item-icon {
    position: relative;
    display: block;
    width: 2.3vw;
    height: 2.3vw;
    margin: -0.8vw 0 0 0;
}
.item1 .health-intro-item-icon {
    background: url(../images/health_intro_icon1.svg) no-repeat center center;
    background-size: contain;
}
.item2 .health-intro-item-icon {
    background: url(../images/health_intro_icon2.svg) no-repeat center center;
    background-size: contain;
}
.item3 .health-intro-item-icon {
    background: url(../images/health_intro_icon3.svg) no-repeat center center;
    background-size: contain;
}
.item4 .health-intro-item-icon {
    background: url(../images/health_intro_icon4.svg) no-repeat center center;
    background-size: contain;
}
.item5 .health-intro-item-icon {
    background: url(../images/health_intro_icon5.svg) no-repeat center center;
    background-size: contain;
}
.item1:hover .health-intro-item-icon {
    background: url(../images/health_intro_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.item2:hover .health-intro-item-icon {
    background: url(../images/health_intro_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.item3:hover .health-intro-item-icon {
    background: url(../images/health_intro_icon3_hover.svg) no-repeat center center;
    background-size: contain;
}
.item4:hover .health-intro-item-icon {
    background: url(../images/health_intro_icon4_hover.svg) no-repeat center center;
    background-size: contain;
}
.item5:hover .health-intro-item-icon {
    background: url(../images/health_intro_icon5_hover.svg) no-repeat center center;
    background-size: contain;
}
.health-intro-item-title{
    position: relative;
    display: block;
    text-align: center;
    font-weight: 700;
    font-size: 1vw;
    line-height: 150%;
    color: #282828;
    margin: 1.1vw 0 0 0;
}
.stage-intro .health-intro-list li:hover .health-intro-item-title {
    color: #fff;
}
.health-intro-item-text{
    position: relative;
    display: block;
    text-align: center;
    font-weight: 400;
    font-size: 0.9vw;
    line-height: 150%;
    color: #282828;
    margin: 1.1vw 0 0 0;
    padding: 0 1.5vw;
}
.stage-intro .health-intro-list li:hover .health-intro-item-text {
    color: #fff;
}
.global-morebtn{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1vw 0 0 0;
}
.global-morebtn::after {
    content: "";
    position: relative;
    display: block;
    width: 1.67vw;
    height: 1.67vw;
    background: url(../images/icon_more_arrow.svg) no-repeat center center;
    background-size: contain;
}
.global-morebtn span {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 150%;
    color: #A4A4A4;
    cursor: pointer;
}
.global-morebtn:hover span{
    color:#80B4E0;
}
.stage-intro .health-intro-list li:hover .global-morebtn span {
    color: #fff;
}
.stage-intro .health-intro-list li:hover .global-morebtn::after {
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1200px) {
    .stage-intro .health-intro-list {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        padding: 13.3vw 5.33svw;
    }
    .stage-intro .health-intro-list li {
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        box-shadow: 1vw 1vw 3vw rgba(215, 224, 229, 0.5);
        margin: 0 0 4.26vw 0;
    }
    .health-intro-item-img {
        width: 23.46vw;
    }
    .health-intro-item-bg {
        display: none;
    }
    .health-intro-item-icon {
        display: none;
    }
    .health-intro-item-title{
        width: 45vw;
        font-size: 4.8vw;
        margin: 0 0 0 5.86vw;
        text-align: left;
    }
    .health-intro-item-text{
        display: none;
    }
    .health-intro-item-more{
        margin: 0 0 0 0;
    }
    .health-intro-item-more::after {
        width: 8.53vw;
        height: 8.53vw;
    }
    .health-intro-item-more span {
        display: none;
    }
    .global-morebtn {
        margin: 0 0 0 0;
    }
    .global-morebtn span {
        font-size: 4.26vw;
        line-height: 4.26vw;
    }
    .global-morebtn::after {
        width: 4.26vw;
        height: 4.26vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .stage-intro .health-intro-list {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 4.5vw 2vw;
    }
    .stage-intro .health-intro-list li {
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        width: calc(50% - 2vw);
        box-shadow: 1vw 1vw 3vw rgba(215, 224, 229, 0.5);
        margin: 0 1vw 2vw 1vw;
    }
    .health-intro-item-img {
        width: 23.46vw;
    }
    .health-intro-item-bg {
        display: none;
    }
    .health-intro-item-icon {
        display: none;
    }
    .health-intro-item-title{
        width: 45vw;
        font-size: 2.85vw;
        margin: 0 0 0 3vw;
        text-align: left;
    }
    .health-intro-item-text{
        display: none;
    }
    .health-intro-item-more{
        margin: 0 0 0 0;
    }
    .health-intro-item-more::after {
        width: 8.53vw;
        height: 8.53vw;
    }
    .health-intro-item-more span {
        display: none;
    }
    .stage-intro .health-intro-list li .global-morebtn {
        margin: 0 3vw 0 0;
    }
    .stage-intro .health-intro-list li .global-morebtn span {
        display: none;
    }
    .stage-intro .health-intro-list li .global-morebtn::after {
        width: 4.57vw;
        height: 4.57vw;
    }
}
.index-news-container {
    position: relative;
    display: block;
    width: calc(57.3vw);
    margin: 3vw 0 3vw 16vw;
}
.global-main-title {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 0 0;
}
.global-main-title::before {
    content: "";
    position: relative;
    display: block;
    width: 3.75vw;
    height: 3.75vw;
    background: url(../images/global_title_icon.svg) no-repeat center center;
    background-size: contain;
    margin: 0 2vw 0 0;
}
.global-main-title .text1 {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 2.18vw;
    line-height: 100%;
    color: #282828;
}
.global-main-title .text2 {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 1.25vw;
    line-height: 150%;
    color: #282828;
    margin: 0 0 0 1.25vw;
}
.index-news-list {
    position: relative;
    display: block;
    width: 100%;
    padding-left: 5.75vw;
}
.index-news-list li {
    position: relative;
    display: block;
    width: 100%;
    padding: 2.6vw 0 2.6vw 0;
    border-bottom: 1px solid #eaeaea;
    cursor: pointer;
}
.index-news-list-date {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 0.9vw;
    line-height: 150%;
    color: #5696CB;
}
.index-news-list-box {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin: 1vw 0 0 0;
}
.index-news-list-textbox {
    position: relative;
    display: block;
    width: calc(100% - 11vw);
    overflow: hidden;
}
.index-news-list-title {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 1.25vw;
    line-height: 150%;
    color: #282828;
}
.index-news-list-text {
    position: relative;
    display: block;
    font-weight: 500;
    font-size: 1vw;
    line-height: 150%;
    color: #5d5d5d;
    margin: 0.3vw 0 0 0;
    overflow:hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.global-more-btn2 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 8.8vw;
    height: 2.6vw;
    text-align: center;
    border:1px solid #a4a4a4;
    background: #fff;
    margin: 0 0 0 2vw;
    border-radius: 1.3vw;
    cursor: pointer;
}
.global-more-btn2:hover {
    border:1px solid #fff;
    background: #80B4E0;
}
.index-news-list li:hover .global-more-btn2 {
    border:1px solid #fff;
    background: #80B4E0;
}
.global-more-btn2::after {
    content: "";
    position: absolute;
    width:1.67vw;
    height: 1.67vw;
    background: url(../images/icon_more_arrow.svg) no-repeat center center;
    background-size: contain;
    top:0.45vw;
    right: 0.5vw;
}
.global-more-btn2:hover::after {
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
.index-news-list li:hover .global-more-btn2::after {
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
.global-more-btn2 span {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #a4a4a4;
}
.global-more-btn2:hover span {
    color:#fff;
}
.index-news-list li:hover .global-more-btn2 span {
    color:#fff;
}
.index-news-allbtn-box {
    position: relative;
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin: 2.5vw 0 0 0;
}
.index-allbtn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.index-allbtn span {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #a4a4a4;
    font-weight: 400;
}
.index-allbtn:hover span {
    color: #5696CB;
}
.index-allbtn::after {
    content: "";
    position: relative;
    display: block;
    width: 1.25vw;
    height: 1.25vw;
    background: url(../images/icon_plus.svg) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1200px) {
    .index-news-container {
        width: 90vw;
        margin: 11vw auto;
        padding-bottom: 7vw;
    }
    .global-main-title {
        margin: 0;
    }
    .global-main-title::before {
        width: 11.2vw;
        height: 11.2vw;
        margin: 0 3.2vw 0 0;
    }
    .global-main-title .text1 {
        font-size: 6.5vw;
        line-height: 150%;
    }
    .global-main-title .text2 {
        font-size: 4vw;
        margin: 0 0 0 2.13vw;
    }
    .index-news-list {
        margin-top: 3vw;
    }
    .index-news-list li {
        padding: 6.4vw 0 6.4vw 0;
    }
    .index-news-list-date {
        font-size: 4.26vw;
    }
    .index-news-list-box {
        margin: 3.2vw 0 0 0;
    }
    .index-news-list-textbox {
        width: 100%;
        height: auto;
        white-space: normal;
    }
    .index-news-list-title {
        font-size: 4.8vw;
    }
    .index-news-list-text {
        font-size: 4.26vw;
        margin: 0.6vw 0 0 0;
    }
    .index-news-list .global-more-btn2 {
        display: none;
    }
    .index-news-allbtn-box {
        margin: 6.6vw 0 0 0;
    }
    .index-allbtn span {
        font-size: 4.3vw;
    }
    .index-allbtn::after {
        width:6.4vw;
        height: 6.4vw;
    }
    .global-more-btn2 {
        width: 14vw;
        height: 5vw;
        border:none;
        background: none;
        margin: 2vw 0 0 0 0;
        border-radius: 4vw;
        justify-content: space-between;
    }
    .global-more-btn2::after {
        width:5vw;
        height: 5vw;
        top:0.2vw;
        right: 0vw;
    }
    .global-more-btn2 span {
        font-size: 3vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .index-news-container {
        width: 90vw;
        margin: 8vw auto;
        padding-bottom: 10vw;
    }
    .global-main-title {
        margin: 0;
    }
    .global-main-title::before {
        width: 6vw;
        height: 6vw;
        margin: 0 2vw 0 0;
    }
    .global-main-title .text1 {
        font-size: 3.571vw;
    }
    .global-main-title .text2 {
        font-size: 2vw;
        margin: 0 0 0 1.5vw;
    }
    .index-news-list {
        margin-top: 0vw;
        padding: 0
    }
    .index-news-list li {
        padding: 4vw 0 4vw 0;
    }
    .index-news-list-date {
        font-size: 2.28vw;
    }
    .index-news-list-box {
        margin: 1.2vw 0 0 0;
    }
    .index-news-list-textbox {
        width: 100%;
        height: 8vw;
    }
    .index-news-list-title {
        font-size: 2.571vw;
    }
    .index-news-list-text {
        font-size: 2.28vw;
        margin: 0.6vw 0 0 0;
    }
    .index-news-list .global-more-btn2 {
        display: none;
    }
    .index-news-allbtn-box {
        margin: 6.6vw 0 0 0;
    }
    .index-allbtn span {
        font-size: 2.28vw;
    }
    .index-allbtn::after {
        width:3vw;
        height: 3vw;
    }
    .global-more-btn2 {
        width: 11vw;
        height: 5vw;
        border:none;
        background: none;
        margin: 2vw 0 0 0 0;
        border-radius: 4vw;
        justify-content: space-between;
    }
    .global-more-btn2::after {
        width:5vw;
        height: 5vw;
        top:0.2vw;
        right: 0vw;
    }
    .global-more-btn2 span {
        font-size: 2vw;
    }
}
.index-img-slider {
    position: relative;
    display: block;
    text-align: left;
    width: 100%;
    font-size: 0;
    line-height: 0;
    white-space: nowrap;
    display: none;
}
.index-img-slider li {
    position: relative;
    display: inline-block;
    width: 34.32vw;
    margin: 0 3px 0 0;
}
@media screen and (max-width: 1200px) {
    .index-img-slider li {
        width: 76.8vw;
        /*width: 100vw;*/
        /*padding: 0 11.6vw;*/
    }
}
.stage-index-blog {
    background: #f6f8fa;
}
.index-blog-container {
    position: relative;
    display: block;
    width: 70vw;
    margin: 3vw auto;
}
.index-blog-slider {
    position: relative;
    display: block;
    text-align: left;
    width: 100%;
    font-size: 0;
    line-height: 0;
    white-space: nowrap;
    margin: 2.76vw 0 0 0;
}

.index-blog-slider li {
    position: relative;
    display: inline-block;
    width: 15.94vw;
    margin: 0 1.25vw 0 0;
    cursor: pointer;
    box-shadow: 1vw 1vw 3vw rgba(215, 224, 229, 0.5);
    background: #fff;
    vertical-align: top;
}
.index-blog-slider li:hover {
    background: #80B4E0;
}
.index-blog-slider li .imgbox {
    position: relative;
    display: block;
    width: 100%;
    height: 10.5vw;
    overflow: hidden;
}
.index-blog-slider li .imgbox img {
    width: 100%;
    height: 100%;
    object-fit:cover;
}
.index-blog-slider li .textbox {
    position: relative;
    display: block;
    width: 100%;
    padding: 1.25vw;
    height: 10vw;
    font-weight: 500;
}
.index-blog-slider .datebox {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.index-blog-slider .datebox .date-text {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 100%;
    color: #5696CB;
}
.index-blog-slider li:hover .datebox .date-text {
    color:#fff;
}
.index-blog-slider .datebox .view-data {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.index-blog-slider .datebox .view-data::before {
    content: "";
    position: relative;
    display: none;
    width: 1.25vw;
    height:1.25vw;
    background: url(../images/icon_view.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0.5vw 0 0;
}
.index-blog-slider .datebox .view-data span{
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 100%;
    color: #a4a4a4;
}
.index-blog-slider li:hover .datebox .view-data span{
    color:#fff;
}
.index-blog-slider .textbox .text-data {
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 150%;
    color: #282828;
    white-space: normal;
    margin: 0.73vw 0 0 0;
    overflow: hidden;
    height: 4vw;
}
.index-blog-slider li:hover .textbox .text-data {
    color:#fff;
}
.index-blog-slider li .global-morebtn {
    justify-content: flex-end;
    margin: 0.5vw 0 0 0;
}
.index-blog-slider li:hover .global-morebtn span {
    color: #fff;
}
.index-blog-slider li:hover .global-morebtn::after {
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1200px) {
    .index-blog-container {
        width: 90%;
        margin: 3vw auto;
        padding: 22vw 0 5vw 0;
    }
    .index-blog-slider {
        margin: 6vw 0 0 0;
    }
    .index-blog-slider li {
        width: 52.26vw;
        margin: 0 4.26vw 0 0;
    }
    .index-blog-slider li .imgbox {
        height: 35vw;
    }
    .index-blog-slider li .textbox {
        padding: 4vw;
        height:50vw;
    }
    .index-blog-slider .datebox .date-text {
        font-size: 4.26vw;
    }
    .index-blog-slider .datebox .view-data::before {
        content: "";
        position: relative;
        display: none;
        width: 6.4vw;
        height:6.4vw;
        background: url(../images/icon_view.svg) no-repeat center center;
        background-size: contain;
        margin: 0 0.5vw 0 0;
    }
    .index-blog-slider .datebox .view-data span{
        font-size: 4.26vw;
    }
    .index-blog-slider .textbox .text-data {
        font-size:4.8vw;
        margin: 5vw 0 0 0;
        height: 22vw;
    }
    .index-blog-slider .textbox .global-morebtn span{
        display: block;
        font-size: 4.2vw;
    }
    .index-blog-slider li:hover .textbox .global-morebtn span{
        color:#A4A4A4;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .index-blog-container {
        width: 90%;
        margin: 3vw auto;
        padding: 13vw 0 3vw 0;
    }
    .index-blog-slider {
        margin: 3vw 0 0 0;
    }
    .index-blog-slider li {
        width: 28vw;
        margin: 0 2.5vw 0 0;
    }
    .index-blog-slider li .textbox {
        padding: 2vw;
        height:26vw;
    }
    .index-blog-slider .datebox .date-text {
        font-size: 2.28vw;
    }
    .index-blog-slider .datebox .view-data::before {
        content: "";
        position: relative;
        display: none;
        width: 6.4vw;
        height:6.4vw;
        background: url(../images/icon_view.svg) no-repeat center center;
        background-size: contain;
        margin: 0 0.5vw 0 0;
    }
    .index-blog-slider .datebox .view-data span{
        font-size: 2.28vw;
    }
    
    .index-blog-slider .textbox .text-data {
        font-size:2.571vw;
        margin: 2.5vw 0 0 0;
        height: 11.5vw;
    }
    .index-blog-slider .textbox .global-morebtn {
        margin-top: 2vw;
    }
    .index-blog-slider .textbox .global-morebtn span{
        display: block;
        font-size: 2.28vw;
    }
    .index-blog-slider .textbox .global-morebtn::after {
        width: 3vw;
        height: 3vw;
    }
    .index-blog-slider li:hover .textbox .global-morebtn span{
        color:#A4A4A4;
    }
}
.blog-tag-container {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 70vw;
    margin: 3vw auto;
}
.blog-tag-container .blog-tag-title {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    font-weight: 500;
    color: #282828;
}
.blog-tag-container .blog-tag-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 50vw;
}
.blog-tag-container .blog-tag-list li {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 100%;
    color: #5696CB;
    padding: 0.8vw 1.3vw;
    background: #fff;
    margin-left: 1vw;
    cursor: pointer;
    border-radius: 1.3vw;
}
.blog-tag-container .blog-tag-list li:hover {
    background: #ACDBFA;   
}
.index-tag-allbtn-box {
    position: absolute;
    right: -7vw;
}
@media screen and (max-width: 1200px) {
    .blog-tag-container {
        width: 90vw;
        margin: 0 auto 15vw auto;
        flex-direction: column;
        align-items: center;
    }
    .blog-tag-container .blog-tag-title {
        font-size: 4.8vw;
    }
    .blog-tag-container .blog-tag-list {
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        margin-top: 5vw;
    }
    .blog-tag-container .blog-tag-list li {
        font-size: 4.26vw;
        padding: 1.8vw 2.4vw;
        margin: 1.8vw 1vw;
        border-radius: 4vw;
    }
    .blog-tag-container .blog-tag-list li:hover {
        background: #ACDBFA;   
    }
    .index-tag-allbtn-box {
        position: relative;
        right: auto;
        margin: 3vw 0 0 0;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .blog-tag-container {
        width: 95vw;
        margin: 0 auto 15vw auto;
        flex-direction: column;
        align-items: center;
    }
    .blog-tag-container .blog-tag-title {
        font-size: 2.571vw;
    }
    .blog-tag-container .blog-tag-list {
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        margin-top: 3vw;
    }
    .blog-tag-container .blog-tag-list li {
        font-size: 2.28vw;
        padding: 1vw 2vw;
        margin: 1vw 0.5vw;
        border-radius: 4vw;
    }
    .blog-tag-container .blog-tag-list li:hover {
        background: #ACDBFA;   
    }
    .index-tag-allbtn-box {
        position: relative;
        right: auto;
        margin: 3vw 0 0 0;
    }
}
.stage-container.stage-container-func {
    display: block;
    height: 50.93vw;
}
.index-func-bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/index_func_bg.jpg) no-repeat center center;
    background-size: cover;
}
.index-func-left {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 50%;
    height: 100%;
    left: 0;
    background: #5796CB;
}
.index-func-left .global-main-title::before {
    background: url(../images/global_title_icon_w.svg) no-repeat center center;
}
.index-func-left .global-main-title .text1{
    color: #fff;
}
.index-func-right {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    right: 0;
}
.index-func-list {
    position: relative;
    display: block;
    border-left: 1px solid #fff;
    padding: 0 0 0 3.28vw;
    margin-top: 3vw;
}
.index-func-list li {
    position: relative;
    display: block;
    font-size: 1vw;
    font-weight: 400;
    line-height: 100%;
    padding:1.3vw 0;
    color: #fff;
    opacity: 0.5;
    cursor: pointer;
}

.index-func-list li:hover {
    opacity: 1;
}
.index-func-list li::before{
    content: "";
    position: absolute;
    display: block;
    width: 2vw;
    height: 2px;
    background: #fff;
    left: -4.4vw;
    top:50%;
    opacity: 0;
}
.index-func-list li.current::before{
    opacity: 1;
}
.index-func-list li.current {
    opacity: 1;
    font-size: 1.3vw;
}
.index-func-radio {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 33.59vw;
    height: 33.59vw;
    text-align: center;
}
.index-func-radio .radio-text-bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/index_func_radio.svg) no-repeat center center;
    background-size: contain;
    left: 0;
    top:0;
}
.index-func-radio .radio-white-bg {
    position: absolute;
    display: block;
    width: 84%;
    height: 84%;
    background: #fff;
    border-radius: 50%;
    left: 8%;
    top:8%;
}
.index-func-radio .radio-364-bg {
    position: absolute;
    display: block;
    width: 100%;
    left: 1%;
    top:1%;
}
.index-func-textbox {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
}
.index-func-textbox li {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
    opacity: 0;
}
.index-func-textbox li.current {
    opacity: 1;
}
.index-functext-title1 {
    position: relative;
    display: block;
    font-size: 2.19vw;
    line-height: 150%;
    color: #5696CB;
    font-weight: 500;
}
.index-functext-title2 {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 150%;
    color: #a4a4a4;
    font-weight: 500;
}
.index-functext-text {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 200%;
    color: #5d5d5d;
    font-weight: 500;
    margin: 1vw 0 0 0;
}
@media screen and (max-width: 1200px) {
    .stage-container.stage-container-func {
        height: 217vw;
    }
    .index-func-left {
        width: 100%;
        height: 60%;
        left: 0;
        background: #5796CB;
        justify-content: flex-start;
        padding: 25vw 0 0 0;
    }
    .index-func-right {
        width: 100%;
        height: 100%;
        right: auto;
        top:0;
        z-index: 2;
    }
    .index-func-list {
        padding: 0 0 0 5vw;
        margin-top: 5vw;
    }
    .index-func-list li {
        font-size: 4.26vw;
        line-height: 100%;
        padding:4.5vw 0;
    }
    .index-func-list li::before{
        width: 4vw;
        left: -7vw;
    }
    .index-func-list li.current {
        font-size: 4vw;
    }
    .index-func-radio {
        width: 80vw;
        height: 80vw;
    }
    .index-functext-title1 {
        font-size: 5.87vw;
    }
    .index-functext-title2 {
        font-size: 3vw;
    }
    .index-functext-text {
        font-size: 4.26vw;
        margin: 2vw 12vw 0 12vw;
        line-height: 180%;
    }
    .index-functext-morebtn {
        margin-top: 2vw;
    }
    .index-functext-morebtn span{
        font-size: 3vw;
    }
    .index-functext-morebtn .global-morebtn {
        margin: 0;
    }
    .index-functext-morebtn .global-morebtn span {
        display: block;
        font-size: 4.26vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .nav .nav-menu ul li{
        font-size: 26px;
        line-height: 1em;
    }
    .nav .nav-iconbtn ul li .imgbox{
        width: 40px;
    }
    .nav .nav-iconbtn ul li .textbox{
        font-size: 20px;
    }
    .nav-sreach-container{    top: calc(100dvh - 30vw);}
    .nav-sreach-container .sreach-box input{font-size: 20px;}
    .stage-container.stage-container-func {
        height: 125vw;
    }
    .index-func-left {
        width: 100%;
        height: 60%;
        left: 0;
        background: #5796CB;
        justify-content: flex-start;
        padding: 8vw 0 0 5vw;
        align-items: flex-start;
    }
    .index-func-right {
        width: 100%;
        height: 100%;
        right: auto;
        top:0;
        z-index: 2;
    }
    .index-func-list {
        padding: 0 0 0 5vw;
        margin-top: 5vw;
        margin-left: 9vw;
    }
    .index-func-list li {
        font-size: 2.28vw;
        line-height: 100%;
        padding:2vw 0;
    }
    .index-func-list li::before{
        width: 4vw;
        left: -7vw;
    }
    .index-func-list li.current {
        font-size: 2.571vw;
    }
    .index-func-radio {
        width: 70vw;
        height: 70vw;
    }
    .index-functext-title1 {
        font-size: 3.142vw;
    }
    .index-functext-title2 {
        font-size: 3vw;
    }
    .index-functext-text {
        font-size: 2.28vw;
        margin: 2vw 12vw 0 12vw;
        line-height: 180%;
    }
    .index-functext-morebtn {
        margin-top: 2vw;
    }
    .index-functext-morebtn span{
        font-size: 2.28vw;
    }
    .index-functext-morebtn .global-morebtn {
        margin: 0;
    }
    .index-functext-morebtn .global-morebtn span {
        display: block;
        font-size: 2.28vw;
    }
}
.stage-container-link {
    background: #80B4E0;
}
.index-link-container {
    position: relative;
    display: block;
    width: 70vw;
    margin: 6.25vw auto;
}
.index-link-container .global-main-title::before {
    background: url(../images/global_title_icon_w.svg) no-repeat center center;
}
.index-link-container .global-main-title .text1,
.index-link-container .global-main-title .text2{
    color: #fff;
}
.index-link-list {
    position: relative;
    display: flex;
    justify-content:space-between;
    align-items: flex-start;
    width: 100%;
    margin: 3vw 0 0 0;
}
.index-link-list li {
    margin: 0;
    cursor: pointer;
    width: 16.56vw;
}
.index-link-list li .imgbox {
    position: relative;
    display: block;
    width: 100%;
    height: 9vw;
    overflow: hidden;
}
.index-link-list li .imgbox img {
    width: auto;
    height: 100%;
    left: 50%;
    top:50%;
    transform: translate(-50%,-50%);
}
.index-link-list li:hover .imgbox::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.3);
}
.index-link-list li .textbox {
    position: relative;
    display: block;
    width: 100%;
}
.index-link-list li:hover .textbox{
    opacity: 0.7;
}
.index-link-list li .textbox .t1 {
    font-size: 1.25vw;
    line-height: 150%;
    font-weight: 500;
    color: #fff;
    margin: 0.8vw 0 0 0;
}
.index-link-list li .textbox .t2 {
    font-size: 0.89vw;
    line-height: 150%;
    font-weight: 500;
    color: #fff;
    margin: 0.5vw 0 0 0;
}
@media screen and (max-width: 1200px) {
    .index-link-container {
        width: 90vw;
        margin: 26vw auto;
    }
    .index-link-list {
        margin: 10vw 0 0 0;
        flex-wrap: wrap;
        justify-content: center;
        align-items:stretch; 
    }
    .index-link-list li {
        width: 40vw;
        margin: 5vw 2vw;
    }
    .index-link-list li .textbox .t1 {
        font-size: 4.5vw;
        margin: 2vw 0 0 0;
    }
    .index-link-list li .textbox .t2 {
        font-size: 4.26vw;
        margin: 1vw 0 0 0;
    }
    .index-link-list li .imgbox {
        height: 21vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .index-link-container {
        width: 90vw;
        margin: 15vw auto;
    }
    .index-link-list {
        margin: 3vw 0 0 0;
        flex-wrap: wrap;
        justify-content: center;
        align-items:stretch; 
    }
    .index-link-list li {
        width: 40vw;
        margin: 3vw 1vw;
    }
    .index-link-list li .textbox .t1 {
        font-size: 2.571vw;
        margin: 2vw 0 0 0;
    }
    .index-link-list li .textbox .t2 {
        font-size: 2.28vw;
        margin: 1vw 0 0 0;
    }
    .index-link-list li .imgbox {
        height: 21vw;
    }
}
.stage-container-footer {
    z-index: 2;
    overflow: visible;
    background: rgb(255,255,255);
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(247,249,250,1) 100%);
}
.sitemap-title {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 3vw 0 2vw 0;
    background: #fff;
}
.sitemap-title .top-btn {
    position: absolute;
    display: block;
    width: 2.6vw;
    height: 2.6vw;
    left: calc(50% - 1.3vw);
    top:-1.3vw;
    z-index: 1;
    cursor: pointer;
}
.sitemap-title .t1 {
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 150%;
    color: #a4a4a4;
    font-weight: 400;
    letter-spacing: 0.5vw;
    padding: 0 0 0 0.5vw;
    
}
.sitemap-title .t2 {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 100%;
    color: #282828;
    font-weight: 400;
    margin: 0.5vw 0 0 0;
}
.sitemap-title .t2::before{
    content: "";
    position: absolute;
    display: block;
    width: 0.65vw;
    height: 1px;
    background: #5696CB;
    left: -1vw;
    top: 50%;
}
.sitemap-title .t2::after{
    content: "";
    position: absolute;
    display: block;
    width: 0.65vw;
    height: 1px;
    background: #5696CB;
    right: -1vw;
    top: 50%;
}
.sitemap-title .expand-btn {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
    cursor: pointer;
}
.sitemap-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: stretch;
    
    padding: 0;
    max-height: 0;
    -webkit-transition: max-height 0.5s ease,padding 0.5s ease;
    transition: max-height 0.5s ease,padding 0.5s ease;
    overflow: hidden;
}
.sitemap-list.expand {
    max-height: 100vw;
    padding: 3vw 0 3vw 0;
}
.sitemap-list dl {
    position: relative;
    display: block;
    text-align: center;
    width: 10vw;
    border-left: 1px solid #EAEAEA;
}
.sitemap-list dl:nth-child(1) {
    border: 0;
}
.sitemap-list dl dt {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 100%;
    color: #5696CB;
    font-weight: 500;
    width: 100%;
    margin-bottom: 1.24vw;
}
.sitemap-list dl dd {
    position: relative;
    display: block;
    width: 100%;
}
.sitemap-list dl dd ul {
    position: relative;
    display: block;
    width: 100%;
}

.sitemap-list dl dd ul li {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
}
.sitemap-list dl dd ul li .li-btn {
    font-size: 0.89vw;
    line-height: 150%;
    color: #282828;
    font-weight: 500;
    cursor: pointer;
    margin: 1.4vw 0 0 0;
}
.sitemap-list dl dd ul li .li-btn:hover {
    color: #5696CB; 
}
.sitemap-list dl dd ul li .sub-btn {
    font-size: 0.73vw;
    line-height: 150%;
    color: #a4a4a4;
    font-weight: 400;
    cursor: pointer;
    margin: 0.6vw 0 0 0;
}
.sitemap-list dl dd ul li .sub-btn:hover {
    text-decoration: underline;
}
.sitemap-list dl:nth-child(5) dd ul li .li-btn {
    color: #5696CB;
}
@media screen and (max-width: 1200px) {
    .sitemap-title .top-btn {
        width: 40px;
        height: 40px;
        left: calc(50% - 20px);
        top:-20px;
    }
    .sitemap-title {
        padding: 7vw 0;
    }
    .sitemap-title .t1 {
        font-size: 5.3vw;
        letter-spacing: 2.2vw;
        padding: 0 0 0 2.2vw;
    }
    .sitemap-title .t2 {
        font-size: 4.3vw;
        margin: 1vw 0 0 0;
    }
    .sitemap-title .t2::before{
        width: 4vw;
        left: -9vw;
    }
    .sitemap-title .t2::after{
        width: 4vw;
        right: -9vw;
    }
    .sitemap-list {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }
    .sitemap-list.expand {
        max-height: 500vw;
    }
    .sitemap-list dl {
        width: 90%;
        margin: 0 auto;
        border-top: 1px solid #EAEAEA;
        border-left: 0px;
        text-align: left;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 0 0 5vw 0;
    }
    .sitemap-list dl:nth-child(1) {
        border: 0;
    }
    .sitemap-list dl dt {
        font-size: 4.3vw;
        width: 50%;
        margin: 5vw 0 0 0;
    }
    .sitemap-list dl dd {
        width: 50%;
    }
    .sitemap-list dl dd ul {
        width: 100%;
        margin: 0 0 3vw 0;
    }
    .sitemap-list dl dd ul li {
        align-items: flex-start;
    }
    .sitemap-list dl dd ul li .li-btn {
        font-size: 4.3vw;
        margin: 4vw 0 0 0;
    }
    .sitemap-list dl dd ul li .sub-btn {
        font-size: 3.5vw;
        margin: 2.5vw 0 0 0;
    }
    .sitemap-list dl dd ul li .sub-btn:last-child {
        margin-bottom: 2vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px) {
    .sitemap-title {
        padding: 3vw 0;
    }
    .sitemap-title .t1 {
        font-size: 2.85vw;
        letter-spacing: 1vw;
        padding: 0 0 0 1vw;
    }
    .sitemap-title .t2 {
        font-size: 2.28vw;
        margin: 1vw 0 0 0;
    }
    .sitemap-title .t2::before{
        width: 2.5vw;
        left: -4.5vw;
    }
    .sitemap-title .t2::after{
        width: 2.5vw;
        right: -4.5vw;
    }
    .sitemap-list {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }
    .sitemap-list.expand {
        max-height: 500vw;
    }
    .sitemap-list dl {
        width: 90%;
        margin: 0 auto;
        border-top: 1px solid #EAEAEA;
        border-left: 0px;
        text-align: left;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 0 0 2vw 0;
    }
    .sitemap-list dl:nth-child(1) {
        border: 0;
    }
    .sitemap-list dl dt {
        font-size: 2.28vw;
        width: 50%;
        margin: 3vw 0 0 0;
    }
    .sitemap-list dl dd {
        width: 50%;
    }
    .sitemap-list dl dd ul {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }
    .sitemap-list dl dd ul li {
        align-items: flex-start;
        width: 50%;
    }
    .sitemap-list dl dd ul li .li-btn {
        font-size: 2.28vw;
        margin: 2vw 0 0 0;
    }
    .sitemap-list dl dd ul li .sub-btn {
        font-size: 2vw;
        margin: 2vw 0 0 0;
    }
}
.footer-contactbox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border-top:1px solid #eaeaea;
    padding: 3vw 15vw;
}
.footer-contactbox .logobox {
    position: relative;
    display: block;
    width: 10.32vw;
}
.footer-contactbox .contact-list {
    position: relative;
    display: block;
    
}
.footer-contactbox .contact-list1 {
    margin-right: 4vw;
    margin-left: 4vw;
}
.footer-contactbox .contact-list2 {
    margin-right: 4vw;
}
.footer-contactbox .contact-list li {
    font-size: 0.73vw;
    line-height: 200%;
    font-weight: 500;
    color: #282828;
}
.footer-contactbox .contact-list li .icon-map {
    position: relative;
    display: inline-block;
    width: 1.25vw;
    cursor: pointer;
    top:0.3vw;
}
.footer-contactbox .followl-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.footer-contactbox .followl-list dt {
    font-size: 12px;
    line-height: 18px;
    font-weight: 500;
}
.footer-contactbox .followl-list dd {
    cursor: pointer;
    width: 1.25vw;
    margin: 0 1.8vw 0 0;
}
.footer-contactbox .followl-list dd:nth-child(2) {
    margin-left: 1vw;
}
.footer-copyright {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #eaeaea;
    padding: 3vw 0;
    font-size: 12px;
    color: #282828;
    font-weight: 300;
}
@media screen and (max-width: 1200px) {
    .footer-contactbox {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        border-top:1px solid #eaeaea;
        padding: 6vw 5vw;
    }
    .footer-contactbox .logobox {
        width: 37.86vw;
    }
    .footer-contactbox .contact-list {
        position: relative;
        display: block;
    }
    .footer-contactbox .contact-list1 {
        margin: 5vw 0 0 0;
    }
    .footer-contactbox .contact-list2 {
        margin:0 0 5vw 0;
    }
    .footer-contactbox .contact-list li {
        font-size: 3.2vw;
        line-height: 200%;
    }
    .footer-contactbox .contact-list li .icon-map {
        width:5vw;
        top:1vw;
    }
    .footer-contactbox .followl-list {
        display: block;
        text-align: center;
        width: 100%;
    }
    .footer-contactbox .followl-list dt {
        font-size: 3.2vw;
        line-height: 150%;
        display: block;
        margin: 6vw 0 6vw 0;
    }
    .footer-contactbox .followl-list dd {
        cursor: pointer;
        width: 6.4vw;
        margin: 0 4.5vw;
        display: inline-block;
    }
    .footer-copyright {
        padding: 20px 0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .footer-contactbox {
        display: block;
        width: 100%;
        border-top:1px solid #eaeaea;
        padding: 6vw 5vw;
    }
    .footer-contactbox .logobox {
        width: 20.28vw;
    }
    .footer-contactbox .contact-list {
        position: relative;
        display:inline-block;
    }
    .footer-contactbox .contact-list1 {
        margin: 3vw 0 3vw 0;
        width: 55%;
    }
    .footer-contactbox .contact-list2 {
        margin:0 0 5vw 5%;
        width: 35%;
    }
    .footer-contactbox .contact-list li {
        font-size: 1.72vw;
    }
    .footer-contactbox .contact-list li .icon-map {
        width:2.2vw;
    }
    .footer-contactbox .followl-list {
        display: block;
        text-align: center;
        width: 100%;
    }
    .footer-contactbox .followl-list dt {
        font-size: 1.72vw;
        line-height: 150%;
        display: block;
        margin: 0vw 0 3vw 0;
    }
    .footer-contactbox .followl-list dd {
        cursor: pointer;
        width: 3.43vw;
        margin: 0 3vw;
        display: inline-block;
    }
    .footer-copyright {
        padding: 20px 0;
    }
}
.sidebtnbox {
    position: fixed;
    display: block;
    right: 3vw;
    bottom: 3vw;
    width: 15.625vw;
    z-index: 9;
}
.sidebtnbox .sidebtn-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
.sidebtnbox .icon-btn {
    background: #fff;
    box-shadow: 0 0 3.125vw rgba(215, 224, 229, 0.65);
    cursor: pointer;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.sidebtnbox .icon-btn1 {
    width: 100%;
    z-index: 9;
}
.sidebtnbox .icon-btn .icon-img {
    width: 5vw;
    height: 5vw;
}
.sidebtnbox .icon-btn1 .icon-img {
    display: none;
}
.sidebtnbox .icon-btn1 .icon-img {
    background: url(../images/side_btn1.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn1:hover .icon-img {
    background: url(../images/side_btn1_hover.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn2 .icon-img {
    background: url(../images/side_btn2.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn2:hover .icon-img {
    background: url(../images/side_btn2_hover.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn3 .icon-img {
    background: url(../images/side_btn3.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn3:hover .icon-img {
    background: url(../images/side_btn3_hover.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn:hover .icon-text {
    color: #fff;
}
.sidebtnbox .icon-btn1 .textbox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    text-align: center;
    padding: 1vw 0;
}
.sidebtnbox .icon-btn1 .textbox .t1 {
    position: relative;
    display: block;
    font-size: 0.89vw;
    line-height: 200%;
}
.sidebtnbox .icon-btn1 .textbox .t1 span {
    color: #5696CB;
    display: block;
}
.sidebtnbox .icon-btn1 .textbox .morebtn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 9vw;
    height: 2.3vw;
    text-align: center;
    border:1px solid #a4a4a4;
    background: #fff;
    margin: 1vw 0 1vw 0;
}
.sidebtnbox .icon-btn1:hover .textbox .morebtn {
    border:1px solid #fff;
    background: #80B4E0;
}
.sidebtnbox .icon-btn1 .textbox .morebtn::after {
    content: "";
    position: absolute;
    width:1.67vw;
    height: 1.67vw;
    background: url(../images/icon_more_arrow.svg) no-repeat center center;
    background-size: contain;
    top:0.45vw;
    right: 0.5vw;
}
.sidebtnbox .icon-btn1:hover .textbox .morebtn::after {
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
.sidebtnbox .icon-btn1 .textbox .morebtn span {
    position: relative;
    display: block;
    font-size: 0.8vw;
    line-height: 100%;
    color: #282828;
}
.sidebtnbox .icon-btn1:hover .textbox .morebtn span {
    color:#fff;
}
.sidebtnbox .icon-btn2 {
    width: 7.5vw;
    height: 7.5vw;
    margin: 0.5vw 0 0 0;
}
.sidebtnbox .icon-btn2:hover {
   background: #80B4E0;
}
.sidebtnbox .icon-btn3 {
    width: 7.5vw;
    height: 7.5vw;
    margin: 0.5vw 0 0 0;
}
.sidebtnbox .icon-btn3:hover {
   background: #80B4E0;
}
.sidebtnbox.minside .icon-btn1 {
    display: none;
}
@media screen and (max-width: 1200px) {
    .sidebtnbox {
        right: 10px;
        bottom: 10px;
        width: 50px;
        z-index: 9;
    }
    .sidebtnbox .icon-btn {
        background: #fff;
        box-shadow: 0 0 5px rgba(215, 224, 229, 0.65);
        cursor: pointer;
    }
    .sidebtnbox .icon-btn1,
    .sidebtnbox .icon-btn2,
    .sidebtnbox .icon-btn3{
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 60px;
        z-index: 9;
        margin: 0 0 10px 0;
    }
    .sidebtnbox .icon-btn1 .icon-img,
    .sidebtnbox .icon-btn2 .icon-img,
    .sidebtnbox .icon-btn3 .icon-img{
        width: 60%;
        height: 60%;
        display: block;
    }
    .sidebtnbox .icon-btn .icon-img img {
        width: 100%;
    }
    .sidebtnbox .icon-btn .icon-text {
        display: block;
        font-size: 12px;
        line-height: 150%;
    }
    .sidebtnbox .icon-btn1 .textbox {
        display: none;
    }
    .sidebtnbox.minside .icon-btn1 {
        display: flex;
    }
}
.stage-privacy {
    background: #F6F8FA;
}
.stage-privacy .privacy-content .sub-title::before {
    display: none;
}
.stage-container-page {
    background-color: rgba(246,248,250,1);
    background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png);
    background-position: left top,right bottom;
    background-repeat: no-repeat;
    background-size: 15% auto,22.5% auto;
}
.stage-container-article {
    background-color: #fff;
    background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(246,248,250,1) 100%);
    background-position: left top,right bottom,center center;
    background-repeat: no-repeat;
    background-size: 15% auto,22.5% auto,100% 100%;
}
.stage-container-page.stage-lianan-video {
    background: url(../images/lianan_video_bg.jpg) no-repeat center center;
    background-size: cover;
}
.stage-content {
    position: relative;
    display: block;
    width: 68.75vw;
    margin: 0 auto;
}
.breadcrumb {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    padding: 3rem 0;
    flex-wrap: wrap;

}
.breadcrumb li {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1rem;
    color: #282828;
}
.breadcrumb li::after {
    content: ">";
    position: relative;
    display: block;
    padding: 0 0.25rem;
    font-weight: 500;
}
.breadcrumb li:last-child {
    color: #80B4E0;
}
.breadcrumb li:last-child::after {
    display: none;
}
.stage-main-title {
    position: relative;
    display: block;
}
.stage-main-title .textbox b{font-weight: bold;}
.stage-main-title .textbox{
    margin-top: 1em;
}
.stage-main-title h1 {
    position: relative;
    display: block;
    font-size: 3.75rem;
    line-height: 3.75rem;
    color: #282828;
    font-weight: 400;
    letter-spacing: 0.4rem;
}
.stage-main-title .sub-name {
    position: relative;
    display: inline-block;
    font-size: .8854rem;
    line-height: 1rem;
    color: #a4a4a4;
    padding: 0.6rem 0;
    font-weight: 500;
    letter-spacing: .1em;
}
.stage-main-title .sub-name::after {
    content: "";
    position: absolute;
    display: block;
    width: 3rem;
    height: 1px;
    background: #a4a4a4;
    left: calc(100% + 1rem);
    top:50%;
    
}
.main-content {
    position: relative;
    display: block;
    padding: 6rem 0 5rem 0;
}

.stage-functional .functional-content1{
    padding-top: 3rem;
}

.main-content .sub-title {
    position: relative;
    display: inline-block;
    margin-bottom: 0.8rem;
}
.main-content .sub-title span {
    position: relative;
    display: inline-block;
    font-size: 1.56rem;
    line-height: 1.56rem;
}
.main-content .sub-title::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 25%;
    bottom: 0;
    background: #ACDBFA;
}
.stage-content .textbox {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 1.8rem;
    color: #282828;
    text-align: justify;
}
.stage-content .textbox a {
    color: #6499FF;
}
.stage-content .textbox .list-row{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 0;
}
.stage-content .textbox .list-row li {
    padding: 0.5rem 1rem;
}
.link-list {
    position: relative;
    display: block;
    padding: 1rem 0;
}
.link-list li {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 1.8rem;
    color: #282828;
    padding: 0 0 0 1rem;
}
.link-list li::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.5rem;
    height: 0.5rem;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    top:0.6rem;
    left: 0;
}
.link-list li a {
    color: #6499FF;
}
.textbox-list {
    position: relative;
    padding-left: 1rem;
}
.textbox-list li {
    position: relative;
    display: list-item;
    list-style-type: decimal;
    font-size: 1rem;
    line-height: 1.8rem;
    color: #282828;
}

@media screen and (max-width: 1200px) {
    .stage-container-page {
        background-color: rgba(246,248,250,1);
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png);
        background-position: left top,right bottom;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto;
    }
    .stage-container-article {
        background-color: #fff;
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(246,248,250,1) 100%);
        background-position: left top,right bottom,center center;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto,100% 100%;
    }
    .stage-content {
        width: 90vw;
    }
    .breadcrumb {
        padding:5rem 0;
    }
    .breadcrumb li {
        font-size: 1.5rem;
        line-height: 1.5rem;
    }
    .breadcrumb li::after {
        padding: 0 1rem;
    }
    .stage-main-title {
        text-align: center;
    }
    .stage-main-title h1 {
        font-size: 5.3rem;
        line-height: 5.3rem;
        text-align: center;
    }
    .stage-main-title .sub-name {
        font-size: 1.6rem;
        line-height: 1.6rem;
        padding: 1rem 0;
        text-align: center;
    }
    .stage-main-title .sub-name::before {
        content: "";
        position: absolute;
        display: block;
        width: 2.5rem;
        height: 1px;
        background: #a4a4a4;
        right: calc(100% + 1rem);
        top:50%;
    }
    .stage-main-title .sub-name::after {
        content: "";
        position: absolute;
        display: block;
        width: 2.5rem;
        height: 1px;
        background: #a4a4a4;
        left: calc(100% + 1rem);
        top:50%;
    }
    .main-content {
        padding: 4rem 0 10rem 0;
    }
    .stage-functional .functional-content1{        padding-top: 4rem;    }
    .main-content .sub-title {
        margin-bottom: 2rem;
    }
    .main-content .sub-title span {
        font-size: 3rem;
        line-height: 3rem;
    }
    .stage-content .textbox {
        font-size: 2rem;
        line-height: 3rem;
    }
    .stage-content .textbox .list-row{
        flex-direction: column;
    }
    .link-list {
        padding: 3rem 0;
    }
    .link-list li {
        font-size: 2rem;
        line-height: 3rem;
        padding: 0.5rem 0 0.5rem 2rem;
    }
    .link-list li::before {
        width: 1.8rem;
        height: 1.8rem;
        top:1.1rem;
    }
    .textbox-list {
        padding-left: 1.5rem;
    }
    .textbox-list li {
        font-size: 2rem;
        line-height: 3rem;
    }
}
@media screen and (max-width: 600px) {
    .stage-main-title h1 {
        font-size: 3.8rem;
        line-height: 120%;
        text-align: center;
    }
}
.content-404 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    min-height: 40vw;
}
.titlebox-404 {
    position: relative;
    display: block;
}
.titlebox-404 .icon-404 {
    position: relative;
    display: block;
    width: 3.75rem;
    margin: 0 auto;
}
.titlebox-404 .title-404 {
    position: relative;
    display: block;
    font-size: 3.12rem;
    line-height: 3.12rem;
    text-align: center;
    color: #80B4E0;
    font-weight: 500;
    padding: 1rem 0;
}
.content-404 .textbox {
    text-align: center;
}
@media screen and (max-width: 1200px) {
    .content-404 {
        min-height: 150vw;
    }
}
.popup{
    position: fixed;
    display: none;
    width: 100vw;
    height: 100dvh;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.7);
    z-index: 999;
}
.popup.expand {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.popup-container {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 875px;
    height: 560px;
    background: #fff;
    background-image:url(../images/popup_top_bg.png),url(../images/popup_bottom_bg.png);
    background-position: left top,right bottom;
    background-repeat: no-repeat;
    background-size: 30% auto,35% auto;
}
.popup-env .popup-container {
    height: auto;
    display: block;
    padding: 0;
}
.popup-env-pages {
    position: absolute;
    display: block;
    width: 100%;
    top:calc(100% + 2rem);
    text-align: center;
}
.popup-dot-list span {
    position: relative;
    display: inline-block;
    cursor: pointer;
    margin: 0 12px;
    width: 15px;
    height: 15px;
    vertical-align: middle;
    background: #fff;
    opacity: 0.2;
    border-radius: 50%;
}
.popup-dot-list span.swiper-pagination-bullet-active {
    
    opacity: 1;
}
.popup-dot-list .arrow-left {
    width: 20px;
    height: 20px;
    background: none;
    opacity: 1;
}
.popup-dot-list .arrow-left::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-left: 2px solid #fff;
    border-top:2px solid #fff;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.popup-dot-list .arrow-left.set-off::before {
    opacity: 0.3;
}
.popup-dot-list .arrow-right {
    width: 20px;
    height: 20px;
    background: none;
    opacity: 1;
}
.popup-dot-list .arrow-right::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-right: 2px solid #fff;
    border-top:2px solid #fff;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.popup-dot-list .arrow-right.set-off::before {
    opacity: 0.3;
}

@media screen and (max-width: 750px) {
    .popup-dot-list {
        padding: 0 0 3vw 0;
    }
    .popup-dot-list li {
        width: 2vw;
        height: 2vw;
        margin: 0 1.2vw;
    }
    .popup-dot-list li.arrow-left {
        width: 3vw;
        height: 3vw;
    }
    .popup-dot-list li.arrow-right {
        width: 3vw;
        height: 3vw;
    }
}
.popup-container .close-btn {
    position: absolute;
    display: block;
/*    top: 20px;
    right: 20px;
    height: 50px;
    width: 50px; */
    top: 2.4vh;
    right: 1vw;
    width: 2vw;
    height: 2vh;
    cursor: pointer;
    z-index: 99;
}
.popup-container .close-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    background: #376D99;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.popup-container .close-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    background: #376D99;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.popup-content {
    position: relative;
    display: block;
}
.popup-line-service-title {
    position: relative;
    display: block;
}
.line-service-icon {
    position: relative;
    display: block;
    width: 85px;
    margin: 0 auto;
}
.line-service-title {
    position: relative;
    display: block;
    font-size: 30px;
    line-height: 40px;
    color: #80B4E0;
    text-align: center;
    padding: 0 30px;
}
.line-service-title.red-text {
    color: #eb6877;
}
.popup-content .textbox {
    position: relative;
    display: block;
/*    font-size: 20px; */
    font-size: 22px;
    line-height: 30px;
    color: #282828;
    padding: 30px 70px;
    text-align: center;
}
.popup-content .textbox a {
    color: #80B4E0;
    text-decoration: underline;
}
.popup-content .textbox .blue-text {
    color: #80B4E0;
}
.popup-content .dot-animate {
    position: relative;
    display: block;
    text-align: center;
    margin: 40px 0 0 0;
}
.popup-content .dot-animate span {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #84BCFF;
    border-radius: 50%;
    margin: 0 10px;
}
.popup-content .dot-animate span:nth-child(1) {
    -webkit-animation: dot-animate 1s ease 0s infinite normal both;
    animation: dot-animate 1s ease 0s infinite normal both;
}
.popup-content .dot-animate span:nth-child(2) {
    -webkit-animation: dot-animate 1s ease 0.2s infinite normal both;
    animation: dot-animate 1s ease 0.2s infinite normal both;
}
.popup-content .dot-animate span:nth-child(3) {
    -webkit-animation: dot-animate 1s ease 0.4s infinite normal both;
    animation: dot-animate 1s ease 0.4s infinite normal both;
}
@-webkit-keyframes dot-animate {
    0% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    60% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@keyframes dot-animate {
    0% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    60% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
.btn-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn-list li {
    position: relative;
    display: block;
}
.btn-list .btn {
    position: relative;
    display: block;
    width: 220px;
    text-align: center;
/*    font-size: 20px; */
    font-size: 1.25em;
    line-height: 20px;
    padding: 10px 0;
    background: #376D99;
    color: #fff;
    border-radius: 25px;
    margin: 0 15px;
    font-weight: 300;
    cursor: pointer;
}
.btn-list .btn:hover {
    background: #80B4E0;
}
@media screen and (max-width: 1200px) {
    .popup-container {
        width: 90%;
        height: auto;
        padding: 5rem 0;
    }
    .line-service-title {
        font-size: 20px;
        line-height: 30px;
    }
    .popup-content .textbox {
        font-size: 16px;
        line-height: 24px;
        padding: 24px;
    }
    .btn-list {
        flex-direction: column;
    }
    .btn-list .btn {
        font-size: 16px;
        line-height: 24px;
        padding: 10px 0;
        margin: 10px 0;
    }
    .popup-container .close-btn {
        top:5px;
        right: 5px;
        height: 30px;
        width: 30px;
    }
}

.subscribe-content {
    padding: 5rem 10rem;
    background: #fff;
    margin: 3rem 0 10rem 0;
}
.form-base {
    position: relative;
    display: block;
    margin: 2rem 0;
}
.form-base dt {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 1rem;
    padding: 1rem 0;
    color: #376D99;
}
.form-base dd {
    position: relative;
    display: block;
}
.form-base input {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1rem;
    line-height: 2rem;
    border-radius: 0.5rem;
    border:#4a4a4a 1px solid;
}
.main-btn {
    position: relative;
    display: block;
    width: 14.58rem;
    background: #376D99;
    font-size: 1rem;
    line-height: 2rem;
    color: #fff;
    border-radius: 2rem;
    text-align: center;
    margin: 1rem auto;
    padding: 1rem 0;
}
.main-btn:hover {
    background: #80B4E0;
}
@media screen and (max-width: 1200px) {
    .subscribe-content {
        padding: 5rem 3rem;
        margin: 3rem 0 10rem 0;
        background: none;
    }
    .form-base {
        margin: 2rem 0 5rem 0;
    }
    .form-base dt {
        font-size: 2rem;
        line-height: 3rem;
        padding: 1.5rem 0;
    }
    .form-base input {
        font-size: 2rem;
        line-height: 3rem;
        border-radius: 1rem;
    }
    .main-btn {
        width: 25rem;
        font-size: 2rem;
        line-height: 3rem;
        border-radius: 4rem;
        text-align: center;
        margin: 2rem auto;
        padding: 1.5rem 0;
    }
    .main-btn:hover {
        background: #80B4E0;
    }
}
.stage-text-bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 35vw;
    top:0;
    left: 0;
    background: url(../images/page_text_bg.svg) no-repeat center center;
    background-size: contain;
}
.hero-banner {
    position: relative;
    display: block;
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}
.hero-banner .textbox {
    position: relative;
    display: block;
    width: 95%;
    margin: 0 auto;
    background: #fff;
    background-image:url(../images/deco.png);
    background-position: top right;
    background-size: 30% auto;
    background-repeat: no-repeat;
    top:-3vw;
    box-shadow: 0 1vw 1vw rgba(215, 224, 229, 0.5);
    padding: 2vw;
    border-bottom: 0.5vw solid #5696CB;
}
.hero-banner .textbox .sub-tab {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.hero-banner .textbox .sub-tab .tab-name {
    position: relative;
    display: block;
    background: #5696CB;
    border-radius: 0.2vw;
    color: #fff;
    padding: 0.5vw 1vw;
    font-size: 1vw;
    line-height: 1vw;
}
.hero-banner .textbox .sub-tab .tab-date {
    position: relative;
    display: block;
    color: #5696CB;
    padding: 0.5vw 1vw;
    font-size: 1vw;
    line-height: 1vw;
}
.hero-banner .textbox h1 {
    position: relative;
    display: block;
    font-size: 2vw;
    line-height: 3vw;
    color: #282828;
    margin-top: 1vw;
    text-align: justify;
    font-weight: 500;
}
.main-content-article {
    width: 95%;
    margin: 0 auto;
}
.main-content-article .top-textbox {
    position: relative;
    display: flex;
    width: 100%;
    justify-content:space-between;
    align-items: center;
    border-bottom: 1px solid #DBDBDB;
    padding: 0 0 30px 0;
}
.main-content-article .top-textbox .author {
    position: relative;
    display: block;
    font-size: 20px;
    line-height: 28px;
    color: #A4A4A4;
}
.main-content-article .top-textbox .font-size-btn {
    position: relative;
    display: block;
    font-size: 20px;
    line-height: 28px;
    color: #282828;
}
.main-content-article .top-textbox .font-size-btn {
    position: relative;
    display: block;
}
.main-content-article .top-textbox .font-size-btn li {
    position: relative;
    display: inline-block;
    height: 40px;
    font-size: 20px;
    line-height: 40px;
    vertical-align: middle;
    text-align: center;
    margin: 0 0 0 5px;
}
.main-content-article .top-textbox .font-size-btn li.item {
    width: 40px;
    cursor: pointer;
}
.main-content-article .top-textbox .font-size-btn li.item.current {
    background: #5696CB;
    color: #fff;
    border-radius: 50%;
}
.article-content {
    position: relative;
    display: block;
    font-size: 17px;
    line-height: 34px;
    color: #5D5D5D;
    text-align: justify;
}
.article-content img {
    width: inherit;
    height: inherit;
    max-width: 100%;
}
.article-content h2,.article-content h3 {
    position: relative;
    display: block;
    font-size: 2em;
    line-height: 150%;
    font-weight: bolder;
    color: #282828;
    margin: 1.5em 0 1em 0;
}
.article-content h4 {
    position: relative;
    display: block;
    font-size: 1.5em;
    line-height: 180%;
    font-weight: bolder;
    color: #282828;
}
.article-content h5 {
    position: relative;
    display: block; 
    font-size: 1.17em;
    line-height: 180%;
    font-weight: bolder;
    color: #282828;
}
.article-content h6 {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 180%;
    font-weight: bolder;
    color: #282828;
}
/*.article-content h5 {
    position: relative;
    display: block;
    font-size: .83em;
    line-height: 1.6em;
    font-weight: bolder;
    color: #282828;
}
.article-content h6 {
    position: relative;
    display: block;
    font-size: .67em;
    line-height: 1.3em;
    font-weight: bolder;
    color: #282828;
}*/
.article-content p {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 2em;
}
.article-content em{
    font-style: italic;
}
.article-content strong{
    font-weight: bold;
}
.article-content ul {
    display: block;
    list-style-type: disc;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 2em;
}
.article-content ul li {
    position: relative;
    display: list-item;
    list-style-type:disc;
}
.article-content ol {
    display: block;
    list-style-type: decimal;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 2em;
}
.article-content ol li {
    position: relative;
    display: list-item;
    list-style-type: decimal;
}
.article-content a {
    color: #5696CB;
}

.article-content .highlight1 {
    position: relative;
    display: block;
    font-size: 1.6em;
    line-height: 150%;
    font-weight: bolder;
    margin: 1.5em 0 1em 0;
    padding-left: 2.2em;
    color: #5696CB;
}
.article-content .highlight1::before {
    content: "";
    position: absolute;
    display: block;
    width: 2em;
    height: 2em;
    background: url(../images/global_title_icon.svg) no-repeat center center;
    background-size: contain;
    top:calc(50% - 1em);
    left:0em;
}
.article-content .highlight2 {
    position: relative;
    display: block;
    font-size: 1.6em;
    line-height: 150%;
    font-weight: bolder;
    color: #282828;
    margin: 1.5em 0 1em 0;
}
.article-content .highlight3 {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 180%;
    padding: 0.2em 0 0.2em 1em;
    margin: 1em 0;
    border-left: 0.2em solid #5696CB;
    color: #5696CB;
    font-weight: 500;
}
.article-content .highlight4 {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 180%;
    padding: 1em;
    margin: 1em 0;
    background: #EAEAEA;
}
.article-content .highlight5{
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 180%;
    padding: 0 0 0 1em;
    margin: 1em 0;
    list-style-type: none;
}
.article-content .highlight5::before {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .25em 0 .25em .5em;
    border-color: transparent transparent transparent #5696CB;
    left: 0;
    top:0.8em;
}
.article-content .highlight6{
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 180%;
    padding: 0 0 0 1em;
    margin: 1em 0;
    color: #003f76;
    font-weight: 500;
}
.article-content .highlight7{
    color: #000;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-color: #fff100;
    text-decoration-thickness: 30%;
}
.article-content .highlight8{
    color: #5696cb;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-color: #5696cb;
    text-decoration-thickness: 1px;
}
.article-content .highlight9{
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-color: #fff100;
    text-decoration-thickness: 30%;
}
.article-content .highlight10{
    color: #5696cb;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-color: #fff100;
    text-decoration-thickness: 30%;
    font-weight: 500;
}
.highlight-center {
    text-align: center;
}
.article-content .flex-2 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center; 
    font-size: 1em;
    line-height: 2em;
    flex-wrap: wrap;
}
.article-content .flex-2-highlight {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center; 
    font-size: 1em;
    line-height: 2em;
    background: #EAEAEA;
    flex-wrap: wrap;
}
.article-content .flex-2 > *,
.article-content .flex-2-highlight > *{
    width: 50%;
    padding: 1em;
}
.article-content .flex-2 .item img,
.article-content .flex-2-highlight .item img{
    width: 100%;
    height: auto !important;
}
.article-content .article-link{
    margin: 1em 0;
}
.article-content .article-link li{
    list-style-type: none;
    padding: 0 0 0 1em;
}
.article-content .article-link li::before {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .25em 0 .25em .5em;
    border-color: transparent transparent transparent #5696CB;
    left: 0;
    top:0.8em;
}
.article-content .article-list{
    margin: 0 0 1em 0;
}
.article-content .article-list > li{
    list-style-type: none;
    padding: 0 0 0 1em;
}
.article-content .article-list > li::before {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .25em 0 .25em .5em;
    border-color: transparent transparent transparent #5696CB;
    left: 0;
    top:0.8em;
}
.article-content .article-list-number{
    margin: 1em 0;
}
.article-content .article-list-number > li{
    list-style-type: decimal;
    padding: 0 0 0 1em;
}
.article-content table {
    display: table;
    border-spacing: 2px;
    border:initial;
    border-style: solid;
    max-width: 100%;
}
.article-content table[border="0"] {
    border-width: 0px;
}
.article-content table[border="1"] {
    border-width: 1px;
}
.article-content table[border="2"] {
    border-width: 2px;
}
.article-content table[border="3"] {
    border-width: 3px;
}
.article-content table[border="4"] {
    border-width: 4px;
}
.article-content table[border="5"] {
    border-width: 5px;
}
.article-content table[border="6"] {
    border-width: 6px;
}
.article-content table[border="0"] td {
    border-width: 0px;
}
.article-content table[border="1"] td {
    border-width: 1px;
}
.article-content table[border="2"] td {
    border-width: 2px;
}
.article-content table[border="3"] td {
    border-width: 3px;
}
.article-content table[border="4"] td {
    border-width: 4px;
}
.article-content table[border="5"] td {
    border-width: 5px;
}
.article-content table[border="6"] td {
    border-width: 6px;
}
.article-content thead{
    display: table-header-group;
    vertical-align: middle;
    border:initial;
}
.article-content tbody {
    display: table-row-group;
    vertical-align: middle;
    border:initial;
}
.article-content th {
    display: table-cell;
    vertical-align: inherit;
    font-weight: bold;
    text-align: center;
    border:initial;
}
.article-content tr {
    display: table-row;
    vertical-align: inherit;
    border:initial;
}
.article-content td {
    display: table-cell;
    vertical-align: inherit;
    border:initial;
    border-style: solid;
    padding: 0.2em;
}
.article-content video {
    max-width: 100%;
}
.article-content iframe {
    max-width: 100%;
}
.article-content + .booking-index-note{
    width: auto;
}
.article-sharebox {
    position:relative;
    display: flex;
    width: 100%;
    justify-content: center;
    justify-items: center;
    margin-top: 50px;
}
.article-sharebox .textbox {
    position: relative;
    display: block;
    font-size: 20px;
    line-height: 40px;
    color: #A4A4A4;
    margin: 0 10px;
}
.article-sharebox::before,
.article-sharebox::after{
    content: "";
    position: relative;
    display: block;
    height: 1px;
    width: calc(50% - 150px);
    background: #A4A4A4;
    margin-top: 20px;
}
.article-sharebox .share-btn {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 10px;
}
.article-promo-container {
    position: relative;
    display: block;
    width: 100%;
    background: #F6F8FA;
}
.article-tab-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 100px 0 80px 0;
}
.article-tab-list::before {
    content: "文章標籤";
    position: relative;
    display: block;
    font-size: 20px;
    line-height: 28px;
    color:#282828;
}
.article-tab-list li {
    position: relative;
    display: block;
    font-size: 17px;
    line-height: 25px;
    color: #5696CB;
    background: #fff;
    margin: 0 7px;
    border-radius: 20px;
    padding: 5px 15px;
    cursor: pointer;
}
.article-follow {
    position: relative;
    display: block;
    border-top:1px solid #DBDBDB;
}
.article-follow li.item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 30px 0;
    font-size: 20px;
    line-height: 28px;
    border-bottom:1px solid #DBDBDB;
    cursor: pointer;
}
.article-follow li.item .title-icon {
    position: relative;
    display: block;
    color: #5696CB;
    text-indent: 30px;
    margin-right: 30px;
}
.article-follow li.item .title-icon::before {
    content: "";
    position: absolute;
    display: block;
    width: 25px;
    height: 25px;
    left: 0;
    top:3px;
    background: url(../images/arrow_up.svg) no-repeat center center;
    background-size: contain;
}
.article-follow li.item.item2 .title-icon::before {
    background: url(../images/arrow_down.svg) no-repeat center center;
    background-size: contain;
}
.article-promo {
    position: relative;
    display: block;
    width: 100%;
    padding: 80px 0 150px 0;
}
.article-promo .promo-title {
    position: relative;
    display: block;
    font-size: 42px;
    line-height: 60px;
}
.article-promo .promo-list {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    margin: 30px 0 0 0;
}
.article-promo .promo-list .item {
    position: relative;
    display: block;
    width: calc(100% / 3 - 30px);
    background: #fff;
}
.article-promo .promo-list .item .textbox {
    position: relative;
    display: block;
    padding: 20px;
    font-size: 20px;
    line-height: 28px;
}
@media screen and (max-width: 1200px) {
    .stage-text-bg {
        display: none;
    }
    .hero-banner {
        overflow: hidden;
    }
    .hero-banner img {
        width: 140%;
        left: -20%;
    }
    .hero-banner .textbox {
        padding: 20px;
    }
    .hero-banner .textbox .sub-tab .tab-name {
        border-radius: 20px;
        padding: 3px 15px;
        font-size: 16px;
        line-height: 24px;
    }
    .hero-banner .textbox .sub-tab .tab-date {
        padding: 3px 15px;
        font-size: 16px;
        line-height: 24px;
    }
    .hero-banner .textbox h1 {
        font-size: 22px;
        line-height: 30px;
        margin-top: 10px;
    }
    .main-content-article .top-textbox {
        padding: 0 0 30px 0;
    }
    .main-content-article .top-textbox .author {
        font-size: 16px;
        line-height: 24px;
    }
    .main-content-article .top-textbox .font-size-btn {
        font-size: 16px;
        line-height: 24px;
    }
    .main-content-article .top-textbox .font-size-btn li {
        height: 30px;
        font-size: 16px;
        line-height: 30px;
        margin: 0 0 0 2px;
    }
    .main-content-article .top-textbox .font-size-btn li.item {
        width: 30px;
    }
    .article-content {
        font-size: 2.8vw;
        line-height: 3.6vw;
    }
    .article-content .flex-2,
    .article-content .flex-2-highlight{
        flex-direction: column;
    }
    .article-content .flex-2 > *,
    .article-content .flex-2-highlight > *{
        width: 100%;
    }
    .article-content + .booking-index-note{
        width: 96vw;
        left: calc(50% - 48vw);
    }
    .article-sharebox {
        margin-top: 50px;
    }
    .article-sharebox .textbox {
        font-size: 20px;
        line-height: 30px;
        margin: 0 10px;
    }
    .article-sharebox::before,
    .article-sharebox::after{
        width: calc(50% - 120px);
        margin-top: 15px;
    }
    .article-sharebox .share-btn {
        width: 30px;
        height: 30px;
        margin: 0 5px;
    }
    .article-tab-list {
        flex-wrap: wrap;
        padding: 80px 0 80px 0;
    }
    .article-tab-list::before {
        width: 100%;
        text-align: center;
        padding: 0 0 20px 0;
    }
    .article-tab-list li {
        font-size: 16px;
        line-height: 24px;
        margin: 0 5px 12px 0;
        border-radius: 20px;
        padding: 5px 15px;
    }
    .article-follow li.item {
        padding: 30px 0;
        font-size: 16px;
        line-height: 24px;
    }
    .article-follow li.item .title-icon {
        text-indent: 20px;
        margin-right: 10px;
        width: 190px;
    }
    .article-follow li.item .title-icon::before {
        width: 20px;
        height: 20px;
        left: 0;
        top:3px;
    }
    .article-promo {
        width: 100%;
        padding: 80px 0 100px 0;
    }
    .article-promo .promo-title {
        font-size: 25px;
        line-height: 36px;
    }
    .article-promo .promo-list {
        flex-direction: column;
    }
    .article-promo .promo-list .item {
        width: 100%;
        margin-bottom: 20px;
    }
    .article-promo .promo-list .item .textbox {
        font-size: 16px;
        line-height: 24px;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .stage-text-bg {
        display: none;
    }
    .hero-banner {
        overflow: hidden;
    }
    .hero-banner img {
        width: 140%;
        left: -20%;
    }
    .hero-banner .textbox {
        padding: 20px;
    }
    .hero-banner .textbox .sub-tab .tab-name {
        border-radius: 20px;
        padding: 3px 15px;
        font-size: 16px;
        line-height: 24px;
    }
    .hero-banner .textbox .sub-tab .tab-date {
        padding: 3px 15px;
        font-size: 16px;
        line-height: 24px;
    }
    .hero-banner .textbox h1 {
        font-size: 22px;
        line-height: 30px;
        margin-top: 10px;
    }
    .main-content-article .top-textbox {
        padding: 0 0 30px 0;
    }
    .main-content-article .top-textbox .author {
        font-size: 16px;
        line-height: 24px;
    }
    .main-content-article .top-textbox .font-size-btn {
        font-size: 16px;
        line-height: 24px;
    }
    .main-content-article .top-textbox .font-size-btn li {
        height: 30px;
        font-size: 16px;
        line-height: 30px;
        margin: 0 0 0 2px;
    }
    .main-content-article .top-textbox .font-size-btn li.item {
        width: 30px;
    }
    .article-content {
        font-size: 2vw;
        line-height: 2.5vw;
    }
    .article-content .flex-2 {
        flex-direction: column;
    }
    .article-content .flex-2 .item {
        width: 100%;
    }
    .article-sharebox {
        margin-top: 50px;
    }
    .article-sharebox .textbox {
        font-size: 20px;
        line-height: 30px;
        margin: 0 10px;
    }
    .article-sharebox::before,
    .article-sharebox::after{
        width: calc(50% - 120px);
        margin-top: 15px;
    }
    .article-sharebox .share-btn {
        width: 30px;
        height: 30px;
        margin: 0 5px;
    }
    .article-tab-list {
        flex-wrap: wrap;
        padding: 80px 0 80px 0;
    }
    .article-tab-list::before {
        width: 100%;
        text-align: center;
        padding: 0 0 20px 0;
    }
    .article-tab-list li {
        font-size: 16px;
        line-height: 24px;
        margin: 0 5px 12px 0;
        border-radius: 20px;
        padding: 5px 15px;
    }
    .article-follow li.item {
        padding: 30px 0;
        font-size: 16px;
        line-height: 24px;
    }
    .article-follow li.item .title-icon {
        text-indent: 20px;
        margin-right: 10px;
        width: 190px;
    }
    .article-follow li.item .title-icon::before {
        width: 20px;
        height: 20px;
        left: 0;
        top:3px;
    }
    .article-promo {
        width: 100%;
        padding: 80px 0 100px 0;
    }
    .article-promo .promo-title {
        font-size: 25px;
        line-height: 36px;
    }
    .article-promo .promo-list {
        flex-direction: column;
    }
    .article-promo .promo-list .item {
        width: 100%;
        margin-bottom: 20px;
    }
    .article-promo .promo-list .item .textbox {
        font-size: 16px;
        line-height: 24px;
    }
}
.stage-medical-eq .stage-content .eq-list {
    position: relative;
    display: flex;
    width: 100%;
    padding: 2vw;
    background: #fff;
    justify-content:flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    font-size: 2vw;
    line-height: 2vw;
}
.stage-medical-eq .stage-content .eq-list li {
    position: relative;
    display: block;
    width: calc(100% / 3 - 3vw);
    margin: 1.5vw;
}
.stage-medical-eq .stage-content .eq-list li .imgbox {
    position: relative;
    display: block;
    padding-top: 75%;
    overflow: hidden;
}
.stage-medical-eq .stage-content .eq-list li .imgbox img{
    position: absolute;
    width: 100%;
    height: auto;
    left: 0;
    top: 0;
        object-fit: contain;
    height: 100%;
}
.stage-medical-eq .stage-content .eq-list li .textbox {
    position: relative;
    display: block;
    border-left: 0.3vw solid #80B4E0;
    padding: 0.5vw 0 0.5vw 0.6vw;
    font-size: 1.25vw;
    line-height: 100%;
    font-weight: 500;
    margin: 1vw 0;
}
.main-list-dot {
    position: relative;
    display: block;
    text-align: center;
    padding: 4vw 0;
}
.stage-medical-eq .stage-content .main-list-dot {
    background: #fff;
}
.main-list-dot li {
    position: relative;
    display: inline-block;
    font-size: 18px;
    line-height: 30px;
    cursor: pointer;
    margin: 0 12px;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    font-weight: 500;
}
.main-list-dot li.current {
    border-radius: 50%;
    background: #5696CB;
    color: #fff;
}
.main-list-dot li.arrow-left {
    width: 20px;
    height: 20px;
}
.main-list-dot li.arrow-left::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-left: 2px solid #5696CB;
    border-top:2px solid #5696CB;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.main-list-dot li.arrow-left.set-off::before {
    opacity: 0.3;
}
.main-list-dot li.arrow-right {
    width: 20px;
    height: 20px;
}
.main-list-dot li.arrow-right::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-right: 2px solid #5696CB;
    border-top:2px solid #5696CB;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.main-list-dot li.arrow-right.set-off::before {
    opacity: 0.3;
}
@media screen and (max-width: 1200px) {
    .stage-medical-eq .stage-content .eq-list {
        font-size: 2.5vw;
        line-height: 2.5vw;
    }
    .stage-medical-eq .stage-content .eq-list li {
        width: calc(50% - 3vw);
        margin: 1.5vw 1.5vw 4vw 1.25vw;
    }
    .stage-medical-eq .stage-content .eq-list li .textbox {
        font-size: 4.6vw;
        border-left: 0.6vw solid #80B4E0;
        padding: 1vw 0 1vw 1.2vw;
        margin: 2vw 0;
    }
    .main-list-dot {
        padding: 0 0 3vw 0;
    }
    .main-list-dot li {
        font-size: 4.26vw;
        line-height: 4.26vw;
        width: 5vw;
        height: 5vw;
        margin: 0 1.2vw;
    }
    .main-list-dot li.arrow-left {
        width: 4vw;
        height: 4vw;
    }
    .main-list-dot li.arrow-right {
        width: 4vw;
        height: 4vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .stage-medical-eq .stage-content .eq-list {
        font-size: 2.5vw;
        line-height: 2.5vw;
    }
    .stage-medical-eq .stage-content .eq-list li {
        width: calc(50% - 3vw);
        margin: 1.5vw 1.5vw 3vw 1.25vw;
    }
    .stage-medical-eq .stage-content .eq-list li .textbox {
        font-size: 2.571vw;
        border-left: 0.6vw solid #80B4E0;
        padding: 0.5vw 0 0.5vw 1.2vw;
        margin: 2vw 0;
    }
    .main-list-dot {
        padding: 0 0 3vw 0;
    }
    .main-list-dot li {
        font-size: 2.571vw;
        line-height: 130%;
        width: 4vw;
        height: 4vw;
        margin: 0 1.2vw;
    }
    .main-list-dot li.arrow-left {
        width: 4vw;
        height: 4vw;
    }
    .main-list-dot li.arrow-right {
        width: 4vw;
        height: 4vw;
    }
}
.hero-banner2 {
    position: relative;
    display: block;
    width: 100%;
    height:18vw;
    max-width: 1320px;
    margin: 2vw auto;
    overflow: hidden;
}
.top-news-container .textbox {
    position: relative;
    display: block;
    width: 90%;
    margin: 1vw auto;
    background: #fff;
    background-image:url(../images/deco.png);
    background-position: top right;
    background-size: 30% auto;
    background-repeat: no-repeat;
    box-shadow: 0 1vw 1vw rgba(215, 224, 229, 0.5);
    padding: 2vw;
    border-bottom: 0.5vw solid #5696CB;
    font-size: 1vw;
    line-height: 1vw;
    font-weight: 500;
}
.top-news-container .textbox .sub-tab {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.top-news-container .textbox .sub-tab .tab-name {
    position: relative;
    display: block;
    background: #5696CB;
    border-radius: 0.2em;
    color: #fff;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1em;
    margin-right: 1em;
    font-weight: 500;
}
.top-news-container .textbox .sub-tab .tab-date {
    position: relative;
    display: block;
    color: #5696CB;
    padding: 0.5em 1em 0.5em 0;
    font-size: 1em;
    line-height: 1em;
    font-weight: 500;
}
.top-news-container .textbox .sub-tab .tab-new {
    position: relative;
    display: block;
    color: #EB6877;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1em;
    border-left: 1px solid #A4A4A4;
    font-weight: 500;
}
.top-news-container .textbox h4 {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 1.7em;
    color: #282828;
    margin-top: 1vw;
    text-align: justify;
    font-weight: 500;
}
.top-news-container .textbox p {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 1.3em;
    color:#5D5D5D;
    text-align: justify;
    font-weight: 500;
    margin-top: 0.5em;
}
.top-news-container .content-box {
    position: relative;
    display: flex;
    width: 100%;
    justify-content: flex-start;
    align-items: flex-end;
}
.top-news-container .content-box .content-text {
    position: relative;
    display: block;
    width: calc(100% - 12vw);
}

.news-list-container {
    padding: .5vw 0 8vw 0;
}
.news-list-container .textbox {
    position: relative;
    display: block;
    width: 90%;
    margin: 1vw auto;
    padding: 2vw;
    border-bottom: 1px solid #DBDBDB;
    font-size: 1vw;
    line-height: 1vw;
}
.news-list-container .textbox .sub-tab {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.news-list-container .textbox .sub-tab .tab-name {
    position: relative;
    display: block;
    background: #5696CB;
    border-radius: 0.2em;
    color: #fff;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1em;
    margin-right: 1em;
    font-weight: 500;
}
.news-list-container .textbox .sub-tab .tab-date {
    position: relative;
    display: block;
    color: #5696CB;
    padding: 0.5em 1em 0.5em 0;
    font-size: 1em;
    line-height: 1em;
    font-weight: 500;
}
.news-list-container .textbox .sub-tab .tab-new {
    position: relative;
    display: block;
    color: #EB6877;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1em;
    border-left: 1px solid #A4A4A4;
    font-weight: 500;
}
.news-list-container .textbox h4 {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 1.7em;
    color: #282828;
    margin-top: 1vw;
    text-align: justify;
    font-weight: 500;
}
.news-list-container .textbox p {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 1.3em;
    color:#5D5D5D;
    text-align: justify;
    font-weight: 500;
    margin-top: 0.5em;
}
.news-list-container .content-box {
    position: relative;
    display: flex;
    width: 100%;
    justify-content: flex-start;
    align-items: flex-end;
}
.news-list-container .content-box .content-text {
    position: relative;
    display: block;
    width: calc(100% - 12vw)
}
@media screen and (max-width: 1200px) {
    .hero-banner2 {
        height:25vw;
        max-width: 1180px;
        margin: 4vw auto;
    }
    .hero-banner2 img {
        width: 140%;
        left: -20%;
    }
    .top-news-container .textbox {
        padding: 4vw;
        border-bottom: 0.8vw solid #5696CB;
        font-size: 4.5vw;
        line-height: 4.5vw;
        width: 100%;
    }
    .top-news-container .content-box {
        flex-direction: column;
        padding-top: 2vw;
    }
    .top-news-container .content-box .content-text {
        width: 100%;
        line-height: 100%;
    }
    .top-news-container .content-box .content-text h4 {
        line-height: 150%;
    }
    .top-news-container .content-box .content-text p {
        font-size: 4.26vw;
        line-height: 150%;
    }
    .top-news-container .content-box .global-more-btn2 {
        width: 18vw;
        margin-top: 4vw;
    }
    .top-news-container .content-box .global-more-btn2 span{
        font-size: 4.26vw;
        font-weight: 500;
    }
    .top-news-container .content-box .global-more-btn2::after {
        width: 5vw;
        height: 5vw;
    }

    .news-list-container {
        padding: 5vw 0 8vw 0;
    }
    .news-list-container .textbox {
        margin: 2vw auto;
        padding: 4vw;
        font-size: 4.5vw;
        line-height: 4.5vw;
        width: 100%;
    }
    .news-list-container .content-box {
        flex-direction: column;
    }
    .news-list-container .content-box .content-text {
        width: 100%;
        line-height: 100%;
    }
    .news-list-container .content-box .content-text h4 {
        line-height: 150%;
    }
    .news-list-container .content-box .content-text p {
        font-size: 4.26vw;
        line-height: 150%;
    }
    .news-list-container .content-box .global-more-btn2 {
        width: 18vw;
        margin-top: 4vw;
    }
    .news-list-container .content-box .global-more-btn2 span{
        font-size: 4.26vw;
    }
    .news-list-container .content-box .global-more-btn2::after {
        width: 5vw;
        height: 5vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .hero-banner2 {
        height:31.8vw;
        max-width: 1180px;
        margin: 4vw auto;
    }
    .hero-banner2 img {
        width: 140%;
        left: -20%;
    }
    .top-news-container .textbox {
        padding: 4vw;
        border-bottom: 0.8vw solid #5696CB;
        font-size: 2vw;
        line-height: 2vw;
        width: 100%;
    }
    .top-news-container .content-box {
        flex-direction: column;
    }
    .top-news-container .content-box .content-text {
        width: 100%;
    }
    .top-news-container .content-box .content-text h4 {
        font-size: 2.571vw;
    }
    .top-news-container .content-box .content-text p {
        font-size: 2.28vw;
    }
    .top-news-container .content-box .global-more-btn2 {
        width: 12vw;
    }
    .top-news-container .content-box .global-more-btn2 span{
        font-size: 2.571vw;
    }
    .top-news-container .content-box .global-more-btn2::after {
        width: 4vw;
        height: 5vw;
    }
    .news-list-container .content-box .content-text h4 {
        font-size: 2.571vw;
    }
    .news-list-container .content-box .content-text p {
        font-size: 2.28vw;
    }
    .news-list-container .content-box .global-more-btn2 {
        width: 12vw;
    }
    .news-list-container .content-box .global-more-btn2 span{
        font-size: 2.571vw;
    }
    .news-list-container .content-box .global-more-btn2::after {
        width: 4vw;
        height: 5vw;
    }

    .news-list-container {
        padding: 3vw 0 6vw 0;
    }
    .news-list-container .textbox {
        margin: 1.5vw auto;
        padding: 3vw;
        font-size: 2vw;
        line-height: 2vw;
        width: 100%;
    }
    .news-list-container .content-box {
        flex-direction: column;
    }
    .news-list-container .content-box .content-text {
        width: 100%;
    }
}

.media-list {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    font-size: 1vw;
    line-height: 1vw;
    padding: 2vw 0;
}
.media-list .item {
    position: relative;
    display: block;
    width: calc(100% / 3 - 2vw);
    background: #fff;
}
.media-list .item .imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.media-list .item .imgbox .sub-tab {
    position: absolute;
    display: block;
    background: #5696CB;
    border-radius: 0.2em;
    color: #fff;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1em;
    margin-right: 1em;
    top:0.5rem;
    left: 0.5em;
}
.media-list .item .textbox {
    position: relative;
    display: block;
    width: 100%;
    padding: 1em;
    font-size: 1em;
    line-height: 1em;
}
.media-list .item .textbox .date-text {
    position: relative;
    display: block;
    color: #5696CB;
    padding: 0.5em 1em 0.5em 0;
    font-size: 1em;
    line-height: 1em;
}
.media-list .item .textbox .text1 {
    position: relative;
    display: block;
    font-size: 1.28em;
    line-height: 1.7em;
    color: #282828;
}
.media-list .item .textbox .text2 {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 1.7em;
    color: #5d5d5d;
}
.media-list .item .textbox .global-morebtn {
    justify-content: flex-end;
    margin-top: 1em;
}
.media-content .more-media-btn {
    position: absolute;
    top:4vw;
    font-size: 1.2vw;
    line-height: 100%;
    color: #A4A4A4;
    right: 0;
    cursor: pointer;
}
.media-content .more-media-btn:hover {
    color: #5696CB;
}
.media-content .more-media-btn::after {
    content: "+";
    position: relative;
    color:#5696CB;
    margin:0 0 0 0.2vw;
    font-size: 2vw;
    line-height: 100%;
    top:0.25vw;
    font-weight: 300;
}
.media-content2::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    top:0;
    background: url(../images/media_bg.jpg) no-repeat center center;
    background-size: cover;
}
@media screen and (max-width: 1200px) {
    .stage-media .media-list {
        flex-direction: column;
        font-size: 4vw;
        line-height: 4vw;
    }
    .media-list .item {
        width: 100%;
        box-shadow: 0 1vw 4vw rgba(215, 224, 229, 0.7);
        margin-bottom: 4vw;
    }
    .media-list .item .imgbox .sub-tab {
        top:1em;
        left: 1em;
    }
    .media-content .more-media-btn {
        position: relative;
        top:auto;
        font-size: 5vw;
        line-height: 5vw;
        text-align: center;
        right: auto;
        margin-top: 4vw;
    }
    
    .media-content .more-media-btn::after {
        margin:0 0 0 1vw;
        font-size: 8vw;
        line-height: 8vw;
        top:1vw;
        
    }
    .media-list .item .textbox .global-morebtn span {
        display: block;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .stage-media .media-list {
        flex-direction: column;
        font-size: 2vw;
        line-height: 2.5vw;
    }
    .media-list .item {
        width: 100%;
        box-shadow: 0 1vw 4vw rgba(215, 224, 229, 0.7);
        margin-bottom: 4vw;
    }
    .media-list .item .imgbox .sub-tab {
        top:1em;
        left: 1em;
        font-size: 2.28vw;
    }
    .media-list .item .textbox .text1 {
        font-size: 2.571vw;
        line-height: 150%;
    }
    .media-list .item .textbox .text2 {
        font-size: 2.2vw;
        line-height: 150%;
    }
    .media-content .more-media-btn {
        position: relative;
        top:auto;
        font-size: 2.8vw;
        line-height:2.8vw;
        text-align: center;
        right: auto;
        margin-top: 0vw;
    }
    .media-content .more-media-btn::after {
        margin:0 0 0 1vw;
        font-size: 5vw;
        line-height: 5vw;
        top:0.7vw;
    }
    .media-list .item .textbox .global-morebtn span {
        font-size: 2.28vw;
    }
}
.map-box {
    position: relative;
    display: block;
    width: 100%;
    margin: 4vw 0;
}
.stage-location {
    background-color: rgba(246,248,250,1);
    background-image: url(../images/stage_bg1.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 15% auto;
}
.map-box + .location-content {}
.map-box + .location-content::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    top:0;
    background-color: #f6f8fA;
    background-image:url(../images/stage_bg2.png),linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(246,248,250,1) 50%);
    background-position: right bottom,center center;
    background-repeat: no-repeat;
    background-size: 22.5% auto,100% 100%;
}
.map-box + .location-content + .location-content::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    top:0;
    background:#f6f8fa;
}
.map-box iframe {
    width: 100%;
    height: 35vw;
}
.location-contact {
    position: relative;
    display: block;
}
.location-contact dl {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 1vw 0;
    padding: 0 0 0 5.5vw;
}
.location-contact dl dt {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.location-contact dl dt .icon {
    position: relative;
    display: block;
    width: 2vw;
    height: 2vw;
    margin-right: .2vw;
}
.location-contact dl dt span {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 1vw;
    color: #5696CB;
    font-weight: 500;
}
.location-contact dl dd {
    position: relative;
    display: block;
    padding: 0 0 0 1vw;
    font-size: 1vw;
    line-height: 1vw;
    color:#282828;
    font-weight: 500;
}
.location-contact dl dd a {
    color: #6499FF;
    text-decoration: underline;
}
.traffic-list {
    position: relative;
    display: block;
    width: 100%;
}
.traffic-list dl {
    position: relative;
    display: block;
    box-shadow: 0 1vw 1vw rgba(215, 224, 229, 0.7);
    background: #fff;
    padding: 0 2vw;
    margin: 0 0 2vw 0;
}
.traffic-list dl dt {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    font-size: 1.2vw;
    line-height: 1.2vw;
    padding: 2vw 0;
}
.traffic-list dl dt::after {
    content: "+";
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 2.5vw;
    font-weight: lighter;
    cursor: pointer;
}
.traffic-list dl.current dt::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.traffic-list dl dd {
    position: relative;
    display: none;;
    border-top:1px solid #DBDBDB;
    font-size: 1vw;
    line-height: 2vw;
    color:#5d5d5d;
    padding: 2vw 0;
}
.traffic-list dl.current dd {
    display: block;
}
.traffic-list dl dd ul {
    padding-left: 2vw;
}
.traffic-list dl dd li {
    list-style-type: disc;
}
.traffic-list dl dd li p {
    padding: 0 0 0 3vw;
    text-indent: -3vw;
}
.traffic-list dl dd ul.main-list > li{
    position: relative;
    list-style-type:none;
}
.traffic-list dl dd ul.main-list > li::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.8vw;
    height: 0.8vw;
    left: -1vw;
    top:0.6vw;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
}
.traffic-list dl dd ul.main-list ul li {
    list-style: decimal;
}
@media screen and (max-width: 1200px) {
    .map-box{margin:8vw 0; }
    .map-box iframe {
        height: 55vw;
    }
    .location-contact dl {
        display: block;
        padding: 0 0 6vw 0;
        border-bottom: 1px solid #DBDBDB;
    }
    .location-contact dl dt {
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 4vw 0;
    }
    .location-contact dl dt .icon {
        width: 6vw;
        height: 6vw;
        margin-right: 1vw;
    }
    .location-contact dl dt span {
        font-size: 4vw;
        line-height: 4vw;
    }
    .location-contact dl dd {
        padding: 0 6vw 0 0;
        font-size: 4vw;
        line-height: 6vw;
    }
    .traffic-list dl {
        padding: 0 4vw;
        margin: 0 0 4vw 0;
    }
    .traffic-list dl dt {
        font-size: 4vw;
        line-height: 4vw;
        padding: 4vw 0;
    }
    .traffic-list dl dt::after {
        content: "+";
        position: relative;
        display: block;
        color: #5696CB;
        font-size: 8vw;
        font-weight: lighter;
        cursor: pointer;
    }
    .traffic-list dl.current dt::after {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .traffic-list dl dd {
        font-size: 3.5vw;
        line-height: 7vw;
        color:#5d5d5d;
        padding: 4vw 0;
    }
    .traffic-list dl dd ul {
        padding-left: 5vw;
    }
    .traffic-list dl dd li p {
        padding: 0 0 0 10vw;
        text-indent: -10vw;
    }
    .traffic-list dl dd ul.main-list > li::before {
        width: 3vw;
        height: 3vw;
        left: -5vw;
        top:2vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .map-box iframe {
        height: 45vw;
    }
    .location-contact dl {
        display: block;
        padding: 0 0 4vw 0;
        border-bottom: 1px solid #DBDBDB;
    }
    .location-contact dl dt {
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 2vw 0;
    }
    .location-contact dl dt .icon {
        width: 3vw;
        height: 3vw;
        margin-right: 1vw;
    }
    .location-contact dl dt span {
        font-size: 2.5vw;
        line-height: 2.5vw;
    }
    .location-contact dl dd {
        padding: 0 3vw 0 0;
        font-size: 2.5vw;
        line-height: 3.5vw;
    }
    .traffic-list dl {
        padding: 0 3vw;
        margin: 0 0 3vw 0;
    }
    .traffic-list dl dt {
        font-size: 2.5vw;
        line-height: 2.5vw;
        padding: 3vw 0;
    }
    .traffic-list dl dt::after {
        content: "+";
        position: relative;
        display: block;
        color: #5696CB;
        font-size: 6vw;
        font-weight: lighter;
        cursor: pointer;
    }
    .traffic-list dl.current dt::after {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .traffic-list dl dd {
        font-size: 2.5vw;
        line-height:4.5vw;
        color:#5d5d5d;
        padding: 3vw 0;
    }
    .traffic-list dl dd ul {
        padding-left:3.5vw;
    }
    .traffic-list dl dd li p {
        padding: 0 0 0 7vw;
        text-indent: -7vw;
    }
    .traffic-list dl dd ul.main-list > li::before {
        width: 2vw;
        height: 2vw;
        left: -3vw;
        top:1.5vw;
    }
}
.lianan-content1 .lianan-list {
    position: relative;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.lianan-content1 .lianan-list li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    box-shadow: 0 0 3.125vw rgba(215, 224, 229, 0.65);
    padding: 0;
    margin: 1.041vw 0;
    width: 32.5%;
    cursor: pointer;
    height: 4.58vw;
}
.lianan-content1 .lianan-list li:hover {
    background: #80B4E0;
}
.lianan-content1 .lianan-list li.item1 {
    width: 100%;
}
.lianan-content1 .lianan-list li .icon-img {
    position: relative;
    display: block;
    width: 2.5vw;
    height: 2.5vw;
    margin: 0 0.3vw 0 0;
}
.lianan-content1 .lianan-list li.item1 .icon-img {
    background: url(../images/about_lianan_icon1.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item2 .icon-img {
    background: url(../images/about_lianan_icon2.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item3 .icon-img {
    background: url(../images/about_lianan_icon3.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item4 .icon-img {
    background: url(../images/about_lianan_icon4.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item5 .icon-img {
    background: url(../images/about_lianan_icon5.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item6 .icon-img {
    background: url(../images/about_lianan_icon6.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item7 .icon-img {
    background: url(../images/about_lianan_icon7.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item8 .icon-img {
    background: url(../images/about_lianan_icon8.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item9 .icon-img {
    background: url(../images/about_lianan_icon9.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item10 .icon-img {
    background: url(../images/about_lianan_icon10.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item1:hover .icon-img {
    background: url(../images/about_lianan_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item2:hover .icon-img {
    background: url(../images/about_lianan_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item3:hover .icon-img {
    background: url(../images/about_lianan_icon3_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item4:hover .icon-img {
    background: url(../images/about_lianan_icon4_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item5:hover .icon-img {
    background: url(../images/about_lianan_icon5_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item6:hover .icon-img {
    background: url(../images/about_lianan_icon6_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item7:hover .icon-img {
    background: url(../images/about_lianan_icon7_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item8:hover .icon-img {
    background: url(../images/about_lianan_icon8_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item9:hover .icon-img {
    background: url(../images/about_lianan_icon9_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li.item10:hover .icon-img {
    background: url(../images/about_lianan_icon10_hover.svg) no-repeat center center;
    background-size: contain;
}
.lianan-content1 .lianan-list li span {
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 100%;
    font-weight: 500;
}
.lianan-content1 .lianan-list li:hover span {
    color: #fff;
}
.lianan-content1 .lianan-list li:hover::after {
    content: "";
    position: absolute;
    display: block;
    width: 2vw;
    height: 2vw;
    background: url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
    right: 1vw;
    top:calc(50% - 1vw);
}
.about-lianan-video-box {
    position: relative;
    display: block;
    width: 100%;
    height: 30vw;
    background: #000;
    margin: 3vw 0;
}
@media screen and (max-width: 1200px) {
    .stage-container-page.stage-lianan-video {
        background: url(../images/lianan_video_bg_m.jpg) no-repeat 0 0;
        background-size: cover;
    }
    .stage-lianan  .hero-banner2 {
        height: 32vw;
    }
    .stage-lianan  .hero-banner2 img {
        width: 140%;
        left: -20%;
    }
    .lianan-content1 .lianan-list li {
        margin: 2.133vw 0;
        width: calc(50% - 2.133vw);
        height: 19.2vw;
    }
    .lianan-content1 .lianan-list li .icon-img {
        width: 10.6vw;
        height: 10.6vw;
        margin: 0 2vw 0 0;
    }
    .lianan-content1 .lianan-list li span {
        font-size: 4.8vw;
        line-height: 200%;
    }
    .lianan-content2 {
        padding-top: 20vw;
    }
    .about-lianan-video-box {
        height: 55vw;
        margin: 7vw 0;
    }
}
@media screen and (min-width: 600px)  and (max-width: 1200px) {
    .lianan-content2 .global-main-title .text1 {
        font-size: 4.8vw;
    }
}
.medical-team-content {
    background: #fff;
    margin: 3vw 0 5vw 0;
    padding: 3vw;
}
.team-division {
    position: relative;
    display: block;
    width: 100%;
}
.team-division-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.team-division-list li {
    position: relative;
    display: block;
    width: calc(20% - 1%);
    background: #fff;
    border:1px solid #5696CB;
    padding: 0.6vw;
    text-align: center;
    margin: 0.5vw 0;
    cursor: pointer;
    
}
.team-division-list li:hover {
    background: #5696CB;
}
.team-division-list li span {
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 1vw;
    line-height: 100%;
    font-weight: 500;
}
.team-division-list li:hover span {
    color: #fff;
}
.team-division-list li.current {
    background: #5696CB;
}
.team-division-list li.current span {
    color: #fff;
}
.team-division-list li.current::after {
    content: "";
    position: absolute;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
    background: url(../images/icon_close_white.svg) no-repeat center center;
    background-size: contain;
    right: 0.5vw;
    top:0.3vw;
}
.team-info-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    width: calc(100% + 3vw);
    margin-left: -1.5vw;
}
.team-info-list li {
    position: relative;
    display: block;
    width: calc(25% - 3vw);
    margin:1.5vw;
}
.team-info-list li .team-tag {
    display: block;
    position: relative;
}
.team-info-list li .team-tag span{
    position: relative;
    display: inline-block;
    background:#5696CB;
    color: #fff;
    font-size: 0.89vw;
    line-height: 100%;
    padding: 0.5vw 0.8vw;
    border-radius: 0.5vw;
    margin: 1vw 0 0 0;
}
.team-info-list li .team-name {
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 100%;
    margin: 1vw 0;
    font-weight: 500;
}
.team-info-list li .team-division-title {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 1vw;
    margin: 1vw 0;
    color: #5D5D5D;
    font-weight: 500;
}
.team-info-list li .team-division-title span {
    vertical-align: middle;
}
.team-info-list li .team-division-title::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1.3vw;
    height: 1.3vw;
    background: url(../images/team_icon1.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    margin-right: 0.3vw;
}
.team-info-list li .team-position {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 1vw;
    margin: 1vw 0;
    color: #5D5D5D;
    font-weight: 500;
}
.team-info-list li .team-position::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1.3vw;
    height: 1.3vw;
    background: url(../images/team_icon2.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    margin-right: 0.3vw;
    top:-0.1vw;
}
.team-division-list2 {
    display: none;
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .medical-team-content {
        background: none;
        padding-left: 0;
        padding-right: 0;
    }
    .team-info-list {
        align-items: stretch;
        margin-bottom: 5vw;
    }
    .team-info-list li {
        position: relative;
        display: block;
        width: calc(100% / 2 - 2vw);
        margin:1vw;
    }
    .team-division-list {
        display: none;
    }
    .team-division-list2 {
        position: relative;
        display: block;
    }
    .team-division-list2 .team-division-list-title {
        position: relative;
        display: block;
        color: #376D99;
        font-size: 2.571vw;
        line-height: 100%;
        padding: 1.2vw 0;
        font-weight: 500;
    }
    .team-division-list2 select {
        position: relative;
        display: block;
        width: 100%;
        font-size: 2.571vw;
        line-height: 150%;
        padding:1vw;
    }
    .team-info-list li .team-img {
        margin-bottom: 4vw;
    }
    .team-info-list li .team-tag span{
        font-size: 2.28vw;
        padding: 1.2vw 2.4vw;
        border-radius: 0.5rem;
        margin: 0 0 1.2vw 0;
    }
    .team-info-list li .team-name {
        font-size: 2.571vw;
        line-height: 100%;
        margin: 0 0 1.2vw 0;
    }
    .team-info-list li .team-division-title {
        font-size: 2.28vw;
        line-height: 100%;
        margin: 0 0 1.2vw 0;
        display: inline-block;
    }
    .team-info-list li .team-division-title::before {
        width: 3.5vw;
        height: 3.5vw;
        margin-right: 0.5vw;
    }
    .team-info-list li .team-position {
        font-size: 2.28vw;
        line-height: 100%;
        margin: 0 0 1.2vw 2vw;
        display: inline-block;
    }
    .team-info-list li .team-position span {
        vertical-align: middle;
    }
    .team-info-list li .team-position::before {
        width: 3.5vw;
        height: 3.5vw;
        margin-right: 0.5vw;
    }
}
@media screen and (max-width: 600px) {
    .medical-team-content {
        background: none;
        padding-left: 0;
        padding-right: 0;
    }
    .team-info-list {
        align-items: stretch;
        margin-bottom: 5vw;
    }
    .team-info-list li {
        position: relative;
        display: block;
        width: calc(50% - 2rem);
        margin:1rem;
    }
    .team-division-list {
        display: none;
    }
    .team-division-list2 {
        position: relative;
        display: block;
    }
    .team-division-list2 .team-division-list-title {
        position: relative;
        display: block;
        color: #376D99;
        font-size: 4.8vw;
        line-height: 100%;
        padding: 2rem 0;
        font-weight: 500;
    }
    .team-division-list2 select {
        position: relative;
        display: block;
        width: 100%;
        font-size: 2rem;
        line-height: 2rem;
        padding: 0.5rem;
    }
    .team-info-list li .team-img {
        margin-bottom: 4vw;
    }
    .team-info-list li .team-tag span{
        font-size: 4.26vw;
        padding: 2vw 4vw;
        border-radius: 0.5rem;
        margin: 0 0 3vw 0;
    }
    .team-info-list li .team-name {
        font-size: 4.8vw;
        line-height: 100%;
        margin: 0 0 3vw 0;
    }
    .team-info-list li .team-division-title {
        font-size: 4.26vw;
        line-height: 100%;
        margin: 0 0 1rem 0;
    }
    .team-info-list li .team-division-title::before {
        width: 5vw;
        height: 5vw;
        margin-right: 1rem;
    }
    .team-info-list li .team-position {
        font-size: 4.26vw;
        line-height: 100%;
        margin: 0 0 1rem 0;
    }
    .team-info-list li .team-position::before {
        width: 5vw;
        height: 5vw;
        margin-right: 1rem;
    }
}
.environment-content {
    background: #fff;
    margin: 3rem 0 5rem 0;
    padding:0 3rem 3rem 3rem;
}
.env_main_list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem 0;
    border-bottom: 1px solid #DBDBDB;
}
.env_main_list li {
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 1rem;
    line-height: 1rem;
    padding: 0.5rem 3rem;
    border:1px solid #5696CB;
    background: #fff;
    cursor: pointer;
    margin: 0 0.5rem;
}
.env_main_list li:hover {
    background: #5696CB;
    color:#fff;
}
.env_main_list li.current {
    background: #5696CB;
    color:#fff;
}
.environment-info-box {
    position: relative;
    display: none;
    justify-content:space-between;
    align-items:flex-start;
    width: 100%;
    height: 52rem;
    padding: 3rem 0;
}
.environment-info-box.expand {
    display: flex;
}
.environment-info-box .position-img {
    position: relative;
    display: block;
    width: 43rem;
    height: 50rem;
    left: 5%;
}
.environment-info-box .position-img .posistion-btn-list {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.environment-info-box .position-img .posistion-btn-list li {
    position: absolute;
    display: none;
    width: 10rem;
    cursor: pointer;
}
.environment-info-box .position-img .posistion-btn-list li::after {
    content: "";
    position: absolute;
    display: block;
    width: 2rem;
    height: 2rem;
    background: url(../images/map_icon.png) no-repeat center center;
    background-size: contain;
    left: calc(50% - 1rem);
    top:calc(100% + 0.1rem);
}
.environment-info-box .position-img .posistion-btn-list li .more-btn{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    top:0;
    left: 0;
}
.environment-info-box .position-img .posistion-btn-list li:hover .more-btn{
    background: rgba(0,0,0,0.3);
}
.environment-info-box .position-img .posistion-btn-list li .more-btn span {
    color: #fff;
    font-size: 1rem;
}
.environment-info-box .position-img .posistion-btn-list li.current {
    display: block;
}
.environment-info-box1 .position-img .posistion-btn-list li.item1 {
    left: 22%;
    top:64%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item2 {
    left: 25%;
    top:53%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item3 {
    left: 42%;
    top:28%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item4 {
    left: 57%;
    top:40%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item5 {
    left: 12.5%;
    top:48%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item6 {
    left: 65%;
    top:64%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item7 {
    left: 25%;
    top:21.5%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item8 {
    left: 21%;
    top:44%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item9 {
    left: 44%;
    top:61%;
}
.environment-info-box1 .position-img .posistion-btn-list li.item10 {
    left: 32.5%;
    top:28%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item1 {
    left: 38%;
    top:63.5%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item2 {
    left: 16%;
    top:33.5%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item3 {
    left: 60.5%;
    top:26%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item4 {
    left: 28%;
    top:46%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item5 {
    left: 44%;
    top:-4%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item6 {
    left: 42.5%;
    top:21%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item7 {
    left: 38%;
    top:43%;
}
.environment-info-box2 .position-img .posistion-btn-list li.item8 {
    left: 29%;
    top:22%;
}
.environment-info-box .position-list {
    position: relative;
    display: block;
    width: 20%;
    background: #F6F8FA;
    height: 100%;
    overflow-y: scroll;
}
.environment-info-box .position-list li {
    position: relative;
    display: block;
    border-bottom: 1px solid #DBDBDB;
    padding: 1.5rem;
    cursor: pointer;
}
.environment-info-box .position-list li dl {
    position: relative;
    display: block;
}
.environment-info-box .position-list li dl dt {
    position: relative;
    display: block;
    font-size: 1.3rem;
    line-height: 1.3rem;
    padding-bottom: 1rem;
    font-weight: 500;
}
.environment-info-box .position-list li dl dd{
    position: relative;
    display: none;
    font-size: 1.1rem;
    line-height: 150%;
    padding: 0 0 1rem 1rem;
    color: #5D5D5D;
    font-weight: 500;
}
.environment-info-box .position-list li dl dd::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.7rem;
    height: 0.7rem;
    left: 0;
    top:0.5rem;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
}
.environment-info-box .position-list li:hover dl dt {
    color: #5696CB;
}
.environment-info-box .position-list li.current dl dt {
    color: #5696CB;
}
.environment-info-box .position-list li.current dl dd{
    display: block;
}
.env-position-dot-list {
    display: none;
}
@media screen and (max-width: 1200px) {
    .environment-content {
        background: none;
        padding-left: 0;
        padding-right: 0;
    }
    .env_main_list {
        padding: 8vw 0 10vw 0;
        margin-top: -5vw;
        justify-content: space-between;
    }
    .env_main_list li {
        font-size: 2rem;
        line-height: 2rem;
        padding: 2rem 0;
        margin: 0;
        width: calc(50% - 2.133vw);
        text-align: center;
    }
    .environment-info-box {
        flex-direction: column;
        height: auto;
        padding: 3rem 0;
    }
    .environment-info-box.expand {
        display: flex;
    }
    .environment-info-box .position-img {
        width: 86vw;
        height: 100vw;
        left: auto;
        margin: 0 auto;
    }
    .environment-info-box .position-img .posistion-btn-list {
        left: -8vw;
        top: -10vw;
    }
    .environment-info-box .position-img .posistion-btn-list li {
        width: 35vw;
    }
    .environment-info-box .position-img .posistion-btn-list li::after {
        width: 5rem;
        height: 5rem;
        left: calc(50% - 2.5rem);
        top:calc(100% + 0.1rem);
    }
    .environment-info-box .position-img .posistion-btn-list li .more-btn span {
        font-size: 3rem;
    }
    .environment-info-box .position-list {
        width: 90vw;
        left: calc(50% - 45vw);
        background: #fff;
        height: auto;
        overflow-y: hidden;
        overflow: hidden;
        white-space: nowrap;
    }
    .environment-info-box .position-list ul {
        position: relative;
        display: block;
        width: 100%;
    }
    .environment-info-box .position-list li {
        display: inline-block;
        border-bottom: none;
        padding: 3rem;
        vertical-align: top;
        width: 100%;
        vertical-align: middle;
    }
    .environment-info-box .position-list li dl {
        white-space: normal;
    }
    .environment-info-box .position-list li dl dt {
        font-size: 4.8vw;
        line-height: 4.8vw;
        padding-bottom: 4vw;
    }
    .environment-info-box .position-list li dl dd{
        font-size: 4.26vw;
        line-height: 150%;
        padding: 0 3vw 2vw 4vw;
        display: inline-block;
        width: auto;
    }
    .environment-info-box .position-list li.current dl dd {
        display: inline-block;
    }
    .environment-info-box .position-list li dl dd::before {
        width: 4vw;
        height: 4vw;
        left: 0;
        top:1.5vw;
    }
    .env-position-dot-list {
        position: relative;
        display: block;
        width: 100%;
        text-align: center;
        padding:0 0 3rem 0;
    }
    .env-position-dot-list .dot-number {
        position: relative;
        display: inline-block;
        font-size: 5vw;
        line-height: 5vw;
        vertical-align: middle;
        padding: 0 2.3vw;
    }
    .env-position-dot-list .arrow-left {
        position: relative;
        display: inline-block;
        width: 20px;
        height: 20px;
        opacity: 1;
        cursor: pointer;
        vertical-align: middle;
    }
    .env-position-dot-list .arrow-left::before {
        content: "";
        position: absolute;
        display: block;
        width:100%;
        height: 100%;
        border-left: 2px solid #5696CB;
        border-top:2px solid #5696CB;
        left: 15%;
        top: 15%;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .env-position-dot-list .arrow-left.set-off::before {
        opacity: 0.3;
    }
    .env-position-dot-list .arrow-right {
        position: relative;
        display: inline-block;
        width: 20px;
        height: 20px;
        opacity: 1;
        cursor: pointer;
        vertical-align: middle;
    }
    .env-position-dot-list .arrow-right::before {
        content: "";
        position: absolute;
        display: block;
        width:100%;
        height: 100%;
        border-right: 2px solid #5696CB;
        border-top:2px solid #5696CB;
        left: 15%;
        top: 15%;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .env-position-dot-list .arrow-right.set-off::before {
        opacity: 0.3;
    }
}
@media screen and (max-width: 600px) {
    .environment-info-box .position-img .posistion-btn-list {
        top: -14vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .env_main_list li {
        font-size: 2.28vw;
        line-height: 100%;
    }
    .environment-info-box .position-list li dl dt {
        font-size: 2.571vw;
        line-height: 100%;
    }
    .environment-info-box .position-list li dl dd{
        font-size: 2.28vw;
        line-height: 150%;
        padding: 0 2vw 2vw 2vw;
        display: inline-block;
        width: auto;
    }
    .environment-info-box .position-list li.current dl dd {
        display: inline-block;
    }
    .environment-info-box .position-list li dl dd::before {
        width: 2vw;
        height: 2vw;
        left: 0;
        top:0.8vw;
    }
    .env-position-dot-list {
        position: relative;
        display: block;
        width: 100%;
        text-align: center;
        padding:0 0 3rem 0;
    }
    .env-position-dot-list .dot-number {
        position: relative;
        display: inline-block;
        font-size: 2.571vw;
        line-height: 100%;
        vertical-align: middle;
        padding: 0 2.3vw;
    }
}
.corporation-intro {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.corporation-intro .textbox {
    position: relative;
    display: block;
    width: 60%;
    padding: 0 3rem 0 0;
}
.corporation-intro .textbox .t1 {
    position: relative;
    display: block;
    font-size: 2.5rem;
    line-height: 150%;
    color: #376D99;
    font-weight: 500;
}
.corporation-intro .textbox .t2 {
    position: relative;
    display: block;
    font-size: 1.1rem;
    line-height: 150%;
    color: #282828;
    padding: 1rem 0;
    font-weight: 500;
}
.corporation-intro .textbox .t2 p {
    padding: 0.5rem 0;
}
.corporation-intro .imgbox {
    position: relative;
    display: block;
    width: 40%;
}
.corporation-info-container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

.corporation-info-container .textbox {
    position: relative;
    display: block;
    width: 100%;
}
.corporation-info-container .textbox dl {
    position: relative;
    display: block;
    width: 100%;
    padding: 1.5rem 0;
}
.corporation-info-container .textbox dl dt {
    position: relative;
    display: block;
    margin: 0 0 1rem 0; 
    cursor: pointer;
}
.corporation-info-container .textbox dl dt span {
    position: relative;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.5rem;
    color: #282828;
    font-weight: 500;
}
.corporation-info-container .textbox dl dt:hover span {
    color: #5696CB;
}
.corporation-info-container .textbox dl dt span::after {
    content: "+";
    color: #5696CB;
    padding: 0 0 0 0.5rem;
}
.corporation-info-container .textbox dl.expand dt span::after {
    content: "-";
    color: #5696CB;
    padding: 0 0 0 0.5rem;
}
.corporation-info-container .textbox dl.expand dt span{
    color: #5696CB;
}
.corporation-info-container .textbox dl dd {
    position: relative;
    display: block;
    font-size: 1.1rem;
    line-height: 150%;
    color: #282828;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s ease; 
    transition: max-height 0.5s ease;
    font-weight: 500;
}
.corporation-info-container .textbox dl.expand dd {
    max-height: 100vw;
}
.corporation-info-container .textbox dl dd p{
    padding: 0.5vw 0;
}
.corporation-info-container .imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.corporation-content4 .corporation-info-container .textbox,
.corporation-content5 .corporation-info-container .textbox{
    width: 50%;
}
.corporation-content4 .corporation-info-container .imgbox,
.corporation-content5 .corporation-info-container .imgbox {
    width: 40%;
}
@media screen and (max-width: 1200px) {
    .corporation-intro {
        flex-direction: column;
    }
    .corporation-intro .textbox {
        width: 100%;
        padding: 5rem 3rem 0 0;
    }
    .corporation-intro .textbox .t1 {
        font-size: 6.67vw;
        line-height: 150%;
    }
    .corporation-intro .textbox .t2 {
        font-size: 4.26vw;
        line-height: 150%;
    }
    .corporation-intro .imgbox {
        width: 100%;
    }
    .corporation-info-container .textbox dl {
        padding: 8vw 0 4vw 0;
    }
    .corporation-info-container .textbox dl dt {
        margin: 0 0 1.5rem 0; 
    }
    .corporation-info-container .textbox dl dt span {
        font-size: 4.8vw;
        line-height: 150%;
    }
    .corporation-info-container .textbox dl dt span::after {
        padding: 0 0 0 1rem;
    }
    .corporation-info-container .textbox dl.expand dt span::after {
        padding: 0 0 0 1rem;
    }
    .corporation-info-container .textbox dl dd {
        font-size: 4.26vw;
    }
    .corporation-info-container .textbox dl.expand dd {
        max-height: 100dvh;
    }
    .corporation-info-container .imgbox {
        position: relative;
        display: block;
        width: 100%;
    }
    .corporation-content4 .corporation-info-container .textbox,
    .corporation-content5 .corporation-info-container .textbox{
        width: 100%;
    }
    .corporation-content4 .corporation-info-container .imgbox,
    .corporation-content5 .corporation-info-container .imgbox {
        width: 100%;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .corporation-intro {
        flex-direction: column;
    }
    .corporation-intro .textbox {
        width: 100%;
        padding: 5rem 3rem 0 0;
    }
    .corporation-intro .textbox .t1 {
        font-size: 3.5vw;
        line-height: 150%;
    }
    .corporation-intro .textbox .t2 {
        font-size: 2.28vw;
        line-height: 150%;
    }
    .corporation-intro .imgbox {
        width: 100%;
    }
    .corporation-info-container .textbox dl {
        padding: 4vw 0 2vw 0;
    }
    .corporation-info-container .textbox dl dt {
        margin: 0 0 1rem 0; 
    }
    .corporation-info-container .textbox dl dt span {
        font-size: 2.571vw;
        line-height: 150%;
    }
    .corporation-info-container .textbox dl dt span::after {
        padding: 0 0 0 1rem;
    }
    .corporation-info-container .textbox dl.expand dt span::after {
        padding: 0 0 0 1rem;
    }
    .corporation-info-container .textbox dl dd {
        font-size: 2.28vw;
    }
    .corporation-info-container .textbox dl.expand dd {
        max-height: 100dvh;
    }
    .corporation-info-container .imgbox {
        position: relative;
        display: block;
        width: 100%;
    }
    .corporation-content4 .corporation-info-container .textbox,
    .corporation-content5 .corporation-info-container .textbox{
        width: 100%;
    }
    .corporation-content4 .corporation-info-container .imgbox,
    .corporation-content5 .corporation-info-container .imgbox {
        width: 100%;
    }
}
.stage-business {
    background-color: rgba(255,255,255,1);
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),url(../images/about_business_bg.png);
        background-position: left top,right bottom,left top;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto,100% auto;
}
.stage-bg3 {
    background-color: rgba(246,248,250,1);
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),url(../images/stage_bg3.png);
        background-position: left top,right bottom,left top;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto,100% auto;
}
.stage-bg4 {
    background-color: rgba(246,248,250,1);
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),url(../images/stage_bg4.png);
        background-position: left top,right bottom,left top;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto,100% auto;
}
.business-intro {
    position: relative;
    display: block;
}
.business-intro .textbox {
    position: relative;
    display: block;
    width: 78%;
    margin: 3rem auto;
}
.business-intro .textbox p {
    position: relative;
    display: block;
    font-size: 1.25rem;
    line-height: 150%;
    color: #282828;
    padding: .5rem 0;
    text-align: center;
    font-weight: 500;
}
.business-info-container {
    position: relative;
    display: block;
    width: 100%;
}

.business-info-container .textbox {
    position: relative;
    display: block;
    width: 100%;
    font-weight: 500;
}
.business-info-container .textbox dl {
    position: relative;
    display: block;
    width: 100%;
    padding:2.5rem 0 1.5rem 0;
}
.business-info-container .textbox dl dt {
    position: relative;
    display: block;
    margin: 0 0 1rem 0; 
}
.business-info-container .textbox dl dt span {
    position: relative;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.5rem;
    color: #5696CB;
}
.business-info-container .textbox dl.expand dt span{
    color: #5696CB;
}
.business-info-container .textbox dl dd {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 150%;
    color: #282828;
}
.business-info-container .textbox dl dd p {
    padding: 0 0 0.8vw 0;
}
.business-info-container .imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.business-content1 .business-info-container .textbox{
    width: 50%;
}
.business-content1 .business-info-container .imgbox {
    position: absolute;
    right: 0;
    top:-3rem;
    width: 40%;
}
.traffic-list dl{font-weight: 500;}
.traffic-list dl.current dt{color: #5696CB;}
@media screen and (max-width: 1200px) {
    .stage-business {
        background-color: rgba(255,255,255,1);
        background-image:url(../images/stage_bg1.png),url(../images/stage_bg2.png),url(../images/about_business_bg.png);
        background-position: left top,right bottom,left top;
        background-repeat: no-repeat;
        background-size: 20% auto,35% auto,100% auto;
    }
    .business-intro {
    }
    .business-intro .textbox {
        width: 100%;
        padding: 2rem 0 0 0;
    }
    .business-intro .textbox p {
        font-size: 2.13rem;
        line-height: 150%;
    }
    .business-intro .imgbox {
        width: 100%;
    }
    .business-info-container .textbox dl {
        padding: 2rem 0;
    }
    .business-info-container .textbox dl dt {
        margin: 2rem 0 1.5rem 0; 
    }
    .business-info-container .textbox dl dt span {
        font-size: 2.4rem;
        line-height: 2.4rem;
    }
    .business-info-container .textbox dl dd {
        font-size: 2.13rem;
    }
    .business-info-container .textbox dl dd p {
        padding: 0 0 1.5rem 0;
    }
    .business-info-container .imgbox {
        position: relative;
        display: block;
        width: 100%;
    }
    .business-content {
        padding-bottom: 5rem;
    }
    .business-content1 .business-info-container .textbox{
        width: 100%;
    }
    .business-content1 .business-info-container .imgbox {
        position: relative;
        display: block;
        right: auto;
        top:auto;
        width: 100%;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {

    .business-intro .textbox {
        width: 100%;
        padding: 2vw 0 0 0;
    }
    .business-intro .textbox p {
        font-size: 2.28vw;
    }
    .business-intro .imgbox {
        width: 100%;
    }
    .business-info-container .textbox dl {
        padding: 2rem 0;
    }
    .business-info-container .textbox dl dt {
        margin: 2rem 0 1.5rem 0; 
    }
    .business-info-container .textbox dl dt span {
        font-size: 2.571vw;
        line-height: 100%;
    }
    .business-info-container .textbox dl dd {
        font-size: 2.28vw;
    }
    .business-info-container .textbox dl dd p {
        padding: 0 0 1.5rem 0;
    }
    .business-content {
        padding-bottom: 5vw;
    }
}
.stage-about-service {
    background-color: #f6f8fA;
    background-image: url(../images/stage_bg1.png),url(../images/stage_bg2.png),linear-gradient(0deg, rgba(246,248,250,1) 0%,rgba(255,255,255,1) 10%, rgba(246,248,250,1) 100%);
    background-position: left top,right bottom,center center;
    background-repeat: no-repeat;
    background-size: 15% auto,22.5% auto,100% 100%;
}
.about-service-content1::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    background: rgb(255,255,255);
    background: linear-gradient(0deg, rgba(255,255,255,1) 10%, rgba(255,255,255,0) 80%);
}
.about-service-info-container {
    position: relative;
    display: block;
    width: 100%;
}

.about-service-info-container .textbox {
    position: relative;
    display: block;
    width: 100%;
}
.about-service-info-container .textbox dl {
    position: relative;
    display: block;
    width: 100%;
    padding: 3rem 0 1.5rem 0;
}
.about-service-info-container .textbox dl dt {
    position: relative;
    display: block;
    margin: 0 0 1rem 0; 
}
.about-service-info-container .textbox dl dt span {
    position: relative;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.5rem;
    color: #5696CB;
    font-weight: 500;
}
.about-service-info-container .textbox dl.expand dt span{
    color: #5696CB;
}
.about-service-info-container .textbox dl dd {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 150%;
    color: #282828;
    font-weight: 500;
}
.about-service-info-container .textbox dl dd p {
    position: relative;
    display: block;
    font-size: 1.1rem;
    line-height: 150%;
    color: #282828;
    padding: 0.5rem 0;
}
.about-service-info-container .textbox dl dd p.arrow-list {
    padding: 0.5rem 0 0.5rem 1.2rem;
}
.about-service-info-container .textbox dl dd p.arrow-list::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
    left: 0;
    top:1rem;
}
.about-service-info-container .imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.about-service-content2 {
    padding-top: 6vw;
}
.service-features-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}
.service-features-list li {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 32%;
    padding: 2rem 0;
}
.service-features-list li .icon-img {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 8rem;
    height: 8rem;
    background: #fff;
    border-radius: 50%;
    box-shadow: 1rem 1rem 2rem 0 #D7E0E580;
}
.service-features-list li .icon-img img {
    position: relative;
    display: block;
    width: 70%;
    height: auto;
}
.service-features-list li .t1 {
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 1.5rem;
    line-height: 150%;
    padding: 1rem 0;
    font-weight: 500;
}
.service-features-list li .t2 {
    position: relative;
    display: block;
    color: #5D5D5D;
    font-size: 1.1rem;
    line-height: 150%;
    padding: 0 2rem;
    font-weight: 500;
}
.about-service-content2::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    top:0;
    background: #F6F8FA;
}
.about-service-content3 {
    padding-top: 8vw;
}
.about-service-content3::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 100%;
    left: calc(50% - 50vw);
    top:0;
    background: rgb(255,255,255);
    background: linear-gradient(0deg, rgba(255,255,255,0) 50%, rgba(255,255,255,1) 80%);
}
.about-service-content3 .about-service-info-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2rem 0;
}
.about-service-content3 .about-service-info-container .textbox{
    width: 45%;
}
.about-service-content3 .about-service-info-container .imgbox {
    width: 45%;
}
.about-service-content3 .about-service-info-container .textbox dl {
    padding: 0.5rem 0;
}
.about-service-content3 .about-service-info-container .textbox dl dt {
    margin: 0rem;
}
.about-service-table {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 2rem 0 0 0;
}
.about-service-table dl {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 0.5rem;
    overflow: hidden;
    margin: 0 0 2rem 0;
}
.about-service-table dl dt {
    position: relative;
    display: block;
    background: #5696CB;
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    line-height: 150%;
    padding: 1rem;
    font-weight: 500;
}
.about-service-table dl dd {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background: #F6F8FA;
    padding: 1rem 2rem;
    
}
.about-service-table dl dd .box {
    position: relative;
    display: inline-block;
}
.about-service-table dl dd .box p {
    position: relative;
    display: inline-block;
    color: #5D5D5D;
    font-size: 1rem;
    line-height: 150%;
    padding: 0.3rem 0;
    font-weight: 500;
}
.about-service-table dl dd p.arrow-list {
    padding: 0.3rem 0 0.3rem 1.2rem;
}
.about-service-table dl dd p.arrow-list::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.6rem;
    height: 0.6rem;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
    left: 0;
    top:1rem;
}
.about-service-table dl.item3,
.about-service-table dl.item4,
.about-service-table dl.item5{
    width: 32%;
}
.about-service-table dl.item3 dd,
.about-service-table dl.item4 dd,
.about-service-table dl.item5 dd {
    height: 13rem;
}
.about-service-table .arrow-icon {
    position: absolute;
    display: block;
    width: 3.4rem;
    height: 3.4rem;
}
.about-service-table .arrow-icon1 {
    left: calc(50% - 1.7rem);
    top:13.5rem;
}
.about-service-table .arrow-icon2 {
    left: 10rem;
    top:22rem;
}
.about-service-table .arrow-icon3 {
    left: 21rem;
    top:32.5rem;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
.about-service-table .arrow-icon4 {
    left: 44.4rem;
    top:32.5rem;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
@media screen and (max-width: 1200px) {
    .about-service-info-container .textbox dl {
        padding: 1.5rem 0;
    }
    .about-service-info-container .textbox dl dt {
        margin: 0 0 1.5rem 0; 
    }
    .about-service-info-container .textbox dl dt span {
        font-size: 2.571rem;
        line-height: 2.3rem;
    }
    
    .about-service-info-container .textbox dl dd {
        font-size: 2.13rem;
    }
    .about-service-info-container .textbox dl dd p {
        font-size: 2.13rem;
        padding: 1.5rem 0;
    }
    .about-service-info-container .textbox dl dd p.arrow-list {
        padding: 1rem 0 1rem 3rem;
    }
    .about-service-info-container .textbox dl dd p.arrow-list::before {
        width: 2rem;
        height: 2rem;
        left: 0;
        top:1.8rem;
    }
    .about-service-info-container .imgbox {
        position: relative;
        display: block;
        width: 100%;
    }
    .about-service-content3 .about-service-info-container {
        flex-direction: column;
    }
    .about-service-content3 .about-service-info-container .textbox{
        width: 100%;
        margin-top: 3rem;
    }
    .about-service-content3 .about-service-info-container .imgbox {
        position: relative;
        display: block;
        right: auto;
        top:auto;
        width: 100%;
    }
    .service-features-list {
        padding: 2rem 0 0 0;
    }
    .service-features-list li {
        width: 100%;
        padding: 2rem 0;
    }
    .service-features-list li .icon-img {
        width: 13rem;
        height: 13rem;
        box-shadow: 1rem 1rem 2rem 0 #D7E0E580;
    }
    .service-features-list li .t1 {
        font-size: 2.5rem;
    }
    .service-features-list li .t2 {
        font-size: 2.13rem;
        text-align: center;
    }
    .about-service-table {
        padding: 2rem 0 0 0;
        display: flex;
        flex-direction: column;
    }
    .about-service-table dl {
        border-radius: 1rem;
        margin: 0 0 4rem 0;
    }
    .about-service-table dl dt {
        font-size: 2.67rem;
        padding: 1.5rem;
    }
    .about-service-table dl dd {
        padding: 1rem 2rem 1rem 2rem;
    }
    .about-service-table dl dd .box p {
        font-size: 2.13rem;
        padding: 0.8rem 0;
    }
    .about-service-table dl dd p.arrow-list {
        padding: 0.8rem 0 0.8rem 1.2rem;
    }
    .about-service-table dl dd p.arrow-list::before {
        content: "";
        position: absolute;
        display: block;
        width: 2rem;
        height: 2rem;
        background: url(../images/icon_arrow1.svg) no-repeat center center;
        background-size: contain;
        left: -2vw;
        top:1.5rem;
    }
    .about-service-table dl.item3,
    .about-service-table dl.item4,
    .about-service-table dl.item5{
        width: 100%;
    }
    .about-service-table dl.item3 dd,
    .about-service-table dl.item4 dd,
    .about-service-table dl.item5 dd {
        height: auto;
    }
    .about-service-table .arrow-icon {
        position: relative;
    }
    .about-service-table dl.item1 {
        order: 1;
    }
    .about-service-table .arrow-icon1 {
        order: 2;
    }
    .about-service-table dl.item2 {
        order: 3;
    }
    .about-service-table .arrow-icon2 {
        order: 4;
    }
    .about-service-table dl.item3 {
        order: 5;
    }
    .about-service-table .arrow-icon3 {
        order: 6;
    }
    .about-service-table dl.item4 {
        order: 7;
    }
    .about-service-table .arrow-icon4 {
        order: 8;
    }
    .about-service-table dl.item5 {
        order: 9;
    }
    .about-service-table .arrow-icon {
        width: 6rem;
        height: 6rem;
        margin: -5rem 0 -1rem 0;
        z-index: 2;
    }
    .about-service-table .arrow-icon1 {
        left: calc(50% - 3rem);
        top:auto;
    }
    .about-service-table .arrow-icon2 {
        left: calc(50% - 3rem);
        top:auto;
    }
    .about-service-table .arrow-icon3 {
        left: calc(50% - 3rem);
        top:auto;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .about-service-table .arrow-icon4 {
        left: calc(50% - 3rem);
        top:auto;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .about-service-info-container .textbox dl {
        padding: 1.5rem 0;
    }
    .about-service-info-container .textbox dl dt {
        margin: 0 0 1.5rem 0; 
    }
    .about-service-info-container .textbox dl dt span {
        font-size: 2.571vw;
        line-height: 150%;
    }
    
    .about-service-info-container .textbox dl dd {
        font-size: 2.28vw;
    }
    .about-service-info-container .textbox dl dd p {
        font-size: 2.28vw;
        padding: 1.5rem 0;
    }
    .about-service-info-container .textbox dl dd p.arrow-list {
        padding: 1rem 0 1rem 3rem;
    }
    .about-service-info-container .textbox dl dd p.arrow-list::before {
        width: 2.28vw;
        height: 2.28vw;
        left: 0;
        top:1.8vw;
    }
    .about-service-info-container .imgbox {
        position: relative;
        display: block;
        width: 100%;
    }
    .about-service-content3 .about-service-info-container {
        flex-direction: column;
    }
    .about-service-content3 .about-service-info-container .textbox{
        width: 100%;
        margin-top: 3rem;
    }
    .about-service-content3 .about-service-info-container .imgbox {
        position: relative;
        display: block;
        right: auto;
        top:auto;
        width: 100%;
    }
    .service-features-list {
        padding: 2rem 0 0 0;
    }
    .service-features-list li {
        width: 50%;
        padding: 2vw 0;
    }
    .service-features-list li .icon-img {
        width: 14rem;
        height: 14rem;
        box-shadow: 1rem 1rem 2rem 0 #D7E0E580;
    }
    .service-features-list li .t1 {
        font-size: 2.571vw;
    }
    .service-features-list li .t2 {
        font-size: 2.28vw;
        text-align: center;
    }
}
.stage-responsibility .hero-banner2 {
    height: 21vw;
}
.stage-responsibility .hero-banner2 .textbox {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
}
.stage-responsibility .hero-banner2 .textbox .t1 {
    position: relative;
    display: block;
    font-size: 2rem;
    line-height: 150%;
    color: #fff;
}
.stage-responsibility .hero-banner2 .textbox .t2 {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 180%;
    color: #fff;
    text-align: center;
    padding: 1.5rem 0;
}
.hero-banner2-t2-m {
    display: none;
}
.achievement-list {
    position: relative;
    display: block;
    width: 100%;
}
.achievement-list ul {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
}
.achievement-list li {
    position: relative;
    display: block;
    width: 48.5%;
    height: 15rem;
    margin: 0 0 2rem 0;
    cursor: pointer;
    box-shadow: 1rem 1.5rem 2rem 0 #D7E0E580;
}
.achievement-list li .imgbox {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.achievement-list li:hover .imgbox::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.2);
}
.achievement-list li.item5 {
    width: 100%;
}
.achievement-list li.item1 .imgbox {
    background: url(../images/res_btn1.jpg) no-repeat center center;
    background-size: cover;
}
.achievement-list li.item2 .imgbox {
    background: url(../images/res_btn2.jpg) no-repeat center center;
    background-size: cover;
}
.achievement-list li.item3 .imgbox {
    background: url(../images/res_btn3.jpg) no-repeat center center;
    background-size: cover;
}
.achievement-list li.item4 .imgbox {
    background: url(../images/res_btn4.jpg) no-repeat center center;
    background-size: cover;
}
.achievement-list li.item5 .imgbox {
    background: url(../images/res_btn5.jpg) no-repeat center center;
    background-size: cover;
}
.achievement-list li .btnbox {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    left: 0;
    top: 0;
}
.achievement-list li .btnbox .btn-title {
    position: relative;
    display: block;
    font-size: 1.5rem;
    line-height: 100%;
    font-weight: 500;
}
.stage-responsibility2 {
    background-color: #f6f8fa;
    background-image:url(../images/res_bg.jpg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.action-container {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 2rem 0;
    padding: 0 0 0 8%;
}
.action-container .action-list {
    position: relative;
    display: block;
    width: 20%;
}
.action-container .action-list ul {
    position: relative;
    display: block;
    width: 100%;
}
.action-container .action-list ul li {
    position: relative;
    display: block;
    padding: 0.3rem 0;
    cursor: pointer;
}
.action-container .action-list ul li span{
    position: relative;
    display: inline-block;
    color: #A4A4A4;
    font-size: 1rem;
    line-height: 150%;
    vertical-align: middle;
}
.action-container .action-list ul li:hover span,
.action-container .action-list ul li.current span{
    color: #5696CB;
}
.action-container .action-list ul li::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    line-height: 150%;
    vertical-align: middle;
}
.action-container .action-list ul li:nth-child(odd)::before {
    background: url(../images/res_foot_icon1.svg) no-repeat center center;
    background-size: contain;
}
.action-container .action-list ul li:nth-child(even)::before {
    background: url(../images/res_foot_icon2.svg) no-repeat center center;
    background-size: contain;
}
.action-container .action-list ul li:nth-child(odd):hover::before,
.action-container .action-list ul li:nth-child(odd).current::before{
    background: url(../images/res_foot_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.action-container .action-list ul li:nth-child(even):hover::before,
.action-container .action-list ul li:nth-child(even).current::before{
    background: url(../images/res_foot_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.action-container .action-content {
    position: relative;
    display: block;
    width: 80%;
}
.action-container .action-content ul {
    position: relative;
    display: block;
    width: 100%;
}
.action-container .action-content ul li {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    border-bottom: 1px solid #dbdbdb;
    padding: 2rem 0;
}
.action-container .action-content ul li .imgbox {
    position: relative;
    display: block;
    width: 28%;
    height: 8vw;
    overflow: hidden;
}
.action-container .action-content ul li .imgbox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.action-container .action-content ul li .textbox {
    position: relative;
    display: block;
    width: 72%;
    padding: 0 0 0 2rem;
}
.action-container .action-content ul li .textbox .action-date {
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 0.8rem;
    line-height: 150%;
    font-weight: 500;
}
.action-container .action-content ul li .textbox .action-title {
    position: relative;
    display: block;
    color: #282828;
    font-size: 1.2rem;
    line-height: 150%;
    padding: 0.3rem 0;
    font-weight: 500;
}
.action-container .action-content ul li .textbox .action-text {
    position: relative;
    display: block;
    color: #5D5D5D;
    font-size: 1rem;
    line-height: 150%;
    font-weight: 500;
}

@media screen and (max-width: 1200px) {
    .stage-responsibility .hero-banner2 {
        height: 30vw;
    }
    .stage-responsibility .hero-banner2 img {
        width: 120%;
        left: -10%;
    }
    .stage-responsibility .hero-banner2 .textbox .t1 {
        font-size: 3rem;
    }
    .stage-responsibility .hero-banner2 .textbox .t2 {
        display: none;
    }
    .stage-responsibility .hero-banner2-t2-m {
        position: relative;
        display: block;
        font-size: 2.13rem;
        line-height: 180%;
        color: #5d5d5d;
        text-align: center;
        padding: 1.5rem 0 5rem 0;
        font-weight: 500;
    }
    .achievement-list li {
        width: 100%;
        height: 30rem;
        margin: 1rem 0;
    }
    .achievement-list li.item5 {
        width: 100%;
    }
    .achievement-list li.item5 .imgbox {
        background: url(../images/res_btn5_2.jpg) no-repeat center center;
        background-size: cover;
    }
    .achievement-list li .btnbox .btn-title {
        font-size: 3rem;
        line-height: 150%;
    }
    .action-container {
        flex-direction: column;
        margin: 2rem 0;
        padding: 0;
    }
    .action-container .action-list {
        width: 100%;
        overflow-x: scroll;
    }
    .action-container .action-list ul {
        white-space: nowrap;
    }
    .action-container .action-list ul li {
        display: inline-block;
        padding: 1rem 2rem;
    }
    .action-container .action-list ul li span{
        font-size: 3rem;
        line-height: 150%;
    }
    .action-container .action-list ul li::before {
        width: 5rem;
        height: 5rem;
        margin-right: 1rem;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }
    .action-container .action-content {
        width: 100%;
    }
    .action-container .action-content ul li {
        flex-direction: column;
        padding: 3rem 0;
    }
    .action-container .action-content ul li .imgbox {
        width: 100%;
        height: 55vw;
        padding: 0 0 2rem 0;
    }
    .action-container .action-content ul li .textbox {
        width: 100%;
        padding: 0;
    }
    .action-container .action-content ul li .textbox .action-date {
        font-size: 1.8rem;
    }
    .action-container .action-content ul li .textbox .action-title {
        font-size: 2.2rem;
        padding: 1rem 0;
    }
    .action-container .action-content ul li .textbox .action-text {
        font-size: 2rem;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .stage-responsibility .hero-banner2-t2-m {
        font-size: 2.28vw;
    }
    .achievement-list li .btnbox .btn-title {
        font-size: 3.142vw;
    }
    .achievement-list li .btnbox .global-morebtn span {
        font-size: 2.28vw;
        display: block;
    }
    .achievement-list li .btnbox .global-morebtn::after {
        width: 5vw;
        height: 5vw;
    }
    .achievement-list li {
        height: 25vw;
    }
    .achievement-list li.item5 .imgbox {
        background: url(../images/res_btn5.jpg) no-repeat center center;
        background-size: cover;
    }
    .action-container .action-list ul li {
        display: inline-block;
        padding: 1vw 1vw;
    }
    .action-container .action-list ul li span{
        font-size: 2.571vw;
        line-height: 150%;
    }
    .action-container .action-list ul li::before {
        width: 5rem;
        height: 5rem;
        margin-right: 1rem;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }
}


.integrative-feature {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}
.integrative-feature .box1 {
    position: relative;
    display: block;
    width: 50%;
}
.integrative-feature .box2 {
    position: relative;
    display: block;
    width: 40%;
}
.integrative-feature .intro-textbox {
    position: relative;
    display: block;
    width: 100%;
    padding: 2rem 4rem 0 0;
}
.integrative-feature .intro-textbox .t1{
    position: relative;
    display: block;
    font-size: 2.18rem;
    line-height: 150%;
    color: #376D99;
    font-weight: 500;
}
.integrative-feature .intro-textbox .t2{
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 150%;
    color: #282828;
    padding: 1rem 0 0 0;
    font-weight: 500;
}
.feature-btnbox {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 4rem 0 0 0;
}
.feature-btnbox li {
    position: relative;
    display: block;
    margin: 0 2rem 0 0;
    cursor: pointer;
}
.feature-btnbox li .btn-icon {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    border:1px solid #5696CB;
}
.feature-btnbox li:hover .btn-icon,
.feature1 .feature-btnbox li.item1 .btn-icon,
.feature2 .feature-btnbox li.item2 .btn-icon,
.feature3 .feature-btnbox li.item3 .btn-icon{
    background: #5696CB;
}
.feature-btnbox li .btn-icon::before {
    content: "";
    position: relative;
    display: block;
    width: 70%;
    height: 70%;
}
.feature-btnbox li:hover .btn-icon::before,
.feature1 .feature-btnbox li.item1 .btn-icon::before,
.feature2 .feature-btnbox li.item2 .btn-icon::before,
.feature3 .feature-btnbox li.item3 .btn-icon::before{
    display: none;
}
.feature-btnbox li .btn-icon::after {
    content: "";
    position: relative;
    display: none;
    width: 70%;
    height: 70%;
}
.feature-btnbox li:hover .btn-icon::after,
.feature1 .feature-btnbox li.item1 .btn-icon::after,
.feature2 .feature-btnbox li.item2 .btn-icon::after,
.feature3 .feature-btnbox li.item3 .btn-icon::after{
    display: block;
}
.feature-btnbox li.item1 .btn-icon::before {
    background: url(../images/integrative_feature_icon1.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li.item1 .btn-icon::after {
    background: url(../images/integrative_feature_icon1_hover.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li.item2 .btn-icon::before {
    background: url(../images/integrative_feature_icon2.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li.item2 .btn-icon::after {
    background: url(../images/integrative_feature_icon2_hover.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li.item3 .btn-icon::before {
    background: url(../images/integrative_feature_icon3.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li.item3 .btn-icon::after {
    background: url(../images/integrative_feature_icon3_hover.svg) no-repeat center center;
    background-size:contain;
}
.feature-btnbox li .btn-text {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1rem;
    padding: 1rem 0;
}
.feature-btnbox li:hover .btn-text,
.feature1 .feature-btnbox li.item1 .btn-text,
.feature2 .feature-btnbox li.item2 .btn-text,
.feature3 .feature-btnbox li.item3 .btn-text{
    color: #5696CB;
}
.feature-textbox {
    position: relative;
    display: block;
    width: 25rem;
    height: 25rem;
}
.feature-textbox .imgbox {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.feature-textbox .imgbox .bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/feature_bg.png) no-repeat center center;
    background-size: contain;
}
.feature-textbox .imgbox .bg::before {
    content: "";
    position: absolute;
    display: block;
    width: 116%;
    height: 116%;
    left: -8%;
    top:-8%;
    border-radius: 50%;
    border:1px solid #5696CB;
}
.feature-textbox .imgbox .dot {
    position: absolute;
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border:1px solid #5696CB;
    background: #fff;
}
.feature-textbox .imgbox .dot::before {
    content: "";
    position: absolute;
    display: none;
    width: 60%;
    height: 60%;
    border-radius: 50%;
    background: #5696CB;
    left: 20%;
    top:20%;
}
.feature1 .feature-textbox .imgbox .dot.dot1::before,
.feature2 .feature-textbox .imgbox .dot.dot2::before,
.feature3 .feature-textbox .imgbox .dot.dot3::before{
    display: block;
}
.feature-textbox .imgbox .dot1 {
    left: calc(50% - 1.2rem);
    top:-3rem;
}
.feature-textbox .imgbox .dot2 {
    left: calc(0% - 1.6rem);
    top:70%;
}
.feature-textbox .imgbox .dot3 {
    right: calc(0% - 1.6rem);
    top:70%;
}
.feature-textbox .textbox {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
}
.feature-textbox .textbox .feature-text-list {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top:0; 
}
.feature-textbox .textbox .feature-text-list li {
    position: absolute;
    display: none;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 70%;
    height: 70%;
    left: 15%;
    top:10%; 
    font-weight: 500;
}
.feature1 .feature-textbox .textbox .feature-text-list li.item1,
.feature2 .feature-textbox .textbox .feature-text-list li.item2,
.feature3 .feature-textbox .textbox .feature-text-list li.item3{
    display: flex;
}
.feature-textbox .textbox .feature-text-list li .t1 {
    position: relative;
    display: block;
    font-size: 2rem;
    line-height: 150%;
    color: #5696CB;
}
.feature-textbox .textbox .feature-text-list li .t2 {
    position: relative;
    display: block;
    font-size: 1.2rem;
    line-height: 150%;
    color: #282828;
    padding: 0.4rem 0;
}
.feature-textbox .textbox .feature-text-list li .t3 {
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 150%;
    color: #5D5D5D;
}
.feature-textbox .textbox .dot-box {
    position: absolute;
    display: block;
    top:85%;
    width: 100%;
    text-align: center;
}
.feature-textbox .textbox .dot-box li {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.feature-textbox .textbox .dot-box li.dot-text {
    font-size: 1.2rem;
}
.feature-textbox .textbox .dot-box li.arrow-left {
    width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
}
.feature-textbox .textbox .dot-box li.arrow-left::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-left: 2px solid #5696CB;
    border-top:2px solid #5696CB;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.feature-textbox .textbox .dot-box li.arrow-left.set-off::before {
    opacity: 0.3;
}
.feature-textbox .textbox .dot-box li.arrow-right {
    width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
}
.feature-textbox .textbox .dot-box li.arrow-right::before {
    content: "";
    position: absolute;
    display: block;
    width:70%;
    height: 70%;
    border-right: 2px solid #5696CB;
    border-top:2px solid #5696CB;
    left: 15%;
    top: 15%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.feature-textbox .textbox .dot-box li.arrow-right.set-off::before {
    opacity: 0.3;
}
.stage-integrative2 {
    background-color: #f6f8fa;
}
.integrative-info-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    flex-wrap: wrap;
}
.integrative-info-list li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 25%;
    margin: 2rem 0 0 0;
    cursor: pointer;
}
.integrative-info-list li dl {
    position: relative;
    display: block;
    width: 100%;
}
.integrative-info-list li dl dt {
    position: relative;
    display: block;
    width: 100%;
}
.integrative-info-list li dl dt .iconbox {
    position: relative;
    display: block;
    width: 6rem;
    height: 6rem;
    margin: 0 auto;
    background: #fff;
    border-radius: 50%;
    box-shadow: 1rem 1rem 2rem 0 #D7E0E5;
}
.integrative-info-list li:hover dl dt .iconbox,
.integrative-info-list li.current dl dt .iconbox{
    background: #5696CB;
}
.integrative-info-list li dl dt .iconbox::before {
    content: "";
    position: absolute;
    display: block;
    width: 80%;
    height: 80%;
    left: 10%;
    top:10%;
}
.integrative-info-list li dl dt .iconbox::after {
    content: "";
    position: absolute;
    display: none;
    width: 80%;
    height: 80%;
    left: 10%;
    top:10%;
}
.integrative-info-list li:hover dl dt .iconbox::before,
.integrative-info-list li.current dl dt .iconbox::before{
    display: none;
}
.integrative-info-list li:hover dl dt .iconbox::after,
.integrative-info-list li.current dl dt .iconbox::after{
    display: block;
}
.integrative-info-list li.item1 dl dt .iconbox::before {
    background: url(../images/feature_info_icon1.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item2 dl dt .iconbox::before {
    background: url(../images/feature_info_icon2.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item3 dl dt .iconbox::before {
    background: url(../images/feature_info_icon3.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item4 dl dt .iconbox::before {
    background: url(../images/feature_info_icon4.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item5 dl dt .iconbox::before {
    background: url(../images/feature_info_icon5.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item6 dl dt .iconbox::before {
    background: url(../images/feature_info_icon6.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item7 dl dt .iconbox::before {
    background: url(../images/feature_info_icon7.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item1 dl dt .iconbox::after {
    background: url(../images/feature_info_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item2 dl dt .iconbox::after {
    background: url(../images/feature_info_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item3 dl dt .iconbox::after {
    background: url(../images/feature_info_icon3_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item4 dl dt .iconbox::after {
    background: url(../images/feature_info_icon4_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item5 dl dt .iconbox::after {
    background: url(../images/feature_info_icon5_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item6 dl dt .iconbox::after {
    background: url(../images/feature_info_icon6_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li.item7 dl dt .iconbox::after {
    background: url(../images/feature_info_icon7_hover.svg) no-repeat center center;
    background-size: contain;
}
.integrative-info-list li dl dt .btn-title {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.2rem;
    line-height: 150%;
    padding: 0.3rem 0;
    font-weight: 500;
}
.integrative-info-list li:hover dl dt .btn-title,
.integrative-info-list li.current dl dt .btn-title{
    color: #5696CB;
}
.integrative-info-list li dl dt .btn-title::after {
    color: #5696CB;
    content: " + ";
}
.integrative-info-list li.current dl dt .btn-title::after {
    content: " - ";
}
.integrative-info-list li dl dd {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    width: 85%;
    margin: 0 auto;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s ease;
    transition: max-height 0.5s ease;
}
.integrative-info-list li.current dl dd {
    max-height: 60vh;
}
.integrative-info-list li dl dd .box{
    position: relative;
    display: inline-block;
}
.integrative-info-list li dl dd .box p {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    line-height: 150%;
    color: #5D5D5D;
    font-weight: 500;
}
.integrative-info-list li dl dd p.arrow-list {
    padding: 0.3rem 0 0.3rem 0.8rem;
}
.integrative-info-list li dl dd p.arrow-list::before {
    content: "";
    position: absolute;
    display: block;
    width: 0.6rem;
    height: 0.6rem;
    background: url(../images/icon_arrow1.svg) no-repeat center center;
    background-size: contain;
    left: 0;
    top:0.7rem;
}
.integrative-content3{
    /*padding: 6rem 0 5rem 0;*/
}
.integrative3-imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.integrative3-imgbox .img-pc {
    position: relative;
    display: block;
    width: 100%;
}
.integrative3-imgbox .img-m {
    position: relative;
    display: none;
    width: 100%;
}
.reserve-info {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    padding: 2rem 0;
}
.reserve-info .box1 {
    position: relative;
    display: block;
    width: 47%;
}
.reserve-info .box2 {
    position: relative;
    display: block;
    width: 47%;
}
.reserve-info .reserve-info-title {
    position: relative;
    display: block;
    color: #5696CB;
    font-size: 1.5rem;
    padding: 0 0 1rem 0;
    font-weight: 500;
}
.reserve-info .textbox {
    position: relative;
    display: block;
    text-align: left;
    font-size: 1rem;
    line-height: 150%;
    font-weight: 500;
    color: #282828;
}
.reserve-info .textbox p {
    padding: 0.5rem 0;
}
.case-list {
    position: relative;
    display: block;
    width: 100%;
}
.case-list .item {
    position: relative;
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    border-bottom:1px solid #DBDBDB;
    padding: 2rem 0;
}
.case-list .item .imgbox {
    position: relative;
    display: block;
    width: 21vw;
}
.case-list .item .textbox {
    position: relative;
    display: block;
    width: calc(100% - 21vw);
    padding: 0 0 0 2rem;
}
.case-list .item .textbox .top-line {
    position: relative;
    display: block;
    width: 100%;
}
.case-list .item .textbox .top-line .top-sn {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 0.89rem;
    line-height: 150%;
    color: #5696CB;
    padding: 0.1rem 1.5rem 0.1rem 1rem;
    font-weight: 500;
    border-left: 0.2rem solid #5696CB;
    border-top:1px solid #5696CB;
    border-bottom:1px solid #5696CB;
    margin: 0 1rem 0 0;
}
.case-list .item .textbox .top-line .top-sn::after {
    content: "";
    position: absolute;
    display: block;
    width: 1.1rem;
    height: 1.1rem;
    border-top:1px solid #5696CB;
    border-left:1px solid #5696CB;
    top:50%;
    right: 0;
    -webkit-transform: translate(50%,-50%) rotate(-45deg);
    transform: translate(50%,-50%) rotate(-45deg);
}
.case-list .item .textbox .top-line .top-date {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 0.89rem;
    line-height: 150%;
    color: #5696CB;
    padding: 0 1rem 0 0;
    font-weight: 500;
}
.case-list .item .textbox .top-line .top-new {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 0.89rem;
    line-height: 150%;
    color: #EB6877;
    padding: 0 0 0 1rem;
    border-left: 1px solid #a4a4a4;
    font-weight: 500;
}
.case-list .item .textbox .content-box {
    position: relative;
    display: block;
    width: 100%;
}
.case-list .item .textbox .content-box .content-text{
    position: relative;
    display: block;
    width: 100%;
}
.case-list .item .textbox .content-box .content-text h4{
    position: relative;
    display: block;
    font-size: 1.25rem;
    line-height: 150%;
    padding: 0.3rem 0;
    font-weight: 500;
}
.case-list .item .textbox .content-box .content-text p{
    position: relative;
    display: block;
    font-size: 1rem;
    line-height: 150%;
    padding: 0 0 1rem 0;
    color: #5D5D5D;
    font-weight: 500;
}
.case-list .item .textbox .bottom-line {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.case-list .item .textbox .bottom-line .bottom-tag {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.case-list .item .textbox .bottom-line .bottom-tag li {
    position: relative;
    display: inline-block;
    color: #5696CB;
    border:1px solid #5696CB;
    font-size: 0.89rem;
    line-height: 150%;
    padding: 0.5rem 1rem;
    margin: 0 0.5rem 0 0;
    border-radius: 1.5rem;
    cursor: pointer;
    font-weight: 500;
}
.case-list .item .textbox .bottom-line .bottom-tag li:hover {
    background: #ACDBFA;
}
.case-list .item .textbox .bottom-line .global-morebtn span{
    font-size: 1rem;
    line-height: 150%;
}
.case-list .item .textbox .bottom-line .global-morebtn::after{
    height: 2rem;
    width: 2rem;
}
.integrative-video-box {
    position: relative;
    display: block;
    width: 100%;
    height: 30vw;
    background: #000;
    margin: 3vw 0;
}
@media screen and (max-width: 1200px) {
    .integrative-content4 {
        padding-bottom: 5rem;
    }
    .integrative-content5 {
        padding-bottom: 5rem;
    }
}
@media screen and (max-width: 1200px) {
    .integrative-feature {
        flex-direction: column;
    }
    .integrative-feature .box1 {
        width: 100%;
    }
    .integrative-feature .box2 {
        width: 100%;
    }
    .integrative-feature .intro-textbox {
        padding: 0;
    }
    .integrative-feature .intro-textbox .t1{
        font-size: 2.5rem;
    }
    .integrative-feature .intro-textbox .t2{
        font-size: 1.8rem;
        line-height: 150%;
        padding: 1rem 0 0 0;
    }
    .feature-btnbox {
        margin: 5rem 0 0 0;
        height: 13rem;
    }
    .feature-btnbox li {
        position: absolute;
        margin: 0;
        width: 10rem;
        height: 10rem;
        top:0;
        -webkit-transition: left 0.5s ease,top 0.5s ease,width 0.5s ease,height 0.5s ease;
        transition: left 0.5s ease,top 0.5s ease,width 0.5s ease,height 0.5s ease;
    }
    .feature1 .feature-btnbox li.item1,
    .feature2 .feature-btnbox li.item2,
    .feature3 .feature-btnbox li.item3{
        width: 12rem;
        height: 12rem;
        z-index: 1;
    }
    .feature-btnbox li.item1 {
        left: calc(50% - 17rem);
    }
    .feature-btnbox li.item2 {
        left: calc(50% - 5rem);
    }
    .feature-btnbox li.item3 {
        left: calc(50% + 7rem);
    }
    .feature1 .feature-btnbox li.item1 {
        left: calc(50% - 6rem);
        top:-1rem;
    }
    .feature1 .feature-btnbox li.item2 {
        left: calc(50% - 17rem);
    }
    .feature1 .feature-btnbox li.item3 {
        left: calc(50% + 7rem);
    }
    .feature2 .feature-btnbox li.item1 {
        left: calc(50% - 17rem);
    }
    .feature2 .feature-btnbox li.item2 {
        left: calc(50% - 6rem);
        top:-1rem;
    }
    .feature2 .feature-btnbox li.item3 {
        left: calc(50% + 7rem);
    }
    .feature3 .feature-btnbox li.item1 {
        left: calc(50% - 17rem);
    }
    .feature3 .feature-btnbox li.item2 {
        left: calc(50% + 7rem);
    }
    .feature3 .feature-btnbox li.item3 {
        left: calc(50% - 6rem);
        top:-1rem;
    }
    .feature-btnbox li .btn-icon {
        width: 100%;
        height: 100%;
    }
    .feature-btnbox li:hover .btn-icon,
    .feature1 .feature-btnbox li.item1 .btn-icon,
    .feature2 .feature-btnbox li.item2 .btn-icon,
    .feature3 .feature-btnbox li.item3 .btn-icon{
        background: #5696CB;
        box-shadow: 0 0 3rem rgba(255,255,255,1),0 0 3rem rgba(255,255,255,1),0 0 3rem rgba(255,255,255,1);
    }
    .feature-btnbox li .btn-text {
        display: none;
    }
    .feature-textbox {
        width: 80%;
        height: 20rem;
        left: 10%;
    }
    .feature-textbox .imgbox {
        display: none;
    }
    .feature-textbox .textbox {
        position: absolute;
        display: block;
        width: 100%;
        height: 100%;
        left: 0;
        top:0;
    }
    .feature-textbox .textbox .feature-text-list {
        position: absolute;
        display: block;
        width: 100%;
        height: 100%;
        left: 0;
        top:0; 
    }
    .feature-textbox .textbox .feature-text-list li {
        width: 100%;
        height: auto;
        left: 0;
        top:0; 
    }
    .feature1 .feature-textbox .textbox .feature-text-list li.item1,
    .feature2 .feature-textbox .textbox .feature-text-list li.item2,
    .feature3 .feature-textbox .textbox .feature-text-list li.item3{
        display: block;
        text-align: center;
    }
    .feature-textbox .textbox .feature-text-list li .t1 {
        display: inline-block;
        font-size: 2rem;
        line-height: 150%;
        padding: 1rem 0;
    }
    .feature-textbox .textbox .feature-text-list li .t1::after {
        content: " : "
    }
    .feature-textbox .textbox .feature-text-list li .t2 {
        display: inline-block;
        font-size: 2rem;
        line-height: 150%;
        color: #5696CB;
        padding: 1rem 0;
    }
    .feature-textbox .textbox .feature-text-list li .t3 {
        font-size: 1.8rem;
        text-align: left;
    }
    .feature-textbox .textbox .dot-box {
        top:85%;
    }
    .feature-textbox .textbox .dot-box li.dot-text {
        font-size: 2rem;
    }
    .feature-textbox .textbox .dot-box li.arrow-left {
        width: 2rem;
        height: 2rem;
    }

    .feature-textbox .textbox .dot-box li.arrow-right {
        width: 2rem;
        height: 2rem;
    }
    .integrative-info-list {
        flex-direction: column;
    }
    .integrative-info-list li {
        width: 100%;
        margin: 3rem 0 0 0;
    }
    .integrative-info-list li dl dt .iconbox {
        width: 10rem;
        height: 10rem;
        box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    }
    .integrative-info-list li dl dt .btn-title {
        font-size: 2.571rem;
        padding: 1.5rem 0;
    }
    .integrative-info-list li dl dd {
        width: 90%;
    }
    .integrative-info-list li.current dl dd {
        max-height: 60dvh;
    }

    .integrative-info-list li dl dd .box p {
        font-size: 2.13rem;
    }
    .integrative-info-list li dl dd p.arrow-list {
        padding: 0.8rem 0 0.8rem 1.55rem;
    }
    .integrative-info-list li dl dd p.arrow-list::before {
        width: 1rem;
        height: 1rem;
        top:1.5rem;
    }
    .integrative3-imgbox {
        padding: 3rem 0 0 0;
        width: 92%;
        margin: 0 auto;
    }
    .integrative3-imgbox .img-pc {
        display: none;
    }
    .integrative3-imgbox .img-m {
        display: block;
    }
    .reserve-info {
        flex-direction: column;
        padding: 3rem 0;
    }
    .reserve-info .box1 {
        width: 100%;
    }
    .reserve-info .box2 {
        width: 100%;
        padding: 3rem 0 0 0;
    }
    .reserve-info .reserve-info-title {
        font-size: 2.4rem;
        padding: 0 0 2rem 0;
    }
    .reserve-info .textbox {
        font-size: 2.1rem;
    }
    .reserve-info .textbox p {
        padding: 0.5rem 0;
    }
    .case-list .item {
        flex-direction: column;
        padding: 4rem 0;
    }
    .case-list .item .imgbox {
        width: 100%;
    }
    .case-list .item .textbox {
        width: 100%;
        padding: 2rem 0 0 0;
    }
    .case-list .item .textbox .top-line .top-sn {
        font-size: 1.6rem;
        padding: 0.1rem 2.5rem 0.1rem 0.8rem;
        font-weight: 500;
        border-left: 0.7rem solid #5696CB;
        margin: 0 1rem 0 0;
    }
    .case-list .item .textbox .top-line .top-sn::after {
        width: 1.9rem;
        height: 1.9rem;
    }
    .case-list .item .textbox .top-line .top-date {
        font-size: 1.6rem;
        padding: 0 1.5rem 0 0;
    }
    .case-list .item .textbox .top-line .top-new {
        font-size: 1.6rem;
        padding: 0 0 0 1.5rem;
    }
    .case-list .item .textbox .content-box .content-text h4{
        font-size: 2.4rem;
        padding: 1rem 0 0rem 0;
        height: calc( 2.4rem * 1.5 * 4 + 1rem);
            text-overflow: ellipsis;
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        text-align: left;

    }
    .case-list .item .textbox .content-box .content-text p{
        font-size: 2.3rem;
        padding: 0 0 1rem 0;
    }
    .case-list .item .textbox .bottom-line {
        padding-top: 1rem;
        display: block;
    }
    .case-list .item .textbox .bottom-line .bottom-tag {
        flex-wrap: wrap;
        padding: 1rem 0 4rem 0;
    }
    .case-list .item .textbox .bottom-line .bottom-tag li {
        font-size: 1.86rem;
        line-height: 150%;
        padding: 1rem 2rem;
        margin: 0 1rem 1rem 0;
        border-radius: 3rem;
    }
    .case-list .item .textbox .bottom-line .global-morebtn {
        justify-content: flex-end;
    }
    .case-list .item .textbox .bottom-line .global-morebtn span{
        font-size: 2.2rem;
        line-height: 150%;
        display: block;
    }
    .case-list .item .textbox .bottom-line .global-morebtn::after{
        height: 3rem;
        width: 3rem;
    }
    .integrative-video-box {
        height: 55vw;
        margin: 3vw 0;
    }
    .integrative-content4 {
        padding-bottom: 5rem;
    }
    .integrative-content5 {
        padding-bottom: 5rem;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .integrative-feature .intro-textbox .t1{
        font-size: 3.571vw;
    }
    .integrative-feature .intro-textbox .t2{
        font-size: 2.2vw;
        line-height: 150%;
        padding: 1rem 0 0 0;
    }
    .feature-textbox .textbox .feature-text-list li .t1 {
        font-size: 2.571vw;
        padding: 1rem 0;
    }
    .feature-textbox .textbox .feature-text-list li .t1::after {
        content: " : "
    }
    .feature-textbox .textbox .feature-text-list li .t2 {
        font-size: 2.571vw;
        padding: 1rem 0;
    }
    .feature-textbox {
        width: 90%;
        left: 5%;
    }
    .feature-textbox .textbox .feature-text-list li .t3 {
        font-size: 2.28vw;
        text-align: center;
    }
    .feature-textbox .textbox .dot-box {
        top:85%;
    }
    .feature-textbox .textbox .dot-box li.dot-text {
        font-size: 2.571vw;
    }
    .integrative-info-list {
        flex-direction: row;
    }
    .integrative-info-list li {
        width: 50%;
        margin: 3rem 0 0 0;
    }
    .integrative-info-list li dl dt .iconbox {
        width: 10rem;
        height: 10rem;
        box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    }
    .integrative-info-list li dl dt .btn-title {
        font-size: 2.571vw;
        padding: 1rem 0;
    }
    .integrative-info-list li dl dd {
        width: 90%;
    }
    .integrative-info-list li.current dl dd {
        max-height: 60dvh;
    }

    .integrative-info-list li dl dd .box p {
        font-size: 2.28vw;
    }
    .integrative-info-list li dl dd p.arrow-list {
        padding: 0.8rem 0 0.8rem 1.55rem;
    }
    .integrative-info-list li dl dd p.arrow-list::before {
        width: 1rem;
        height: 1rem;
        top:1.8rem;
    }
    .integrative3-imgbox {
        padding: 3rem 0 0 0;
        width: 92%;
        margin: 0 auto;
    }
    .integrative3-imgbox .img-pc {
        display: none;
    }
    .integrative3-imgbox .img-m {
        display: block;
    }
    .reserve-info {
        flex-direction: column;
        padding: 3rem 0;
    }
    .reserve-info .box1 {
        width: 100%;
    }
    .reserve-info .box2 {
        width: 100%;
        padding: 3rem 0 0 0;
    }
    .reserve-info .reserve-info-title {
        font-size: 2.571vw;
        padding: 0 0 2rem 0;
    }
    .reserve-info .textbox {
        font-size: 2.28vw;
    }
    .reserve-info .textbox p {
        padding: 0.5rem 0;
    }
    .case-list .item {
        flex-direction: column;
        padding: 4rem 0;
    }
    .case-list .item .imgbox {
        width: 100%;
    }
    .case-list .item .textbox {
        width: 100%;
        padding: 2rem 0 0 0;
    }
    .case-list .item .textbox .top-line .top-date {
        font-size: 2.28vw;
        padding: 0 1.5rem 0 0;
    }
    .case-list .item .textbox .top-line .top-new {
        font-size: 2.28vw;
        padding: 0 0 0 1.5rem;
    }
    .case-list .item .textbox .content-box .content-text h4{
        font-size: 2.571vw;
        padding: 1rem 0 1rem 0;
    }
    .case-list .item .textbox .content-box .content-text p{
        font-size: 2.28vw;
        padding: 0 0 1rem 0;
    }
    .case-list .item .textbox .bottom-line {
        display: block;
    }
    .case-list .item .textbox .bottom-line .bottom-tag {
        flex-wrap: wrap;
        padding: 1rem 0 3vw 0;
    }
    .case-list .item .textbox .bottom-line .bottom-tag li {
        font-size: 2vw;
        line-height: 150%;
        padding: 1rem 2rem;
        margin: 0 1rem 1rem 0;
        border-radius: 3rem;
    }
    .case-list .item .textbox .bottom-line .global-morebtn {
        justify-content: flex-end;
    }
    .case-list .item .textbox .bottom-line .global-morebtn span{
        font-size: 2.28vw;
        line-height: 150%;
        display: block;
    }
    .case-list .item .textbox .bottom-line .global-morebtn::after{
        height: 3rem;
        width: 3rem;
    }
    .integrative-video-box {
        height: 55vw;
        margin: 3vw 0;
    }
    .integrative-content4 {
        padding-bottom: 5rem;
    }
    .integrative-content5 {
        padding-bottom: 5rem;
    }
}
.functional-content2 {
    padding-top: 0rem;
}
.functional-feature {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.functional-feature .textbox {
    position: relative;
    display: block;
    width: 60%;
    padding: 0 4rem 0 0;
}
.functional-feature .textbox .t1 {
    font-size: 2.18rem;
    line-height: 150%;
    color: #376D99;
    padding: 0 0 2rem 0;
    font-weight: 500;
}
.functional-feature .textbox .t2 {
    font-size: 1.04rem;
    line-height: 150%;
    color: #282828;
    padding: 0 0 2rem 0;
    font-weight: 500;
}
.functional-feature .textbox .t2 p {
    padding: 0.3rem 0;
}
.functional-feature .imgbox {
    position: relative;
    display: block;
    width: 40%;
}
.functional-container .main-text {
    position: relative;
    display: block;
    padding: 3rem 0 3rem 6rem;
    font-size: 1.04rem;
    line-height: 150%;
    font-weight: 500;
}
.functional-table {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    padding: 0 6rem 3rem 6rem;
    border-bottom: 1px solid #DBDBDB;
}
.functional-table .box1 {
    position: relative;
    display: block;
    width: 48%;
    margin: 0 1%;
}
.functional-table .box2 {
    position: relative;
    display: block;
    width: 48%;
    margin: 0 1%;
}
.functional-table dl {
    position: relative;
    display: block;
    border-radius: 1rem;
    overflow: hidden;
}
.functional-table  dl.box2 {
    border:1px solid #a4a4a4;
}
.functional-table dl dt {
    position: relative;
    display: block;
    background: #5696CB;
    color: #fff;
    font-size: 1.5rem;
    line-height: 150%;
    padding: 1.5rem;
    text-align: center;
    font-weight: 500;
}
.functional-table dl.box2 dt {
    background: #a4a4a4;
}
.functional-table dl dd {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 15rem;
    padding: 0 2rem;
}
.functional-table  dl.box1 dd {
    background: url(../images/func_table_bg1.jpg) no-repeat center center;
    background-size: cover;
}
.functional-table  dl.box2 dd {
    background: url(../images/func_table_bg2.jpg) no-repeat center center;
    background-size: cover;
}
.functional-table dl dd .t1 {
    position: relative;
    display: inline-block;
    font-size: 1.3rem;
    line-height: 150%;
    color: #5696CB;
    font-weight: 500;
}
.functional-table dl dd .t2 {
    position: relative;
    display: inline-block;
    font-size: 1.1rem;
    line-height: 150%;
    color: #5D5D5D;
    font-weight: 500;
}
.functional-table dl dd .t3 {
    position: relative;
    display: inline-block;
    font-size: 1.1rem;
    line-height: 150%;
    color: #5D5D5D;
    font-weight: 500;
}
.functional-table dl dd .t3 span {
    position: relative;
    display: inline-block;
}
.functional-table dl dd .t3::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.3rem;
    background: #ACDBFA;
    bottom: 0.6rem;
}
.functional-table dl.box2 dd .t3::before {
    background: #DBDBDB;
}
.functional-table dl dd p {
    padding: 0.5rem 0;
}
.stage-functional2 {
    background: #F6F8FA;
}
.functional-info-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 100%;
    padding: 3rem 0 0 0;
}
.functional-info-list li {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    width: 33%;
    padding: 0 3rem 3rem 3rem;
    cursor: pointer;
}
.functional-info-list li .icon-img {
    position: relative;
    display: block;
    width: 6rem;
    height: 6rem;
    margin: 1rem auto;
    background: #fff;
    border-radius: 50%;
    box-shadow: 1rem 1rem 2rem 0 #D7E0E5;
}
.functional-info-list li:hover .icon-img,
.functional-info-list li.current .icon-img{
    background: #5696CB;
}
.functional-info-list li .icon-img::before {
    content: "";
    position: absolute;
    display: block;
    width: 80%;
    height: 80%;
    left: 10%;
    top:10%;
}
.functional-info-list li .icon-img::after {
    content: "";
    position: absolute;
    display: none;
    width: 80%;
    height: 80%;
    left: 10%;
    top:10%;
}
.functional-info-list li:hover .icon-img::before,
.functional-info-list li.current .icon-img::before{
    display: none;
}
.functional-info-list li:hover .icon-img::after,
.functional-info-list li.current .icon-img::after{
    display: block;
}
.functional-info-list li.item1 .icon-img::before {
    background: url(../images/func_icon1.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item2 .icon-img::before {
    background: url(../images/func_icon2.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item3 .icon-img::before {
    background: url(../images/func_icon3.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item4 .icon-img::before {
    background: url(../images/func_icon4.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item5 .icon-img::before {
    background: url(../images/func_icon5.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item1 .icon-img::after {
    background: url(../images/func_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item2 .icon-img::after {
    background: url(../images/func_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item3 .icon-img::after {
    background: url(../images/func_icon3_hover.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item4 .icon-img::after {
    background: url(../images/func_icon4_hover.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li.item5 .icon-img::after {
    background: url(../images/func_icon5_hover.svg) no-repeat center center;
    background-size: contain;
}
.functional-info-list li .func-title {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.2rem;
    line-height: 150%;
    padding: 0.3rem 0 0 0;
    color: #5696CB;
    font-weight: 500;
}
.functional-info-list li .func-text {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1rem;
    line-height: 150%;
    padding: 0.3rem 0 1rem 0;
    color: #5D5D5D;
    font-weight: 500;
}
.functional-info-list li .global-morebtn span{
    font-size: 1.2rem;
    line-height: 150%;
}
.functional-info-list li .global-morebtn::after{
    height: 2rem;
    width: 2rem;
}
@media screen and (max-width: 1200px) {
    .functional-feature {
        flex-direction: column;
    }
    .functional-feature .textbox {
        width: 100%;
        padding: 0 0 0 0;
    }
    .functional-feature .textbox .t1 {
        font-size: 3.33rem;
        padding: 0 0 2rem 0;
    }
    .functional-feature .textbox .t2 {
        font-size: 2.13rem;
        line-height: 150%;
        padding: 0 0 2rem 0;
    }
    .functional-feature .textbox .t2 p {
        padding: 0.5rem 0;
    }
    .functional-feature .imgbox {
        width: 100%;
    }
    .functional-container .main-text {
        padding: 5rem 0 5rem 0rem;
        font-size: 2.13rem;
        
    }
    .functional-table {
        flex-direction: column;
        width: 100%;
        padding: 0;
    }
    .functional-table .box1 {
        width: 100%;
        margin: 0 0 3rem 0;
    }
    .functional-table .box2 {
        width: 100%;
        margin: 0 0 3rem 0;
    }
    .functional-table dl {
        border-radius: 2rem;
    }
    .functional-table dl dt {
        font-size: 2.67rem;
        padding: 2rem;
    }
    .functional-table dl dd {
        height: 33rem;
        padding: 0 2rem;
    }
    .functional-table dl dd .t1 {
        font-size: 2.67rem;
    }
    .functional-table dl dd .t2 {
        font-size: 2.13rem;
        text-align: center;
    }
    .functional-table dl dd .t3 {
        font-size: 2.13rem;
        line-height: 150%;
    }
    .functional-table dl dd .t3::before {
        bottom: 1.2rem;
        height: 0.7rem;
    }
    .functional-table dl dd p {
        padding: 1rem 0;
    }
    .functional-info-list {
        flex-direction: column;
        padding: 3rem 0 0 0;
    }
    .functional-info-list li {
        width: 100%;
        padding: 0 5rem 5rem 5rem;
    }
    .functional-info-list li .icon-img {
        width: 13rem;
        height: 13rem;
        margin: 2rem auto;
        box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    }
    .functional-info-list li .func-title {
        font-size: 2.4rem;
        padding: 0.5rem 0 0 0;
    }
    .functional-info-list li .func-text {
        font-size: 2.13rem;
        padding: 1rem 0 1rem 0;
    }
    .functional-info-list li .global-morebtn span{
        font-size: 2.13rem;
        display: block;
    }
    .functional-info-list li .global-morebtn::after{
        height: 3rem;
        width: 3rem;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .functional-feature {
        flex-direction: column;
    }
    .functional-feature .textbox {
        width: 100%;
        padding: 0 0 0 0;
    }
    .functional-feature .textbox .t1 {
        font-size: 3.571vw;
        padding: 0 0 2rem 0;
    }
    .functional-feature .textbox .t2 {
        font-size: 2.28vw;
        line-height: 150%;
        padding: 0 0 2rem 0;
    }
    .functional-feature .textbox .t2 p {
        padding: 0.5rem 0;
    }
    .functional-feature .imgbox {
        width: 100%;
    }
    .functional-container .main-text {
        padding: 5vw 0 5vw 0rem;
        font-size: 2.28vw;
        
    }
    .functional-table {
        flex-direction: column;
        width: 100%;
        padding: 0;
    }
    .functional-table .box1 {
        width: 100%;
        margin: 0 0 3rem 0;
    }
    .functional-table .box2 {
        width: 100%;
        margin: 0 0 3rem 0;
    }
    .functional-table dl {
        border-radius: 2rem;
    }
    .functional-table dl dt {
        font-size: 2.67rem;
        padding: 2rem;
    }
    .functional-table dl dd {
        height: 33rem;
        padding: 0 2rem;
    }
    .functional-table dl dd .t1 {
        font-size: 2.67rem;
    }
    .functional-table dl dd .t2 {
        font-size: 2.13rem;
        text-align: center;
    }
    .functional-table dl dd .t3 {
        font-size: 2.13rem;
        line-height: 150%;
    }
    .functional-table dl dd .t3::before {
        bottom: 1.2rem;
        height: 0.7rem;
    }
    .functional-table dl dd p {
        padding: 1rem 0;
    }
    .functional-info-list {
        flex-direction: row;
        padding: 3rem 0 0 0;
    }
    .functional-info-list li {
        width: 50%;
        padding: 0 4vw 5vw 4vw;
    }
    .functional-info-list li .icon-img {
        width: 13rem;
        height: 13rem;
        margin: 2rem auto;
        box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    }
    .functional-info-list li .func-title {
        font-size: 2.571vw;
        padding: 0.5rem 0 0 0;
    }
    .functional-info-list li .func-text {
        font-size: 2.28vw;
        padding: 1rem 0 1rem 0;
    }
    .functional-info-list li .global-morebtn span{
        font-size: 2.28vw;
        display: block;
    }
    .functional-info-list li .global-morebtn::after{
        height: 3rem;
        width: 3rem;
    }
}
.booking-main-title .sub-title::before{
    display: none;
}
.booking-cotent {
    font-size: 1rem;
}
.booking-index-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0;
}
.booking-index-list li {
    position: relative;
    display: block;
    width: calc(90% / 2 - 1rem);
    cursor: pointer;
    margin: 0 0.5rem;
    box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    background: #fff;
}
.booking-index-list li:hover {
    background:#80b4e0;
}
.booking-index-list li .imgbox {
    position: relative;
    display: block;
    width: 100%;
    height: 11em;
    overflow: hidden;
}
.booking-index-list li .textbox {
    position: relative;
    display: block;
    background: url(../images/booking_index_icon_bg.png) no-repeat 0 0;
    background-size: 100% auto;
    margin-top:-2.2em;
    padding: 0.5em 0;
    font-size: 1em;
}
.booking-index-list li:hover .textbox {
    background: url(../images/booking_index_icon_bg_hover.png) no-repeat 0 0;
    background-size: 100% auto;
}
.booking-index-list li .textbox .icon {
    position: relative;
    display: block;
    width: 1.7em;
    height: 1.7em;
    margin: 0.5em auto;
}
.booking-index-list li.item1 .textbox .icon {
    background: url(../images/booking_index_icon1.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list li.item1:hover .textbox .icon {
    background: url(../images/booking_index_icon1_hover.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list li.item2 .textbox .icon {
    background: url(../images/booking_index_icon2.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list li.item2:hover .textbox .icon {
    background: url(../images/booking_index_icon2_hover.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list li .textbox .text1 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.4em;
    line-height: 150%;
}
.booking-index-list li:hover .textbox .text1 {
    color: #fff;
}
.booking-index-list li .textbox .text2 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1em;
    line-height: 180%;
    color: #5D5D5D;
}
.booking-index-list li:hover .textbox .text2 {
    color: #fff;
}
.booking-index-list li:hover .textbox .global-morebtn span {
    color: #fff;
}
.booking-index-list li:hover .textbox .global-morebtn::after {
    background:url(../images/icon_more_arrow_hover.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-note {
    position: relative;
    display: block;
    width: 100%;
    background: rgba(255,255,255,0.8);
    margin: 4em auto 2em auto;
    padding: 3em;
    text-align: center;
    line-height: 200%;
    border-bottom: 4px solid #5696CB;
}
.booking-index-list + .booking-index-note {
    width: 61em;
}
.booking-index-list2 + .booking-index-note {
    width: 61em;
}
.booking-index-note .blue-text {
    color: #5696CB;
}
.booking-index-note .small-text {
    font-size: 0.9em;
}
@media screen and (max-width: 1200px) {
    .stage-booking .stage-main-title .textbox {
        font-size: 1.5rem;
        line-height: 150%;
        width: 34em;
        max-width: 100%;
        margin: 3em auto 1em auto;
    }
    .booking-cotent {
        font-size: 1rem;
    }
    .booking-index-list {
        max-width: 92%;
        margin: 0 auto;
    }
    .booking-index-list li {
    }
    .booking-index-list li .textbox .global-morebtn {
        margin:1em 0 0 0;
    }
    .booking-index-list li .textbox .global-morebtn span {
        display: block;
        font-size: 0.75em;
        line-height: 100%;
    }
    .booking-index-list li .textbox .global-morebtn::after {
        width: 1.67em;
        height: 1.67em;
    }
}
@media screen and (max-width: 600px) {
     .stage-booking .stage-main-title .textbox {
        text-align: left;
        font-size: 2rem;
        line-height: 150%;
    }
    .booking-cotent {
        font-size: 2rem;
    }
    .article-content table{width: 100% !important;}
    .booking-index-list {
        max-width: 100%;
    }
    .booking-index-list li {
        width: 100%;
        margin: 1em 0em;
    }
    .booking-index-note {
        width: 100%;
        font-size: 0.9em;
    }
    .booking-index-list + .booking-index-note {
        width: 100%;
    }
    .booking-index-list2 + .booking-index-note {
        width: 100%;
    }
}
.booking-form-cotent {
    font-size: 1rem;
}

.booking-form-container {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    padding: 4em;
    font-size: 1em;
    line-height: 150%;
}
.booking-form-container .intro-text {
    position: relative;
    display: block;
    font-size: 1em;
    border-bottom: 1px solid #EAEAEA;
    padding: 0 0 4em 0;
}

.booking-form-container .intro-text .sub-title span{
    font-size: 1.56em;
    line-height: 100%;
}
.booking-form-container .intro-text p{
    font-size: 1em;
    line-height: 150%;
}
.booking-form-container .intro-text p .red-text, .popup-content .textbox .red-text {
    color: #EB6877;
    text-decoration: underline;
}
.booking-form-container .intro-text .blue-text {
    color: #5696cb;
    display: block;
    font-weight: 500;
}
.booking-form-container .intro-text p .under-line-text {
    text-decoration: underline;
}
.booking-form-list {
    position: relative;
    display: block;
    width: 100%;
    padding: 2em 0 0 0;
}
.booking-form-list dl {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0 1.5em 0;
}
.booking-form-list dl dt{
    position: relative;
    display: block;
    width: 100%;
    font-size: 1em;
    line-height: 100%;
    color: #376D99;
    padding: 0 0 0.8em 0;
}
.booking-form-list dl dt p {
    margin-top: 0.1875em;
    line-height: 160%;
}
.booking-form-list dl dt .red-text {
    color: #EB6877;
}
.booking-form-list dl dt .gray-text {
    color: #A4A4A4;
}
.booking-form-list dl dd{
    position: relative;
    display: block;
    width: 100%;
    font-size: 1em;
    line-height: 100%;
    margin: 0 0 1em 0;
}
.booking-form-list dl dd .red-text {
    color: #EB6877;
}
.booking-form-list input[type="text"],
.booking-form-list input[type="password"],
.booking-form-list input[type="number"],
.booking-form-list input[type="date"]{
    position: relative;
    display: block;
    width: 100%;
    font-size: 0.9em;
    line-height: 100%;
    padding: 0.725em 0.8em;
    max-width: 650px;
    border: 1px solid #A4A4A4;
    border-radius: 0.5em;
}
/* .booking-form-list input[type="password"] + .password-eye { */
.booking-form-list .password-eye {
    content: "";
    position: absolute;
    display: block;
    width: 1.5em;
    height: 1.5em;
/*    background: url(../images/password_icon.svg) no-repeat center center; */
    background: url(../images/password_eye-slash.svg) no-repeat center center;
    right: 0.3em;
/*    top: 0.3em; */
    top: 0.5em;
    cursor: pointer;
}
.booking-form-list input[type="radio"],
.booking-form-list input[type="checkbox"]{
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.booking-form-list input[type="radio"] + label,
.booking-form-list input[type="checkbox"] + label{
    position: relative;
    display: block;
    font-size: 1em;
    cursor: pointer;
    margin: 0 2em 0 0;
}
.booking-form-list input[type="radio"] + label::before,
.booking-form-list input[type="checkbox"] + label::before{
    content: "";
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: #fff;
    border: 1px solid #A4A4A4;
    vertical-align: top;
}
.booking-form-list input[type="radio"] + label::after,
.booking-form-list input[type="checkbox"] + label::after{
    content: "";
    position: absolute;
    display: block;
    width: 1.5em;
    height: 1.5em;
    top:0;
    left: 0;
    
}
.booking-form-list input[type="radio"]:checked + label::after,
.booking-form-list input[type="checkbox"]:checked + label::after{
    background: url(../images/check_icon.svg) no-repeat center center;
    background-size: contain;
}
.booking-form-list input[type="radio"] + label span,
.booking-form-list input[type="checkbox"] + label span{
    position: relative;
    display: inline-block;
    font-size: 1em;
    vertical-align: middle;
    padding: 0.3em 0 0 0.5em;
    vertical-align: top;
}
.booking-form-list .type2{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 650px;
}
.booking-form-list .type2 input {
    display: inline-block;
    margin: 0 0.5em 0 0;
    width: auto;
    flex-grow:1;
}
.booking-form-list .note-textbox {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    color: #376d99;
    padding: 0 0.5em 0 0;
    margin-top: 0.625em;
}
.booking-form-list .form-codebox {
    position: relative;
    display: inline-block;
    width: 10em;
    max-width: 100px;
}

.booking-form-list textarea {
    position: relative;
    display: block;
    width: 100%;
    height: 12em;
    border: 1px solid #A4A4A4;
    border-radius: 0.5em;
}
.booking-form-list .textarea-type2 {
    max-width: 650px;
}
.booking-form-list select {
    position: relative;
    display: block;
    width: 100%;
    font-size: 0.9em;
    line-height: 100%;
    padding: 0.5em 0.8em;
    max-width: 650px;
    border: 1px solid #A4A4A4;
    border-radius: 0.5em;
}
.booking-form-list dl dd .sub-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
}
.booking-form-list dl dd .sub-list li {
    position: relative;
    display: block;
    margin: 0 2em 1em 0;
}
.booking-form-list dl dd .sub-list2 {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 650px;
}

.booking-form-list dl dd .sub-list2 li {
    position: relative;
    display: flex;
    margin: 0 0 1em 0;
    width: 50%;
}
.booking-form-list dl dd .sub-list2 li:nth-child(1) {
    margin-bottom: 0.625em;
}

.booking-form-cotent .booking-form-list dl dd .sub-list2,.password-form .booking-form-list dl dd .sub-list2{flex-direction: column;align-items: flex-start;}
.booking-form-cotent .booking-form-list dl dd .sub-list2 li,.password-form .booking-form-list dl dd .sub-list2 li{flex-direction: column;}

.booking-form-list dl dd .sub-list2 li input {
    width: auto;
    flex-grow:1;
}
.booking-form-list dl dd .sub-list2 li
.booking-form-list .form-email1 li:nth-child(1),
.booking-form-list .form-email2 li:nth-child(1){
    flex-grow: 1;
    max-width: 650px;
}
.booking-form-list .form-email2 li label {
    margin: 0;
}
.booking-form-list .date-btn {
    position: absolute;
    display: block;
    width: 100%;
    font-size: 0.9em;
    line-height: 100%;
    padding: 0.5em 0.8em;
    height: 2.4em;
    max-width: 650px;
    cursor: pointer;
    color: #222;
    top:0;
    pointer-events: none;
}
.booking-form-list .date-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 2em;
    height: 2em;
    background: url(../images/date_icon.svg) no-repeat center center;
    background-size: contain;
    right: 0.5em;
    top:0.35em;
}
.booking-form-list dl dd.booking-select1 .sub-list {
    max-width: 650px;
}
.booking-form-list dl dd.booking-select1 li {
    width: calc(50% - 0.5em);
    margin: 0 0 1em 0;
}
.booking-form-list dl dd.booking-select1 li:first-child {
    margin-right: 1em;
}
.booking-form-list dl dd .other-symptom li:first-child {
    margin: 0 1em 1em 0;
}
.booking-form-list dl dd .other-symptom li:nth-child(2) {
    flex-grow: 1;
    margin: 0 0 1em 0;
}
.booking-form-list dl dd .other-symptom li:nth-child(2) input[type="text"] {
    max-width: none;
}
.booking-form-list .privacy-check {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 1em;
    padding: 2em 0 4em 0;
}
.booking-form-list .privacy-check input[type="checkbox"] + label {
    margin: 0 1em 0 0;
}
.booking-form-list .privacy-check a {
    color: #5696CB;
    text-decoration: underline;
}
.booking-form-list .send-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1.2em;
    line-height: 100%;
    margin: 0 auto;
    text-align: center;
    background: #376D99;
    color: #fff;
    cursor: pointer;
    padding: 1em 0;
    border-radius: 3em;
}
.booking-form-list .send-btn:hover {
    background:#5696CB;
}
.booking-form-list .notebox {
    position: relative;
    display: block;
    margin: 0 0 2em 0;
}
.booking-form-list .notebox .note-title {
    position: relative;
    display: block;
}
.booking-form-list .notebox .note-title::before,
.booking-form-list .notebox .note-title::after{
    content: "";
    position: relative;
    display: inline-block;
    width: 2em;
    height: 1px;
    background: #333;
    vertical-align: middle;
}
.booking-form-list .notebox .note-title span {
    position: relative;
    display: inline-block;
    font-size: 1em;
    vertical-align: middle;
    margin: 0 0.5em;
}
.booking-form-list .notebox .note-list {
    list-style: disc;
    padding-top: 0.5em;
}
.booking-form-list .notebox.note2 {
    background: url(../images/note_bg.jpg) no-repeat center center;
    background-size: cover;
    padding: 1em;
}
.booking-form-list .notebox.note2 .note-title{
    text-align: center;
}
.booking-form-list .notebox.note2 .note-list {
    width: 32em;
    margin: 0 auto;
}
@media screen and (max-width: 1200px) {
    .booking-form-cotent {
        font-size: 1.5rem;
    }
}
@media screen and (max-width: 600px) {
    .booking-form-list .notebox .note-title{
        text-align: center;
    }
    .booking-form-list .notebox.note2 {
        background: none;
        border-bottom: 1px solid #EAEAEA;
    }
    .booking-form-list .notebox.note2 .note-list {
        width: 100%;
    }
    
    .booking-form-cotent {
        font-size: 1.7rem;
    }
    .booking-form-container {
        padding: 2em 0;
        background: none;
    }
    .booking-form-list input[type="text"],
    .booking-form-list input[type="password"],
    .booking-form-list input[type="mumber"],
    .booking-form-list input[type="date"]{
        padding: 1em 0.5em;
    }
    .booking-form-list input[type="date"]{
        height: 3.5em;
        line-height: 1em;
        -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      text-align: left;
      color: #000;
      background:#fff;
    }
    ::-webkit-calendar-picker-indicator {
       opacity:0;
    }

    .booking-form-list input[type="password"] + .password-eye {
        top:0.7em;
        right: 0.5em;
    }
    .booking-form-list select {
        padding: 1em 0.5em;
        height: 3.5em;
        line-height: 1em;
        -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
    }
    .booking-form-list option{
        -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
    }
    .booking-form-list .date-btn::before {
        width: 2.5em;
        height: 2.5em;
        top:0.3em;
    }
    .booking-form-list dl dd .sub-list li {
        margin: 0 1em 1em 0;
    }
    .booking-form-list dl dd .sub-list2 li  {
        width: auto;
    }
    .booking-form-list dl dd .sub-list2 li input{
        width: 11em;
        flex-grow: 0;
    }
}
.information-confirm-cotent .information-icon {
    position: relative;
    display: block;
    width: 6em;
    margin: 0 auto;
}
.information-confirm-cotent .information-title {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.3em;
    line-height: 100%;
    color: #80B4E0;
}
.information-confirm-cotent .information-sub-title {
    position: relative;
    display: block;
    text-align: left;
    font-size: 1.1em;
    line-height: 100%;
    color: #fff;
    background: #80B4E0;
    padding: 0.8em;
    margin-bottom: 1em;
    text-align: center;
}
.information-confirm-list dl {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0.8em 0;
    margin: 0;
    border-bottom: 1px solid #EAEAEA;
}
.information-confirm-list dl dt {
    margin: 0;
    padding: 0 0.8em;
    width: 15em;
    line-height: 150%;
}
.information-confirm-list dl dd {
    margin: 0;
    padding: 0 0.8em;
    flex-grow: 1;
    line-height: 150%;
}
.information-confirm-list .edit-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1.2em;
    line-height: 100%;
    margin: 0 auto;
    text-align: center;
    background: #fff;
    color: #376D99;
    cursor: pointer;
    padding: 1em 0;
    border-radius: 3em;
    border:1px solid #376D99;
}
.information-confirm-list .edit-btn:hover {
    background:#5696CB;
    color: #fff;
}
.information-confirm-list .btnbox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.information-confirm-list .btnbox .send-btn,
.information-confirm-list .btnbox .edit-btn{
    margin: 0 1em;
}
.robot-check {
    position: relative;
    display: block;
/*    margin: 2em 0; */
    margin-top: 2em;
/*    min-height: 6em; */
    min-height: 4em;
    text-align: center;
    font-size: 0.875em;
    white-space: nowrap;
}
@media screen and (max-width: 600px) {
    .information-confirm-list dl dt {
        width: 8em;
    }
    .information-confirm-list .btnbox {
        flex-direction: column;
    }
    .information-confirm-list .btnbox .send-btn,
    .information-confirm-list .btnbox .edit-btn{
        margin: 1em 0;
    }
}
.booking-index-list-employee {
    margin-top: -1.5em;
}
.booking-index-list-employee .item{
    display: flex;
    height: 13em;
    width: 30em;
    position: relative;
    margin-top: 1.5em;
}
.booking-index-list-employee .item a{position: absolute;width: 100%;height: 100%;left: 0;top: 0;z-index: 2;display: flex;}
.booking-index-list-employee .item .imgbox {
    height: 100%;
}
.booking-index-list-employee .item .imgbox {
    width: 40%;
}
.booking-index-list-employee .item .textbox {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin: 0;
    width: 60%;
    background: none;
    padding: 0 6em 0 1em;
}
.booking-index-list-employee .item .textbox .text1 {
    font-weight: 500;
}
.booking-index-list-employee .item .textbox .text2 {
    text-align: left;
}
.booking-index-list-employee .item .textbox .text3 {
    color: #EB6877;
    text-align: left;
    white-space: nowrap;
    position: relative;
    display: block;
}
.booking-index-list-employee .item:hover .textbox .text3 {
    color: #fff;
}
.booking-index-list-employee .item .textbox::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/booking_index_icon_bg2.png) no-repeat 0 0;
    background-size: auto 100%;
    left: -2em;
}
.booking-index-list-employee .item:hover .textbox::before{
    background: url(../images/booking_index_icon_bg2_hover.png) no-repeat 0 0;
    background-size: auto 100%;
}
.booking-index-list-employee .item .morebtn {
    position: absolute;
    display: block;
    width: 4em;
    height: 4em;
    right: 1em;
    top:calc(50% - 2em);
    background: url(../images/arrow_icon_go.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list-employee .item:hover .morebtn {
    background: url(../images/arrow_icon_go_hover.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list2 {
    position: relative;
    display: block;
    width: 89%;
    margin: 1.5vw auto 0 auto;
}
.booking-index-list2 .item {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 2rem 2rem 4rem 0 #D7E0E5;
    background: #fff;
    padding: 1vw 0;
    cursor: pointer;
}
.booking-index-list2 .item .imgbox {
    position: relative;
    display: block;
    width: 2.5vw;
    height: 2.5vw;
    margin: 0 0.5vw 0 0;
}
.booking-index-list2 .item.item-qa .imgbox {
    background: url(../images/icon1_qa.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list2 .item.item-qa2 .imgbox {
    background: url(../images/icon_i_mark.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list2 .item .textbox {
    position: relative;
    display: block;
    font-size: 1.4vw;
    font-weight: 500;
    line-height: 180%;
}
.booking-index-list2 .item:hover {
    background:#80b4e0;
}
.booking-index-list2 .item:hover .textbox {
    color: #fff;
}
.booking-index-list2 .item.item-qa:hover .imgbox {
    background: url(../images/icon1_qa_hover.svg) no-repeat center center;
    background-size: contain;
}
.booking-index-list2 .item.item-qa2:hover .imgbox {
    background: url(../images/icon_i_mark_hover.svg) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1200px) {
    .booking-index-list-employee {
        font-size: 1.5rem;
    }
    .booking-index-list-employee .item{
        width: 41em;
        height: 15em;
        margin: 1em 0;
    }
    .booking-index-list2 {
        width: 80%;
    }
    .booking-index-list2 .item {
        padding: 2vw;
    }
    .booking-index-list2 .item .textbox{
        font-size: 2.4vw;
    }
    .booking-index-list2 .item .imgbox {
        width: 4vw;
        height: 4vw;
    }
}
@media screen and (max-width: 600px) {
    .booking-index-list-employee {
        font-size: 1.4rem;
    }
    .booking-index-list-employee .item{
        height: 12em;
    }
    .booking-index-list2 {
        width: 100%;
    }
    .booking-index-list2 .item {
        padding: 3vw;
    }
    .booking-index-list2 .item .textbox{
        font-size: 3.8vw;
    }
    .booking-index-list2 .item .imgbox {
        width: 6vw;
        height: 6vw;
    }
}
.pwd-login-box {
    position: relative;
    display: flex;
    width: 100%;
    height: 37em;
    box-shadow: 1vw 1vw 3vw rgba(215, 224, 229, 0.5);
}
.pwd-login-box .pwd-login-bg {
    position: relative;
    display: block;
    width: 35%;
    height: 100%;
    background: url(../images/password_bg.jpg) no-repeat center center;
    background-size: cover;
}
.pwd-login-box .booking-form-container {
    width: 65%;
}
.pwd-login-box .booking-form-container .intro-text {
    border-bottom: 0px;
    padding-bottom: 2em;
}
.pwd-login-box .booking-form-container .error-msg{
    opacity: 0;
    pointer-events: none;
    color: #EB6877;
    padding: 0.5em 0 0 0;
    position: relative;
    display: block;
}
.pwd-login-box .booking-form-container .error-show .error-msg{
    opacity: 1;
}
.pwd-login-box .booking-form-container .error-show input {
    border: 1px solid #EB6877;
}

@media screen and (max-width: 600px) {
    .pwd-login-box {
        height: auto;
        flex-direction: column;
        box-shadow:none;
    }
    .pwd-login-box .pwd-login-bg {
        width: 100%;
        height: 10em;
        background: url(../images/password_bg_m.jpg) no-repeat center center;
        background-size: cover;
    }
    .pwd-login-box .booking-form-container {
        width: 100%;
    }
}
.booking-form-info-cotent .intro-text .sub-title::before{
    display: none;
}
.booking-form-info-cotent .intro-text {
    padding-bottom: 2em;
}
.check-booking-btn {
    position: relative;
    display: block;
    width: 20em;
    margin: -3em auto 3em auto;
    background: #376D99;
    color: #fff;
    text-align: center;
    font-size: 0.9em;
    padding: 0.7em 1em 0.7em 0;
    border-radius: 2em;
    box-shadow: 0em 0.2em 0.2em rgba(0,0,0,0.3);
    cursor: pointer;
}
.check-booking-btn:hover {
    background: #80B4E0;
}
.check-booking-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 1em;
    height: 1em;
    border-top: 0.2em solid #fff;
    border-right: 0.2em solid #fff;
    right: 1em;
    top:1em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.booking-form-cotent .sub-list-title {
    position: relative;
    display: block;
    color: #80B4E0;
    padding: 0 0 0 1.2em;
    margin: 0 0 0.5em 0;
}
.booking-form-cotent .sub-list-title::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.4em 0 0.4em 0.8em;
    border-color: transparent transparent transparent #80b3e0;
    left: 0;
    top:0.5em;
}
.booking-form-cotent .sub-list3 {
    position: relative;
    display: block;
}
.booking-form-cotent .sub-list3 li {
    position: relative;
    display: block;
    margin-bottom: 2em;
}
.booking-form-cotent .sub-list3 li .optionbox {
    position: relative;
    display: block;
    margin-bottom: 1em;
}
.booking-form-cotent .booking-form-list .sub-list3 li input[type="radio"] + label::before {
    border-radius: 50%;
    vertical-align: middle;
}
.booking-form-cotent .booking-form-list .sub-list3 li input[type="radio"] + label{
    opacity: 0.3;
}
.booking-form-cotent .booking-form-list .sub-list3 li input[type="radio"]:checked + label{
    opacity: 1;
}
.booking-form-cotent .booking-form-list .sub-list3 li input[type="radio"] + label span {
    max-width: calc(100% - 2em);
    vertical-align: middle;
    padding: 0 0 0 0.5em;
}
.booking-form-cotent .booking-form-list .note-text {
    font-size: 1em;
    padding: 1em 0 0 0;
}
.booking-form-cotent .input-box {
    position: relative;
    display: block;
    width: 100%;
}
.popup-check-booking .check-booking-title {
    width: 70%;
    position: absolute;
    background: #80B4E0;
    color: #FFFFFF;
    text-align: center;
    font-size: 1.5em;
    line-height: 100%;
    padding: 1em 0;
}
.popup-check-booking .popup-content {
    width: 80%;
    overflow-y: auto;
}
.popup-check-booking-list {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1vw;
}
.popup-check-booking-list li{
    position: relative;
    display: block;
    width: 100%;
}
/* .popup-check-booking-list li .check-booking-title {
    position: relative;
    display: block;
    background: #80B4E0;
    color: #fff;
    text-align: center;
    font-size: 1.5em;
    line-height: 100%;
    padding: 1em 0;
} */
.popup-check-booking-list li dl {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    border-bottom: 1px solid #EAEAEA;
    padding: 1.5em 0;
}
.popup-check-booking-list li dl dt {
    position: relative;
    display: block;
    color: #376D99;
    width: 12em;
    font-size: 1.2em;
    line-height: 150%;
}
.popup-check-booking-list li dl dd {
    position: relative;
    display: block;
    flex-grow: 1;
    font-size: 1.2em;
    line-height: 150%;
}

@media screen and (max-width: 1200px) {
    .popup-check-booking-list {
        font-size: 1.5vw;
    }
}
@media screen and (max-width:600px) {
    .popup-check-booking .popup-content {
        width: 100%;
    }
    .popup-check-booking-list {
        font-size: 3vw;
    }
    .popup-check-booking-list li dl dt {
        width: 8em;
        padding: 0 1em;
    }
    .popup-check-booking .popup-container {
        padding-top: 0;
    }
    .popup-check-booking .popup-container .close-btn {
        top:1.3em;
    }
    .popup-check-booking .popup-container .close-btn::before,
    .popup-check-booking .popup-container .close-btn::after{
        background: #fff;
    }
}
.booking-form-cotent .line-note {
    position: relative;
    display: block;
    text-align: center;
    padding: 2em 0;
}
.booking-form-cotent .line-note a {
    color: #84BCFF;
    text-decoration: underline;
}
.popup-error .popup-content, .popup-sended .popup-content {
    font-size: 1vw;
}
/* .popup-error .btn { */
.popup-error .btn, .popup-confirm .btn, .popup-sended .btn {
    padding: 1em;
    border-radius: 2em;
    margin: 2em 0 0 0;
}
.popup-confirm #frm_Appointment_PROCOPTION-Y, .popup-confirm #frm_Appointment_PRIVACY-Y, .popup-confirm #frm_Employee_PRIVACY-Y, .popup-confirm #frm_Personal_PRIVACY-Y, .popup-confirm #frm_Inquiry_PRIVACY-Y {
    margin-right: 1em;
}
.popup-confirm .btn-list .btn, .popup-confirm .btn-list .btn_PROCITEM, .popup-confirm .btn-list .btn_PRIVACY {
    font-size: 1.75em;
}




.wrap a{z-index: 1;}
.news-slide{vertical-align: middle;display: flex;justify-content: flex-start;align-items: center;}
.popup-env-img-list{overflow: hidden;}
.team-info-list{justify-content: flex-start;}


.article-content {
    line-height: 2em;
}

.article-content.fsize2{
    font-size: 20px;
}
.article-content.fsize3{
    font-size: 24px;
}

.article-content p {
    font-size: inherit !important;
}
.article-content span {
    font-size: inherit !important;
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .article-content.fsize2{
        font-size: 3vw;
    }
    .article-content.fsize3{
        font-size: 4vw;
    }
}
@media screen and (max-width: 599px){
    .article-content.fsize2{
        font-size: 4vw;
    }
    .article-content.fsize3{
        font-size: 5.6vw;
    }
}
@media screen and (max-width: 1200px) {
    .breadcrumb li{margin-bottom: 1em;}
    .stage-newsline .newsline-box li.newsline-title{display: flex;width: 15vw;}
    .stage-newsline .newsline-box li.newsline-list{
        display: flex;
        width: calc(100% - 15vw)
    }
    .stage-newsline .newsline-box li.newsline-list a{
        position: relative;
        display: inline-block;
        max-width: 100%;
        border-left: 1px solid #fff;
    }
    .stage-newsline .newsline-box .newsline-date{border-left: none;}
    .stage-newsline .newsline-box .newsline-text{    padding: 0 0vw 0 4.3vw;display: block;}
}
@media screen and (max-width: 800px) {
    .global-morebtn span{display: none;}
    .global-morebtn::after{width:8.5vw;height: 8.5vw; }
    .about-service-info-container{
        margin-top: .5em;
    }
    .achievement-list li{
        height: 42.16vw;
    }
    .about-service-info-container .textbox dl dt span{
        line-height: 1.25em;
    }
    .feature-textbox .textbox .dot-box{top: 100%;}
}


.stage-container-weekly {
    background-image: none;
}
.weekly-menu-container {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 1.2vw 0;
    z-index: 2;
}
.weekly-menu-container.expand .close-btn{cursor: pointer;}
.weekly-main-menu-box {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.weekly-main-menu-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(100% - 15vw);
}
.weekly-main-menu-list li {
    display: none;
    width: calc(100% / 5);
    position: initial;
}
.weekly-main-menu-list li:nth-child(1),
.weekly-main-menu-list li:nth-child(2),
.weekly-main-menu-list li:nth-child(3),
.weekly-main-menu-list li:nth-child(4),
.weekly-main-menu-list li:nth-child(5){
    display: block;
}
.weekly-main-menu-list li:nth-child(1) {
    order: 5;
}
.weekly-main-menu-list li:nth-child(2) {
    order: 1;
}
.weekly-main-menu-list li:nth-child(3) {
    order: 2;
}
.weekly-main-menu-list li:nth-child(4) {
    order: 3;
}
.weekly-main-menu-list li:nth-child(5) {
    order: 4;
}
.weekly-main-menu-list li .main-list-btn {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #376D99;
    cursor: pointer;
    text-align: center;
    border-left: 1px solid #376D99;
    font-weight: 500;
}
.weekly-main-menu-list li .main-list-btn:hover {
    color: #80B4E0;
}
.weekly-main-menu-list li.expand .main-list-btn{
    color: #80B4E0;
}
.weekly-main-menu-list li.expand .main-list-btn::before{
    content: "";
    position: absolute;
    width: 100%; 
    height: 3vw; 
    left: 0;top: 100%;
    z-index: 2;
}
.weekly-menu-container.expand .weekly-main-menu-list li.expand .main-list-btn::before{content: none;}
.weekly-main-menu-list li.expand .main-list-btn::after{
    content: "";
    position: absolute;
    width: 0; 
    height: 0; 
    border-left: 0.4vw solid transparent;
    border-right: 0.4vw solid transparent;
    border-top: 0.5vw solid #80B4E0;
    left: calc(50% - 0.25vw);
    bottom: -1vw;
}
.weekly-main-menu-list li.main-list-more-btn::after {
    content: "";
    position: absolute;
    right: 2vw;
    top:0.2vw;
    height: 0.4vw;
    width: 0.4vw;
    border-right: 0.2vw solid #376D99;
    border-bottom:0.2vw solid #376D99;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.weekly-main-menu-list li.main-list-more-btn:hover::after {
    border-right: 0.2vw solid #80B4E0;
    border-bottom:0.2vw solid #80B4E0;
}
.weekly-sub-menu-list {
    position: absolute;
    display: none;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list{
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content:flex-start;
    align-items: flex-start;
    align-content: flex-start;
    left: -1px;
    top:2.3vw;
    width: 69vw;
    border: 1px solid #376D99;
    background: rgba(255,255,255,0.9);
    flex-wrap: wrap;
    height:19vw;
    padding: 0.5vw 0;
    overflow: hidden;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.5vw;
    background: #376D99;
    left: 0;
    bottom: 0;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #376D99;
    cursor: pointer;
    text-align: center;
    font-weight: 500;
    width: 25%;
    margin: 0.5vw 0;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(5n+1)::before {
    content: "";
    position: absolute;
    display: block;
    right: 0;
    top:0;
    width: 1px;
    height: 16vw;
    border-right: 1px solid #376D99;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(16)::before {
    display: none;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd span {
    position: relative;
    display: block;
    width: 90%;
    padding: 0.7vw 0;
    margin: 0 auto;
    color: #376D99;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd span:hover {
    background: #80B4E0;
    color: #fff;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd.current span {
    background: #80B4E0;
    color: #fff;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd span::after {
    content: "+";
    position: absolute;
    display: block;
    right: 1vw;
    top:0.5vw;
}
.weekly-main-menu-list li.expand .weekly-sub-menu-list dd.current span::after{
    content: "-";
}
.weekly-sreach-box {
    position: relative;
    display: block;
    width: 15vw;
}
.weekly-sreach-box::after {
    content: "";
    position: absolute;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
    background: url(../images/icon_sreach2.svg) no-repeat center center;
    background-size: contain;
    right: 0.5vw;
    top:0.4vw;
}
.weekly-sreach-box input {
    position: relative;
    display: block;
    width: 100%;
    border:1px solid #376D99;
    border-radius: 0.7vw;
    font-size: 1vw;
    line-height: 100%;
    padding: 0.5vw 3vw 0.5vw 0.5vw;
    color: #376D99;
}
@media screen and (min-width: 1200px) {
    .weekly-menu-container.expand {
        position: fixed;
        margin: 0;
        top:5.2vw;
        left: 0;
        background: rgba(255,255,255,0.9);
    }
    .weekly-menu-container.expand::before {
        content: "";
        position: absolute;
        display: block;
        width: 20%;
        height: 100%;
        right: 0;
        top:0;
        background: url(../images/deco.png) no-repeat right top;
        background-size: contain;
        pointer-events: none;
    }
    .weekly-menu-container.expand::after {
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 0.5vw;
        background: #376D99;
        left: 0;
        bottom: 0;
    }
    .weekly-menu-container.expand .weekly-main-menu-box {
        justify-content: center;
        align-items: center;
        width: 68%;
        margin: 0 auto;
        padding: 1vw 0 1.8vw 0;
    }
    .weekly-menu-container.expand .weekly-main-menu-list {
        justify-content: center;
        align-items: center;
        width: 100%;
        flex-wrap: wrap;
    }
    
    .weekly-menu-container.expand .weekly-main-menu-list li {
        display: block;
        width: calc(100% / 5);
    }
    .weekly-menu-container.expand .weekly-main-menu-list li:nth-child(1) {
        display: none;
    }
    .weekly-menu-container.expand .weekly-sreach-box {
        display: none;
    }
    .weekly-menu-container.expand .weekly-main-menu-list li .main-list-btn {
        border: 1px solid #376D99;
        margin: 0.3vw;
        padding: 0.5vw 0;
        border-radius: 0.2vw;
    }
    .weekly-menu-container.expand .weekly-main-menu-list li.expand .main-list-btn::after{
        display: none;
    }
    .weekly-menu-container.expand .close-btn {
        position: absolute;
        display: block;
        width: 2vw;
        height: 2vw;
        right: 0.5vw;
        top:0.5vw;
    }
    .weekly-menu-container.expand .close-btn::before {
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 0.2vw;
        top:calc(50% - 0.1vw);
        left: 0;
        background: #376D99;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .weekly-menu-container.expand .close-btn::after {
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 0.2vw;
        top:calc(50% - 0.1vw);
        left: 0;
        background: #376D99;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .weekly-menu-container.expand .weekly-main-menu-list li.expand:before{
        content: "";
        left: calc(50% - 50vw);
        top:calc(6.5vw + 2.6vw * 2 + 0vw);
        height: 2.6vw;
        position: fixed;
        width: 100vw;
        border: 0px;
        padding: 0.5vw 15vw;
        z-index: 2;
    }
    .weekly-menu-container.expand .weekly-main-menu-list li.expand .weekly-sub-menu-list{
        left: calc(50% - 50vw);
        top:calc(6.5vw + 2.6vw * 2 + 1vw + 1.6vw);
        position: fixed;
        width: 100vw;
        border: 0px;
        padding: 0.5vw 15vw;
        z-index: 2;
    }
    .weekly-menu-container.expand .weekly-main-menu-list li.expand .weekly-sub-menu-list::before {
        content: "";
        position: absolute;
        display: block;
        width: 69vw;
        height: 1px;
        border-top:1px solid #376D99;
        top:0;
        left: 15vw;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(5n+1)::before {
        content: "";
        position: absolute;
        display: block;
        right: 0;
        top:0;
        width: 1px;
        height: 16vw;
        border-right: 1px solid #376D99;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(16)::before {
        display: none;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span {
        position: relative;
        display: block;
        width: 90%;
        padding: 0.7vw 0;
        margin: 0 auto;
        color: #376D99;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span:hover {
        background: #80B4E0;
        color: #fff;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span::after {
        content: "+";
        position: absolute;
        display: block;
        right: 1vw;
        top:0.5vw;
    }
}
@media screen and (max-width: 1200px) {
    .weekly-menu-container {
        margin: -3vw 0 5vw 0;
        z-index: 3;
    }
    .weekly-main-menu-box {
        display: block;
        width: 100%;
    }
    .weekly-main-menu-list {
        position: fixed;
        flex-direction: column;
        width: 100%;
        height: calc(100dvh - 64px - 10vw);
        top:-100%;
        left: 0;
        z-index: 3;
        background: rgba(255,255,255,0.9);
        overflow-y: scroll;
        -webkit-transition: top 0.5s ease;
        transition: top 0.5s ease;
    }
    .weekly-menu-container.expand .close-btn {
        position: fixed;
        display: block;
        width: 100vw;
        height: 10vw;
        right: auto;
        top:calc(100dvh - 10vw);
        bottom: auto;
        left: 0;
        z-index: 5;
        background: #376D99;
    }
    .weekly-menu-container.expand .close-btn::before {
        content: "";
        position: absolute;
        display: block;
        width: 5vw;
        height: 2px;
        top:calc(50% - 0.1vw);
        left: calc(50% - 2.5vw);
        background: #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .weekly-menu-container.expand .close-btn::after {
        content: "";
        position: absolute;
        display: block;
        width: 5vw;
        height: 2px;
        top:calc(50% - 0.1vw);
        left: calc(50% - 2.5vw);
        background: #fff;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .weekly-menu-container.expand .weekly-main-menu-list {
        top:64px;
    }
    .weekly-main-menu-list li {
        position: relative;
        display: block;
        width: 100%;
    }
    .weekly-main-menu-list li:nth-child(1) {
        display: none;
    }
    .weekly-main-menu-list li .main-list-btn {
        font-size: 5.3vw;
        border-left: 0px;
        border-bottom: 1px solid #376D99;
        padding: 5vw 0;
    }
    .weekly-main-menu-list li::after {
        content: "";
        position: absolute;
        right: 5vw;
        top:6vw;
        height: 2vw;
        width: 2vw;
        border-right: 0.8vw solid #376D99;
        border-bottom:0.8vw solid #376D99;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .weekly-main-menu-list li.expand {
        background: #80B4E0;
    }
    
    .weekly-main-menu-list li.expand::after {
        border-right: 0.8vw solid #fff;
        border-bottom:0.8vw solid #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }
    .weekly-main-menu-list li.expand .main-list-btn {
        color: #fff;
    }
    .weekly-main-menu-list li.expand .main-list-btn::after{
        display: none;
    }
    .weekly-main-menu-list li.main-list-more-btn::after {
        display: none;
    }
    .weekly-main-menu-list li.main-list-more-btn:hover::after {
        border-right: 0.2vw solid #80B4E0;
        border-bottom:0.2vw solid #80B4E0;
    }
    .weekly-sub-menu-list {
        position: relative;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list{
        position: relative;
        flex-direction: row;
        margin: 0;
        left: auto;
        top:auto;
        width: 100%;
        border: 0px;
        height:auto;
        padding: 3vw 0;
        overflow: visible;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list::after {
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list::before {
        content: "";
        position: absolute;
        width: 1px;
        height: 100%;
        left: 50%;
        background: #376D99;
        top:0;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd {
        font-size: 4.2vw;
        width: 50%;
        margin: 1vw 0;
        text-align: left;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(5n+1)::before {
        display: none;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(16)::before {
        display: none;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span {
        width: 90%;
        padding: 1.5vw 0 1.5vw 1.5vw;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd.current span {
        background: #80B4E0;
        color: #fff;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span::after {
        content: "+";
        right: 2vw;
        top:1.5vw;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd.current span::after
    {
        content: "-";
    }
    .weekly-sreach-box {
        width: 75vw;
    }
    .weekly-sreach-box::after {
        width: 7vw;
        height: 7vw;
        right:1vw;
        top:1.6vw;
    }
    .weekly-sreach-box input {
        border-radius: 3vw;
        font-size: 5.2vw;
        padding: 2vw;
    }
    .weekly-burger {
        position: absolute;
        display: block;
        width: 12vw;
        height: 10vw;
        right: 0;
        top:0;
        background: #80B4E0;
        border-radius: 3vw;
        box-shadow: -0.2vw -0.2vw 0.5vw rgba(0,0,0,0.3);
        cursor: pointer;
    }
    .weekly-burger span {
        position: absolute;
        display: block;
        width: 60%;
        height: 8%;
        background: #fff;
        left: 20%;
        top:calc(50% - 4%);
    }
    .weekly-burger span:nth-child(1) {
        top:calc(50% - 25%);
    }
    .weekly-burger span:nth-child(2) {
        top:calc(50% + 17%);
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .weekly-menu-container {
        margin: -2vw 0 4vw 0;
    }
    .weekly-menu-container.expand .close-btn {
        height: 5vw;
    }
    .weekly-menu-container.expand .close-btn::before {
        width: 4vw;
    }
    .weekly-menu-container.expand .close-btn::after {
        width: 4vw;
    }
    .weekly-main-menu-list {
        height: calc(100% - 64px - 5vw);
    }
    .weekly-main-menu-list li .main-list-btn {
        font-size: 2.751vw;
        padding: 3vw 0;
    }
    .weekly-main-menu-list li::after {
        right: 5vw;
        top:3vw;
        height: 1.5vw;
        width: 1.5vw;
        border-right: 0.4vw solid #376D99;
        border-bottom:0.4vw solid #376D99;
    }
    .weekly-main-menu-list li.expand::after {
        border-right: 0.4vw solid #fff;
        border-bottom:0.4vw solid #fff;
    }

    .weekly-main-menu-list li.main-list-more-btn:hover::after {
        border-right: 0.4vw solid #80B4E0;
        border-bottom:0.4vw solid #80B4E0;
    }

    .weekly-main-menu-list li.expand .weekly-sub-menu-list{
        padding: 2vw 0;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd {
        font-size: 2.28vw;
        width: 50%;
        margin: 0.5vw 0;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(5n+1)::before {
        display: none;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd:nth-child(16)::before {
        display: none;
    }
    .weekly-main-menu-list li.expand .weekly-sub-menu-list dd span {
        padding: 1vw;
    }
    .weekly-sreach-box {
        width: 80vw;
    }
    .weekly-sreach-box::after {
        width: 3vw;
        height: 3vw;
        right:1vw;
        top:1.2vw;
    }
    .weekly-sreach-box input {
        border-radius: 1.5vw;
        font-size: 2.751vw;
        padding: 1vw;
    }
    .weekly-burger {
        width: 7vw;
        height: 6vw;
        border-radius: 1vw;
        box-shadow: -0.1vw -0.1vw 0.2vw rgba(0,0,0,0.3);
    }
}

.weekly-banner-container {
    position: relative;
    display: block;
    width: 100%;
    height: 23vw;
    overflow: hidden;
}
.weekly-banner-list {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    display: flex;
}
.weekly-banner-list li {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    display: inline-block;
    overflow: hidden;
} 
.weekly-banner-list .item{
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.weekly-banner-list .item .imgbox {
    position: relative;
    display: block;
    width: 100%;
}
.weekly-banner-list .item .textbox {
    position: absolute;
    display: block;
    width: 100%;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,0.4);
}
.weekly-banner-list .item .textbox span {
    position: relative;
    display: block;
    font-size: 1.35vw;
    line-height: 100%;
    padding: 1vw;
    font-weight: 500;
    color: #fff;
    text-align: center;
}
.weekly-banner-container .banner-dot {
    position: absolute;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    right: 1.3vw;
    bottom: 1.3vw;
    z-index: 2;
    left:initial;
}
.weekly-banner-container .banner-dot li,.weekly-banner-container .banner-dot .swiper-pagination-bullet {
    position: relative;
    display: block;
    width: 0.6vw;
    height: 0.6vw;
    border:1px solid #fff;
    border-radius: 50%;
    margin: 0 0.3vw;
}
.weekly-banner-container .banner-dot li.current,.weekly-banner-container .banner-dot .swiper-pagination-bullet-active {
    background: #fff;
}
@media screen and (max-width: 1200px) {
    .weekly-banner-container {
        width: 100vw;
        height: 50vw;
        overflow: visible;
        left: calc(50% - 50vw);
        margin-bottom: 10vw;
    }
    .weekly-banner-list .item .imgbox {
        width: 170%;
        height: 100%;
        left: -35%;
        overflow: hidden;
    }
    .weekly-banner-list .item .textbox {
        overflow: hidden;
        padding: 1vw 0 1vw 1vw;
    }
    .weekly-banner-list .item .textbox span {
        font-size: 5vw;
        white-space: nowrap;
    }
    .weekly-banner-container .banner-dot {
        right: 0;
        bottom: -4vw;
        width: 100%;
    }
    .weekly-banner-container .banner-dot li,.weekly-banner-container .banner-dot .swiper-pagination-bullet {
        width: 2vw;
        height: 2vw;
        border:1px solid #376D99;
        margin: 0 1vw;
    }
    .weekly-banner-container .banner-dot li.current,.weekly-banner-container .banner-dot .swiper-pagination-bullet-active {
        background: #376D99;;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .weekly-banner-container {
        margin-bottom: 6vw;
    }
    .weekly-banner-list .item .textbox {
        overflow: hidden;
        padding: 1vw 0 1vw 1vw;
    }
    .weekly-banner-list .item .textbox span {
        font-size: 2.571vw;
    }
    .weekly-banner-container .banner-dot {
        bottom: -4vw;
    }
    .weekly-banner-container .banner-dot li {
        width: 1.5vw;
        height: 1.5vw;
    }
}
.main-content-weekly {
    padding: 2vw 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
}
.main-content-weekly .main-content-left {
    position: relative;
    display: block;
    width: calc(100% - 13.55vw);
    padding: 0 2vw 0 0;
}
.main-content-weekly .case-list .item .textbox .bottom-line .bottom-tag li {
    text-align: left;
    font-size: 0.8rem;
}
.main-content-weekly .case-list .bottom-line .global-morebtn {
    margin: 0;
}
.main-content-weekly .case-list .imgbox {
    height: 12vw;
    overflow: hidden;
}
.main-content-weekly .case-list .imgbox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main-content-weekly .main-content-right {
    position: relative;
    display: block;
    width: 13.55vw;
}
.weeky-subscribe {
    position: relative;
    display: block;
    width: 100%;
    height: 10.4vw;
    background: #376D99;
}
.weeky-subscribe .titlebox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;   
    padding: 1.5vw 0 0 0;
}
.weeky-subscribe .titlebox span {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #fff;
    font-weight: 500;
}
.weeky-subscribe .titlebox::before {
    content: "";
    position: relative;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
    background: url(../images/icon_mail_1.svg) no-repeat center center;
    background-size: contain;
    top:0.05vw;
    margin: 0 0.3vw 0 0;
}
.weeky-subscribe .weeky-subscribe-input {
    position: relative;
    display: block;
    width: 80%;
    margin: 1.5vw auto 0.8vw auto;
    font-size: 0.75vw;
    line-height: 100%;
    border:0px;
    border-radius: 1vw;
    padding: 0.5vw;
}
.weeky-send-btn {
    position: relative;
    display: block;
    width: 80%;
    margin: 0 auto;
    text-align: center;
    cursor: pointer;
    background: #80B4E0;
    font-size: 0.75vw;
    line-height: 100%;
    border-radius: 1vw;
    padding: 0.5vw;
    color: #fff;
}
.weeky-send-btn:hover {
    background: #fff;
    color: #80B4E0;
}
.weekly-side-banner {
    position: relative;
    display: block;
    width: 100%;
    height: 10.15vw;
    overflow: hidden;
    background: #ccc;
    margin: 1vw 0 0 0;
}
.weekly-side-hotbox {
    position: relative;
    display: block;
    width: 100%;
    margin: 1.5vw 0 0 0;
}
.weekly-side-hotbox .titlebox {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px solid #DBDBDB;
    margin: 0 0 1vw 0;
    padding: 0 0 0.5vw 0;
}
.weekly-side-hotbox .titlebox span {
    position: relative;
    display: block;
    font-size: 1.6vw;
    line-height: 100%;
    font-weight: 500;
}
.weekly-side-hotbox .titlebox::before {
    content: "";
    position: relative;
    display: block;
    width: 3vw;
    height: 3vw;
    background: url(../images/global_title_icon.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0.5vw 0 0;
}
.weekly-side-hotbox .weekly-side-hotbox-list {
    position: relative;
    display: block;
}
.weekly-side-hotbox .weekly-side-hotbox-list li {
    position: relative;
    display: block;
    margin: 0 0 1vw 0;
    cursor: pointer;
}
.weekly-side-hotbox .weekly-side-hotbox-list li .textbox{
    font-size: 0.9vw;
    line-height: 150%;
    font-weight: 500;
    color:#282828;
}
.weekly-side-hotbox .weekly-side-hotbox-list li:hover .textbox {
    color: #80B4E0;
}
.weekly-side-hotbox .weekly-side-hotbox-list li .datebox{
    font-size: 0.75vw;
    line-height: 150%;
    color: #80B4E0;
}
@media screen and (max-width: 1200px) {
    .main-content-weekly {
        padding: 2vw 0;
    }
    .main-content-weekly .main-content-left {
        width: 100%;
        padding: 0;
        order: 1;
    }
    .main-content-weekly .case-list .item {
        flex-direction: row;
        align-items: flex-start;
        padding: 4vw 0;
    }
    .main-content-weekly .case-list .item .imgbox {
        width: 35vw;
        height: 35vw;
    }
    .main-content-weekly .case-list .item .textbox {
        width: calc(100% - 35vw);
        padding:0 0 0 2vw;
    }
    .main-content-weekly .case-list .item .textbox .content-box {
        min-height: 35vw;
    }
    .main-content-weekly .case-list .item .textbox .content-box p{
        display: none;
    }
    .main-content-weekly .case-list .item .textbox .top-line {
        line-height: 100%;
        margin: -1.5vw 0 0 0;
    }
    .main-content-weekly .case-list .item .textbox .bottom-line .bottom-tag {
        width: 90vw;
        left: -37vw;
        padding: 2vw 0 0 0;
    }
    .main-content-weekly .case-list .item .textbox .bottom-line .bottom-tag li {
        font-size: 1.8rem;
    }
    .main-content-weekly .case-list .item .textbox .bottom-line .global-morebtn {
        height: auto;
    }
    
    .main-content-weekly .main-content-right {
        width: 100%;
        order: 3;
    }
    .main-content-weekly .main-list-dot {
        order: 2;
        width: 100%;
        margin: 8vw 0;
    }
    .weeky-subscribe {
        width: 100%;
        height: 12vw;
        display: flex;
        justify-content: center;
        align-items: center;
        border: 1px solid #376D99;
    }
    .weeky-subscribe .titlebox {
        display: none;
    }
    .weeky-subscribe .weeky-subscribe-input {
        order: 2;
        width: 78%;
        height: 100%;
        margin: 0;
        font-size: 4vw;
        border:0px;
        border-radius: 0;
        padding: 3vw;
    }
    .weeky-send-btn {
        order: 1;
        width: 22%;
        margin: 0;
        background: none;
        font-size: 4vw;
        line-height: 100%;
        border-radius: 1vw;
        padding: 0.5vw;
    }
    .weeky-send-btn::after {
        content: "訂閱";
    }
    .weeky-send-btn span {
        display: none;
    }
    .weeky-send-btn:hover {
        background: #fff;
        color: #80B4E0;
    }
    .weekly-side-banner {
        width: 100%;
        height: 64vw;
        max-width: 320px;
        max-height: 240px;
        margin: 7vw 0 0 0;
    }
    .weekly-side-hotbox {
        margin: 7vw 0 0 0;
    }
    .weekly-side-hotbox .titlebox {
        justify-content: center;
        align-items: center;
        border-bottom: 1px solid #DBDBDB;
        margin: 0 0 7vw 0;
        padding: 0 0 7vw 0;
    }
    .weekly-side-hotbox .titlebox span {
        font-size: 8.5vw;
    }
    .weekly-side-hotbox .titlebox::before {
        width: 15vw;
        height: 15vw;
        margin: 0 3vw 0 -7vw;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li {
        margin: 0 0 5vw 0;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li .textbox{
        font-size: 4.8vw;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li .datebox{
        font-size: 4vw;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .main-content-weekly {
        padding: 1.5vw 0;
    }
    .main-content-weekly .case-list .item .imgbox {
        height: 20vw;
    }
    .main-content-weekly .case-list .item .textbox .bottom-line .bottom-tag li {
        font-size: 1.5rem;
    }
    .main-content-weekly .main-list-dot {
        margin: 5vw 0;
    }
    .weeky-subscribe {
        width: 100%;
        height: 7vw;
    }
    .weeky-subscribe .weeky-subscribe-input {
        font-size: 3vw;

    }
    .weeky-send-btn {
        font-size: 3vw;
    }
    .weeky-send-btn::after {
        content: "訂閱";
    }
    .weeky-send-btn span {
        display: none;
    }
    .weeky-send-btn:hover {
        background: #fff;
        color: #80B4E0;
    }
    .weekly-side-banner {
        
        margin: 4vw auto 4vw auto;
    }
    .weekly-side-hotbox {
        margin: 7vw 0 0 0;
    }
    .weekly-side-hotbox .titlebox {
        margin: 0 0 3vw 0;
        padding: 0 0 3vw 0;
    }
    .weekly-side-hotbox .titlebox span {
        font-size: 5vw;
    }
    .weekly-side-hotbox .titlebox::before {
        width: 8vw;
        height: 8vw;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li {
        margin: 0 0 3vw 0;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li .textbox{
        font-size: 2.571vw;
    }
    .weekly-side-hotbox .weekly-side-hotbox-list li .datebox{
        font-size: 2.28vw;
    }
}
.sreach-tag-box {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    background: #80B4E0;
    border-radius: 2vw;
    padding: 0.7vw 1vw;
}
.sreach-tag-box .titlebox {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    color: #fff;
    font-weight: 500;
    margin-right: 2vw;
}
.sreach-tag-box .sreach-tag-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}
.sreach-tag-box .sreach-tag-list li {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 0.83vw;
    line-height: 100%;
    color: #5696CB;
    font-weight: 500;
    margin-right: 1vw;
    background: #fff;
    padding: 0.4vw 1vw;
    border-radius: 2vw;
    cursor: pointer;
    border: 1px solid #5696CB;
}
.sreach-tag-box .sreach-tag-list li:hover {
    background: #5696CB;
    color: #fff;
    border:1px solid #fff;
}
.sreach-tag-box .sreach-tag-list li .remove-btn {
    position: relative;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
    top:0.1vw;
    margin: 0 0 0 0.8vw;
}
.sreach-tag-box .sreach-tag-list li .remove-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.15vw;
    top:calc(50% - 0.1vw);
    left: 0;
    background: #5696CB;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.sreach-tag-box .sreach-tag-list li .remove-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.15vw;
    top:calc(50% - 0.1vw);
    left: 0;
    background: #5696CB;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.sreach-tag-box .sreach-tag-list li:hover .remove-btn::before {
    background: #fff;
}
.sreach-tag-box .sreach-tag-list li:hover .remove-btn::after {
    background: #fff;
}
@media screen and (max-width: 1200px) {
    .sreach-tag-box {
        display: block;
        width: 100vw;
        left: calc(50% - 50vw);
        border-radius: 0;
        padding: 1vw;
        margin: 9vw 0 0 0;
    }
    .sreach-tag-box .titlebox {
        position: absolute;
        font-size: 4.2vw;
        margin:0;
        top:-6vw;
        left: 5vw;
        color: #5696CB;
    }
    .sreach-tag-box .sreach-tag-list {
        padding: 1vw 4vw;
    }
    .sreach-tag-box .sreach-tag-list li {
        font-size: 4.2vw;
        margin: 1vw;
        padding: 1vw 2vw;
        border-radius: 4vw;
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn {
        width: 3vw;
        height: 3vw;
        top:0.1vw;
        margin: 0 0 0 1vw;
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn::before {
        width: 100%;
        height: 0.3vw;
        top:calc(50% - 0.1vw);
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn::after {
        width: 100%;
        height: 0.3vw;
        top:calc(50% - 0.1vw);
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .sreach-tag-box {
        margin: 6vw 0 0 0;
    }
    .sreach-tag-box .titlebox {
        font-size: 2.571vw;
        top:-4vw;
        left: 5vw;
    }
    .sreach-tag-box .sreach-tag-list {
        padding: 0vw 4vw;
    }
    .sreach-tag-box .sreach-tag-list li {
        font-size: 2.571vw;
        margin: 1vw;
        padding: 0.5vw 1vw;
        border-radius: 4vw;
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn {
        width: 2.5vw;
        height: 2.5vw;
        top:0.1vw;
        margin: 0 0 0 1vw;
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn::before {
        width: 100%;
        height: 0.2vw;
        top:calc(50% - 0.1vw);
    }
    .sreach-tag-box .sreach-tag-list li .remove-btn::after {
        width: 100%;
        height: 0.2vw;
        top:calc(50% - 0.1vw);
    }
}

.stage-container-weekly-article {
    background-image: none;
}
.stage-container-weekly-article .main-content-article .top-textbox .author span {
    position: relative;
    display: inline-block;
    margin: 0 6px 6px 0;
}
.weekly-article-listbox {
    position: relative;
    display: block;
    width: 100%;
    margin: 2em 0 0 0;
}
.weekly-article-listbox .titlebox {
    position: relative;
    display: block;
    font-size: 1.4em;
    line-height: 100%;
    color: #EB6877;
    font-weight: 500;
}
.weekly-article-listbox .weekly-article-list {
    position: relative;
    background: #E6E6E6;
    padding: 1em 2em;
}
.weekly-article-listbox .weekly-article-list li {
    position: relative;
    color: #282828;
    font-weight: 500;
    font-size: 1.17em;
    line-height: 150%;
    list-style: none;
    cursor: pointer;
    padding: 0.3em 0 0.3em 1.2em;
}
.weekly-article-listbox .weekly-article-list li a{
    color: #282828;
}
.weekly-article-listbox .weekly-article-list li::before {
    position: absolute;
    content: "⯈";
    left: 0em;
    
}
.weekly-article-listbox .weekly-article-list li:hover {
    color: #376D99;
}
.stage-container-weekly-article .hero-banner .textbox h1 {
    font-weight: 500;
}
.weekly-doctor-box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    padding: 5vw 0 3vw 0;
    margin:3vw 0 0 0;
}
.weekly-doctor-box::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 12.5vw;
    background: #80B4E0;
    top:0;
    left: 0;
}
.weekly-doctor-box::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.8vw;
    background: #80B4E0;
    bottom:0;
    left: 0;
}
.weekly-doctor-box .titlebox {
    position: absolute;
    font-size: 1.8vw;
    line-height: 150%;
    left: 25vw;
    border-left: 0.3vw solid #fff;
    padding: 0 0 0 1.5vw;
    color: #fff;
    font-weight: 500;
}
.weekly-doctor-box .imgbox {
    position: relative;
    display: block;
    width: 16vw;
    margin: 0 0 0 5vw;
}
.weekly-doctor-box .textbox {
    position: relative;
    display: block;
    width: calc(100% - 21vw);
    padding: 10vw 0 0 4vw;
}
.weekly-doctor-box .textbox dl {
    position: relative;
    display: block;
    margin: 0 0 1vw 0;
}
.weekly-doctor-box .textbox dl dt{
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 100%;
    font-weight: 500;
    color: #376D99;
    width: 100%;
}
.weekly-doctor-box .textbox dl dd {
    position: relative;
    display: inline-block;
    font-size: 1vw;
    line-height: 150%;
    font-weight: 500;
    color: #454545;
    margin: 0.5vw 1vw 0.5vw 0;
}
.weekly-doctor-box .textbox dl dd::before {
    content: "．";
}
.article-back-btn {
    position: relative;
    display: block;
    font-size: 1.25vw;
    line-height: 100%;
    width: 12vw;
    margin: 3vw auto;
    background: #376D99;
    text-align: center;
    color: #fff;
    cursor: pointer;
    font-weight: 500;
    padding: 1vw 0;
    border-radius: 2vw;
}
.article-back-btn:hover {
    background:#80B4E0;
}
@media screen and (min-width: 1200px) {
    .stage-container-weekly-article .hero-banner .textbox {
        padding: 4vw 2vw;
        top:0vw;
        margin-top:-4vw;
    }
    .stage-container-weekly-article .hero-banner .textbox .sub-tab .tab-date {
        padding: 0.5vw 0;
    }
    .stage-container-weekly-article .main-content-article .top-textbox {
        flex-wrap: wrap;
    }
    .stage-container-weekly-article .main-content-article .top-textbox .author {
        display: flex;
        flex-wrap: wrap;
        font-size: 16px;
        width: calc(100% - 200px);
    }
    .stage-container-weekly-article .article-tab-list {
        padding: 50px 0 50px 0;
    }
    
    .stage-container-weekly-article .main-content-article .top-textbox .font-size-btn li {
        font-size: 16px;
    }
    .stage-container-weekly-article .main-content {
        padding: 3rem 0 5rem 0;
    }
    .stage-container-weekly-article .article-promo-container .stage-content {
        width: 60vw;
    }
    .stage-container-weekly-article .weeky-subscribe {
        display: flex;
        height: auto;
        padding: 0.8vw 0;
        justify-content: center;
        align-items: center;
    }
    .stage-container-weekly-article .weeky-subscribe .titlebox {
        padding: 0;
        width: 20%;
    }
    .stage-container-weekly-article .weeky-subscribe .weeky-subscribe-input {
        margin: 0;
        width: 60%;
        border-radius: 1vw 0 0 1vw;
    }
    .stage-container-weekly-article .weeky-subscribe .weeky-send-btn {
        width: 15%;
        margin: 0;
        border-radius: 0 1vw 1vw 0;
    }
}
@media screen and (max-width: 1200px) {
    .stage-container-weekly-article .hero-banner .textbox .sub-tab .tab-date {
        padding: 0.5vw 0;
    }
    .stage-container-weekly-article .main-content-article .top-textbox {
        flex-direction: column;
        align-items: flex-start;
    }
    .stage-container-weekly-article .main-content-article .top-textbox .author {
        width: 100%;
        margin-bottom: 10px;
    }
    .stage-container-weekly-article .main-content {
        padding: 4rem 0 4rem 0
    }
    .stage-container-weekly-article .article-tab-list {
        padding: 20px 0 40px 0;
        justify-content: center;
    }
    .weekly-doctor-box {
        flex-direction: column;
        padding: 5vw 0 3vw 0;
        margin:10vw 0 0 0;
    }
    .weekly-doctor-box::before {
        width: 100vw;
        left: calc(50% - 50vw);
        height: 40vw;
    }
    .weekly-doctor-box::after {
        width: 100vw;
        left: calc(50% - 50vw);
        height: 1vw;
    }
    .weekly-doctor-box .titlebox {
        position: relative;
        font-size: 5.3vw;
        left: auto;
        border-left: 1vw solid #fff;
        padding: 0 0 0 5vw;
        margin: 0 0 0 5vw;
    }
    .weekly-doctor-box .imgbox {
        width: 90%;
        margin: 5vw auto 5vw auto;
    }
    .weekly-doctor-box .textbox {
        width: 90%;
        margin: 2vw auto 0 auto;
        padding: 0;
    }
    .weekly-doctor-box .textbox dl {
        margin: 0 0 5vw 0;
    }
    .weekly-doctor-box .textbox dl dt{
        font-size: 5vw;
    }
    .weekly-doctor-box .textbox dl dd {
        display: block;
        font-size: 3.5vw;
        margin: 2vw 0 2vw 0;
    }
    .article-back-btn {
        font-size: 4vw;
        width: 50vw;
        margin: 8vw auto;
        padding: 3vw 0;
        border-radius: 6vw;
    }
    .article-back-btn:hover {
        background:#80B4E0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .stage-container-weekly-article .article-tab-list {
        padding: 20px 0 40px 0;
        justify-content: center;
    }
    .weekly-doctor-box {
        padding: 5vw 0 3vw 0;
        margin:8vw 0 0 0;
    }
    .weekly-doctor-box::before {
        height: 30vw;
    }
    .weekly-doctor-box::after {
        height: 0.8vw;
    }
    .weekly-doctor-box .titlebox {
        font-size: 3.5vw;
        padding: 0 0 0 5vw;
        margin: 0 0 0 5vw;
    }
    .weekly-doctor-box .imgbox {
        width: 90%;
        margin: 5vw auto 5vw auto;
    }
    .weekly-doctor-box .textbox {
        width: 90%;
        margin: 2vw auto 0 auto;
        padding: 0;
    }
    .weekly-doctor-box .textbox dl {
        margin: 0 0 3vw 0;
    }
    .weekly-doctor-box .textbox dl dt{
        font-size: 2.571vw;
    }
    .weekly-doctor-box .textbox dl dd {
        display: inline-block;
        font-size: 2.28vw;
        margin: 1vw 0 2vw 0;
    }
    .article-back-btn {
        font-size: 2.28vw;
        width: 30vw;
        margin: 5vw auto;
        padding: 2vw 0;
        border-radius: 6vw;
    }
    .article-back-btn:hover {
        background:#80B4E0;
    }
}
.booking-qa-container {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    font-size: 1vw;
    line-height: 100%;
    padding: 4vw 0.5vw 0.5vw 0.5vw;
}
.booking-qa-container .all-btn {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top:1em;
    right: 1em;
    font-size: 1.35em;
    cursor: pointer;
}
.booking-qa-container .all-btn::after {
    content: "全部展開";
    font-weight: 500;
    color: #5c99cd;
    padding: 0 0 0 0.5em;
    
}
.booking-qa-container .all-btn .icon{
    position: relative;
    display: block;
    width: 1.2em;
    height: 1.2em;
    text-align: center;
    border:2px solid #b7e0fb;
    background: #fff;
}
.booking-qa-container .all-btn .icon::before {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
}
.booking-qa-container .all-btn .icon::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.booking-qa-container .all-btn.expand .icon::after {
    display: none;
}
.booking-qa-container .all-btn.expand::after {
    content: "全部關閉";
}
.booking-qa-container .qa-list {
    position: relative;
    display: block;
    width: 100%;
    list-style: none;
    /*  命名自訂標號變數  */
    counter-reset: my-counter;
    font-size: 1.5em;
    background: #d5edfc;
}
.booking-qa-container .qa-list li {
    position: relative;
    display: list-item;
    counter-increment: my-counter;
    text-indent: 0;
    width: 100%;
    margin: 0;
    padding: 1em 0 0 0;
    border-bottom: 5px solid #fff;
}
.booking-qa-container .qa-list li::before {
    content: "Q"counter(my-counter)".";
    line-height: 150%;
    color: #003f76;
    font-weight: 500;
    padding:0em 0 0em 1em;
    width: 2.7em;
    vertical-align: top;
    display: inline-block;
}
.booking-qa-container .qa-list li .titlebox {
    position: relative;
    display: inline-block;
    font-size: 1em;
    line-height: 150%;
    color: #003f76;
    font-weight: 500;
    cursor: pointer;
    width: calc(100% - 6.5em);
    vertical-align: top;
    padding: 0 0 1em 0;
}
.booking-qa-container .qa-list li .icon{
    position: absolute;
    display: block;
    width: 1.2em;
    height: 1.2em;
    text-align: center;
    border:2px solid #b7e0fb;
    background: #fff;
    margin: 0 0 0 1em;
    right: 1em;
    top:1.2em;
    cursor: pointer;
}
.booking-qa-container .qa-list li .icon::before {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
}
.booking-qa-container .qa-list li .icon::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.booking-qa-container .qa-list li.expand .icon::after {
    display: none;
}
.booking-qa-container .qa-list li .textbox {
    display: none;
}
.booking-qa-container .qa-list li.expand .textbox {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 1em;
    line-height: 180%;
    padding: 2em 1em 2em 2em;
    background: #fff;
}
.booking-qa-container .qa-list li .textbox p {
    padding: 0 0 0 1em;
    width: calc(100% - 4em);
}
.booking-qa-container .qa-list li .textbox::before {
    content: "A";
    position: relative;
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    background: #eb6877;
    text-align: center;
    color: #fff;
}
.booking-qa-container .qa-list li .textbox::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1em;
    left: 0;
    bottom: 0;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
}
@media screen and (max-width: 1200px) {
    .booking-qa-container {
        font-size: 2.5vw;
        padding: 10vw 1vw 1vw 1vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .booking-qa-container {
        font-size: 1.5vw;
        padding: 6vw 1vw 1vw 1vw;
    }
}

.booking-notice-container {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    font-size: 1vw;
    line-height: 100%;
    padding: 0.5vw;
    margin: -4vw 0 0 0;
}
.booking-notice-container .notice-list {
    position: relative;
    display: block;
    width: 100%;
    list-style: none;
    /*  命名自訂標號變數  */
    counter-reset: my-counter;
    font-size: 1em;
    background: #d5edfc;
}
.booking-notice-container .notice-list li {
    position: relative;
    display: list-item;
    counter-increment: my-counter;
    text-indent: 0;
    width: 100%;
    margin: 0;
    padding: 1em 0 0 0;
    border-bottom: 5px solid #fff;
}
.booking-notice-container .notice-list li::before {
    content: counter(my-counter)".";
    font-size: 1.4em;
    line-height: 150%;
    color: #003f76;
    font-weight: 500;
    padding:0em 0 0em 1em;
    width: 1.8em;
    vertical-align: top;
    display: inline-block;
}
.booking-notice-container .notice-list li .titlebox {
    position: relative;
    display: inline-block;
    font-size: 1.4em;
    line-height: 150%;
    color: #003f76;
    font-weight: 500;
    width: calc(100% - 4em);
    vertical-align: top;
    padding: 0 0 1em 0;
}
.booking-notice-container .notice-list li dl {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
}
.booking-notice-container .notice-list li dl dd {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 150%;
    padding: 1.5em 0 1.5em 4em;
    border-bottom:1px solid #a4a4a4;
    cursor: pointer;
}
.booking-notice-container .notice-list li dl dd:hover {
    color: #5696cb;
}
.booking-notice-container .notice-list li dl dd:last-child {
    border-bottom: 0px;
}
.booking-notice-container .notice-list li dl dd::before {
    content: "-";
    padding: 0 0.5em 0 0;
}
.booking-notice-container .notice-list li dl dd::after {
    content: "";
    position: absolute;
    display: block;
    width: 2em;
    height: 2em;
    background: url(../images/icon_arrow3.svg) no-repeat center center;
    background-size: contain;
    right: 2em;
    top:1.2em;
}
@media screen and (max-width: 1200px) {
    .booking-notice-container {
        font-size: 2.8vw;
        padding: 1.5vw;
        margin: 0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .booking-notice-container {
        font-size: 1.5vw;
        padding: 1.2vw;
    }
}

.stage-container-ckeckup-article .main-content-article .top-textbox {
    justify-content: flex-end;
    border-bottom: 0px;
    padding: 0 0 1em 0;
}
.stage-container-ckeckup-article .main-content-article {
    padding-top: 0vw;
    margin-top: -2vw;
    width: 100%;
}
.stage-container-ckeckup-article .article-content {
    background: #fff;
    padding: 1em 2em;
}
.main-content-article .icon-map {
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_map2.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    margin: 0 0 0 0.5em;
}
.main-content-article .back-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1.2em;
    line-height: 100%;
    margin: 3em auto;
    text-align: center;
    background: #376D99;
    color: #fff;
    cursor: pointer;
    padding: 1em 0;
    border-radius: 3em;
}
.stage-container-notice-article .back-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1.2em;
    line-height: 100%;
    margin: 3em auto;
    text-align: center;
    background: #376D99;
    color: #fff;
    cursor: pointer;
    padding: 1em 0;
    border-radius: 3em;
}
.checkup-package-container {
    position: relative;
    display: block;
    width: 100%;
}
.checkup-package-container .checkup-package-box {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin: 0 0 1em 0;
}
.checkup-package-container .checkup-package-box .imgbox {
    position: relative;
    display: block;
    width: 20%;
}
.checkup-package-container .checkup-package-box .imgbox img {
    width: 100%;
    height: auto;
}
.checkup-package-container .checkup-package-box .imgbox .titlebox {
    display: none;
}
.checkup-package-container .checkup-package-box .textbox {
    position: relative;
    display: block;
    padding: 0 0 0 1em;
    width: 80%;
}
.checkup-package-container .checkup-package-box .textbox .t1 {
    position: relative;
    display: block;
    color: #003f76;
    font-weight: 500;
    font-size: 1em;
}
.checkup-package-container .checkup-package-box .textbox .t2 {
    font-size: 0.9em;
}
.checkup-package-container .checkup-package-box .checkup-package-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 0;
    margin: 1em 0 0 0;
}
.checkup-package-container .checkup-package-box .checkup-package-list li {
    display: block;
    padding: 0;
    margin: 0;
    text-indent: 0;
    min-width: calc(100% / 3);
    margin: 0 0 0.5em 0;
    user-select: none;
}
.checkup-package-container .checkup-package-box .checkup-package-list li label {
    position: relative;
    display: block;
    padding-right: 2em;
    cursor: pointer;
}
.checkup-package-container .checkup-package-box .checkup-package-list li label span {
    position: relative;
    display: inline-block;
    font-weight: 500;
    vertical-align: top;
    font-size: 0.9em;
    padding: 0 0 0 1.8em;
}
.checkup-package-container .checkup-package-box .checkup-package-list li label input {
    display: none;
}
.checkup-package-container .checkup-package-box .checkup-package-list li label::before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 1em;
    height: 1em;
    border:2px solid #acdbfa;
    top:0.3em;
}
.checkup-package-container .checkup-package-box .checkup-package-list li label input:checked + span::after
{
    content: "";
    position: absolute;
    display: inline-block;
    width: 0.5em;
    height: 1em;
    border-bottom:0.3em solid #003f76;
    border-right:0.3em solid #003f76;
    top:0.3em;
    pointer-events: none;
    left: 0.2em;
    top:0;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
}
.checkup-selected-box {
    position: fixed;
    display: none;
    bottom: 0;
    left: 0;
    background: #fff;
    width: 100%;
    box-shadow: 0 -0.5em 1em rgba(0,0,0,0.1);
    z-index: 99;
    font-size: 1vw;
    line-height: 100%;
    padding: 1.2em;
}
.checkup-selected-box.expand {
    display: block;
}
.checkup-selected-box .titlebox {
    position: relative;
    display: block;
    text-align: center;
    font-weight: 500;
    font-size: 1.2em;
}
.checkup-selected-box .selected-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1.5em 0;
}
.checkup-selected-box .selected-list .selected-btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2.5em;
    margin: 0 1em;
}
.checkup-selected-box .selected-list .selected-btn span {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 100%;
    border:1px solid #5696cb;
    font-size: 1.2em;
    line-height: 100%;
    padding: 0 2.8em 0 0.8em;
    color: #5696cb;
}
.checkup-selected-box .selected-list .selected-btn .icon {
    content: "1";
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.5em;
    height: 2.5em;
    background: #eb6877;
    color: #fff;
}
.checkup-selected-box .selected-list .selected-btn .icon::before {
    content: "1";
    font-size: 1.5em;
    line-height: 100%;
    text-align: center;
    font-weight: 500;
}
.checkup-selected-box .selected-list .selected-btn:nth-child(2) .icon {
    background: #f8b551;
}
.checkup-selected-box .selected-list .selected-btn:nth-child(2) .icon::before {
    content: "2";
}
.checkup-selected-box .selected-list .selected-btn:nth-child(3) .icon {
    background: #80c269;
}
.checkup-selected-box .selected-list .selected-btn:nth-child(3) .icon::before {
    content: "3";
}
.checkup-selected-box .selected-list .selected-btn .del-btn {
    position: absolute;
    display: block;
    width: 2em;
    height: 2em;
    right: 0.5em;
    cursor: pointer;
}
.checkup-selected-box .selected-list .selected-btn .del-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    left: 5%;
    top:calc(50% - 1px);
    background: #5696cb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.checkup-selected-box .selected-list .selected-btn .del-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    left: 5%;
    top:calc(50% - 1px);
    background: #5696cb;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.checkup-selected-box .compare-btn {
    position: relative;
    display: block;
    margin: 0 auto 0 auto;
    width: 10em;
    background: #eb6877;
    color: #fff;
    text-align: center;
    padding: 0.7em 0;
    font-weight: 500;
    border-radius: 1.5em;
    font-size: 1.2em;
    cursor: pointer;
}
.checkup-selected-box .compare-btn:hover {
    background: #bf3d4c;
}
@media screen and (max-width: 1200px) {
    .stage-container-ckeckup-package .article-content {
        background: none;
        padding: 0;
    }
    .stage-container-ckeckup-package .article-content .highlight-center {
        font-size: 1.2em;
    }
    .checkup-package-container .checkup-package-box {
        flex-direction: column;
        margin: 0 0 1em 0;
    }
    .checkup-package-container .checkup-package-box .imgbox {
        width: 100%;
        height: 35vw;
        overflow: hidden;
    }
    .checkup-package-container .checkup-package-box .imgbox img {
        position: absolute;
        top:50%;
        -webkit-transform: translate(0,-50%);
        transform: translate(0,-50%);
    }
    .checkup-package-container .checkup-package-box .imgbox .titlebox{
        position: absolute;
        top:0;
        left: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        font-size: 1.5em;
        color: #fff;
        font-weight: 500;
        text-shadow: 0 0 0.4em rgba(0,0,0,0.7);
    }
    .checkup-package-container .checkup-package-box .textbox {
        padding: 0;
        width: 100%;
    }
    .checkup-package-container .checkup-package-box .textbox .t1 {
        display: none;
    }
    .checkup-package-container .checkup-package-box .textbox .t2 {
        display: none;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list {
        padding: 0;
        margin: 0;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li {
        min-width: inherit;
        width: 100%;
        margin: 0;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li label {
        padding: 0;
        width: 100%;
        height: 15vw;
        background: rgb(255,255,255);
        background: linear-gradient(0deg, rgba(255,255,255,1) 62%, rgba(245,246,246,1) 100%);
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li label span {
        font-size: 1em;
        padding: 0 0 0 3.5em;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li label input {
        display: none;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li label::before {
        width: 1em;
        height: 1em;
        top:calc(50% - 0.5em);
        left: 1em;
    }
    .checkup-package-container .checkup-package-box .checkup-package-list li label input:checked + span::after
    {
        top:0;
        left: 1.2em;
    }
    .checkup-selected-box {
        font-size: 3.5vw;
    }
    .checkup-selected-box .selected-list {
        flex-direction: column;
    }
    .checkup-selected-box .selected-list .selected-btn {
        margin:0.5em 0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .checkup-selected-box {
        font-size: 1.8vw;
    }
}
.comparison-container1 {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1vw;
    line-height: 150%;
}
.comparison-container1 .titlebox {
    position: relative;
    display: block;
    text-align: center;
    color: #000;
    font-weight: 500;
    font-size: 1.45em;
    padding: 2em 0;
}

.selected-list-mobile {
    display: none;
}
.article-content .comparison-container1 .comparison-table1 {
    border: 0;
    border-spacing: 0;
}
.article-content .comparison-container1 .comparison-table1 tr {
    position: relative;
}
.article-content .comparison-container1 .comparison-table1 tr td{
    position: relative;
    border: 0;
    border-spacing: 0;
}
.article-content .comparison-container1 .comparison-table1 tr td:nth-child(1) {
    width: 2.5em;
    background: #d5edfc;
    writing-mode: vertical-lr;
    vertical-align: middle;
    text-align: center;
    padding: 1em 0;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(2) td:nth-child(1)::after {
    content: "";
    position: absolute;
    display: block;
    width: 80%;
    left: 10%;
    height: 1px;
    background: #163567;
    bottom: 0;
}
.article-content .comparison-container1 .comparison-table1 tr td:nth-child(1) span {
    color: #163567;
    font-size: 0.9em;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td:nth-child(1),
.article-content .comparison-container1 .comparison-table1 tr:last-child td:nth-child(1){
    background: none;
}
.article-content .comparison-container1 .comparison-table1 tr td.comparison-cell {
    width: calc(100% - 2.5em / 3);
    padding: 1em;
    border-right: 1px solid #a4a4a4;
}
.article-content .comparison-container1 .comparison-table1 tr td:last-child {
    border-right:0px;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell {
    text-align: center;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell .icon {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 2.5em;
    height: 2.5em;
    background: #eb6877;
    color: #fff;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell .icon::before {
    content: "1";
    font-size: 1.5em;
    line-height: 150%;
    text-align: center;
    font-weight: 500;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell.cell2 .icon {
    background: #f8b551;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell.cell2 .icon::before {
    content: "2";
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell.cell3 .icon {
    background: #80c269;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell.cell3 .icon::before {
    content: "3";
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell .textbox {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 1.45em;
    margin: 0 0 0 0.5em;
    font-weight: 500;
    color: #5696cb;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(2) td.comparison-cell {
    font-size: 1.25em;
    text-align: center;
    color: #282828;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(2) td.comparison-cell::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    left: 5%;
    height: 1px;
    background: #acdbfa;
    bottom: 0;
}
.article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell {
    font-size: 1em;
    color: #282828;
}
.article-content .comparison-container1 .comparison-table1 .booking-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1em;
    color: #fff;
    text-align: center;
    background: #376d99;
    padding: 0.6em;
    border-radius: 2em;
    margin: 0 auto;
    cursor: pointer;
    font-weight: 500;
    border:2px solid #fff;
}
.article-content .comparison-container1 .comparison-table1 .booking-btn:hover {
    background: #fff;
    border:2px solid #376d99;
    color: #376d99;
}
.comparison-download-box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1vw;
    line-height: 100%;
    margin: 3em 0 1em 0;
}
.comparison-download-box .download-btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 12em;
    font-size: 1em;
    color: #fff;
    text-align: center;
    background: #376d99;
    padding: 0.6em;
    border-radius: 2em;
    cursor: pointer;
    font-weight: 500;
    border:2px solid #fff;
}
.comparison-download-box .download-btn:hover {
    background: #fff;
    border:2px solid #376d99;
    color: #376d99;
}
.comparison-download-box .download-btn::after {
    content: "";
    position: relative;
    display: block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_download.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0 0 0.5em;
}
.comparison-download-box .download-btn:hover::after {
    background: url(../images/icon_download_hover.svg) no-repeat center center;
    background-size: contain;
}
.comparison-download-box .comparison-list {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 0 1em;
}
.comparison-download-box .comparison-list .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.comparison-download-box .comparison-list .item .textbox {
    position: relative;
    display: block;
    vertical-align: middle;
    font-size: 1.2em;
    margin: 0 2em 0 0.2em;
    font-weight: 500;
    color: #5696cb;
}
.comparison-download-box .comparison-list .item .icon{
    position: relative;
    display: block;
    vertical-align: middle;
    width: 2em;
    height: 2em;
    background: #eb6877;
    color: #fff;
    text-align: center;
}
.comparison-download-box .comparison-list .item .icon::before {
    content: "1";
    font-size: 1.2em;
    line-height: 160%;
    text-align: center;
    font-weight: 500;
}
.comparison-download-box .comparison-list .item.item2 .icon {
    background: #f8b551;
}
.comparison-download-box .comparison-list .item.item2 .icon::before {
    content: "2";
}
.comparison-download-box .comparison-list .item.item3 .icon {
    background: #80c269;
}
.comparison-download-box .comparison-list .item.item3 .icon::before {
    content: "3";
}
.comparison-download-box .comparison-list .item .del-btn {
    position: absolute;
    display: block;
    width: 1em;
    height: 1em;
    background: #5696cb;
    border-radius: 50%;
    top:0;
    right: 1em;
    cursor: pointer;
}
.comparison-download-box .comparison-list .item .del-btn:hover {
    background: #376d99;
}
.comparison-download-box .comparison-list .item .del-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 80%;
    height: 2px;
    background: #fff;
    top:calc(50% - 1px);
    left: 10%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.comparison-download-box .comparison-list .item .del-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 80%;
    height: 2px;
    background: #fff;
    top:calc(50% - 1px);
    left: 10%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.comparison-container2 {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
}
.comparison-container2 .titlebox {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #d5edfc;
}
.comparison-container2 .titlebox .title-left {
    position: relative;
    display: block;
    color: #163567;
    font-weight: 500;
    font-size: 1.45em;
    margin: 0 0 0 1em;
}
.comparison-container2 .titlebox .title-right {
    position: relative;
    display: block;
}
.comparison-container2 .titlebox .title-right .t1 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0.5em 1em 0.5em 0;
}
.comparison-container2 .titlebox .title-right .t1 span {
    position: relative;
    display: block;
    font-size: 1em;
    color: #163567;
}
.comparison-container2 .titlebox .title-right .t1::before {
    content: "";
    position: relative;
    display: block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_q_mark.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0.5em 0 0;
}
.comparison-container2 .titlebox .title-right .t2 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.comparison-container2 .titlebox .title-right .t2-1 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.comparison-container2 .titlebox .title-right .t2-1 span {
    position: relative;
    display: block;
    font-size: 0.8em;
    color: #163567;
    margin: 0 1.5em 0 0;
}
.comparison-container2 .titlebox .title-right .t2-1 span::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: #5696cb;
    vertical-align: middle; 
    margin: 0 0.5em 0 0;
}
.comparison-container2 .titlebox .title-right .t2-1 span:nth-child(2)::before {
    background: #e6afbd;
}
.comparison-container2 .titlebox .title-right .t2-1 span:nth-child(3)::before {
    background: #a4a4a4;
}
.comparison-container2 .titlebox .title-right .t2-2 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.comparison-container2 .titlebox .title-right .t2-2 span {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 2em;
    color: #fff;
    margin: 0 0 0 1px;
    width: 2em;
    height: 2em;
    background: #eb6877;
    text-align: center;
    font-weight: 500;
}
.comparison-container2 .titlebox .title-right .t2-2 span:nth-child(2) {
    background: #f8b551;
}
.comparison-container2 .titlebox .title-right .t2-2 span:nth-child(3) {
    background: #80c269;
}
.article-content .comparison-container2 .comparison-table-list {
    position: relative;
    display: block;
    width: 100%;
}
.article-content .comparison-container2 .comparison-table-list dt {
    position: relative;
    display: block;
    background: #6aa0d0;
    color: #fff;
    padding: 0.5em 1em;
    font-weight: 500;
}
.article-content .comparison-container2 .comparison-table-list dd {
    position: relative;
    display: block;
    width: 100%;
}
.article-content .comparison-container2 .comparison-table2 {
    border: 0;
    border-spacing: 0;
    width: 100%;
}
.article-content .comparison-container2 .comparison-table2 tr {
    position: relative;
}
.article-content .comparison-container2 .comparison-table2 tr td{
    position: relative;
    border: 0;
    border-spacing: 0;
    border-bottom:1px solid #f0f2f2;
    border-right: 1px solid #f0f2f2;
    width: 2.5em;
    vertical-align: middle;
    text-align: center;
}
.article-content .comparison-container2 .comparison-table2 tr td:nth-child(1) {
    width: calc(100% - 7.5em);
    font-size: 1em;
    padding: 0.5em 1em;
}
.article-content .comparison-container2 .comparison-table2 tr td:last-child {
    border-right:0px;
}
.article-content .comparison-container2 .comparison-table2 tr td .icon-dot {
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: none;
}
.article-content .comparison-container2 .comparison-table2 tr td .icon-dot.dot1 {
    background: #5696cb;
}
.article-content .comparison-container2 .comparison-table2 tr td .icon-dot.dot2 {
    background: #e6afbd;
}
.article-content .comparison-container2 .comparison-table2 tr td .icon-dot.dot3 {
    background: #a4a4a4;
}
.article-content .comparison-container2 .comparison-table2 tr td .icon-note {
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_q_mark.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    cursor: pointer;
}
.article-content .comparison-container2 .comparison-table2 tr td span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.article-content .comparison-container2 .comparison-table2 tr td .sub-titlebox {
    position: relative;
    display: block;
    text-align: left;
    padding: 0.5em 0;
}
.article-content .comparison-container2 .comparison-table2 tr td .sub-titlebox span {
    position: relative;
    display: inline-block;
    background: #d5edfc;
    padding: 0.5em 1em;
    left: -0.5em;
    text-align: left;
    color: #282828;
    font-weight: 500;
}
.article-content .comparison-container2 .back-comparison-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1em;
    color: #fff;
    text-align: center;
    background: #376d99;
    padding: 0.8em;
    border-radius: 2em;
    margin: 2em auto 0 auto;
    cursor: pointer;
    font-weight: 500;
}
.article-content .comparison-container2 .back-comparison-btn:hover {
    background: #5696cb;
}
.note-popup {
    position: absolute;
    display: none;
    z-index: 999;
    font-size: 1vw;
    border: 1px solid #a4a4a4;
    margin: 0 0 0 1em;
}
.note-popup.expand {
    display: inline-block;
}
.note-popup .note-popup-container {
    position: relative;
    display: block;
    width: 100%;
    max-width: 500px;
    padding: 3em 2em;
    background: rgb(245,246,246);
    background: linear-gradient(0deg, rgba(245,246,246,1) 0%, rgba(255,255,255,1) 47%);
}
.note-popup .note-popup-container .titlebox {
    position: relative;
    display: block;
    font-size: 1.45em;
    font-weight: 500;
    color: #5c99cc;
    line-height: 100%;
    background: none;
}
.note-popup .note-popup-container .textbox {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 150%;
    margin: 2em 0 0 0;
}
.note-popup .note-popup-container .close-btn {
    position: absolute;
    display: block;
    width: 1.5em;
    height: 1.5em;
    right: 0.5em;
    top:0.5em;
    cursor: pointer;
}
.note-popup .note-popup-container .close-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    left: 0;
    background: #5d5d5d;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.note-popup .note-popup-container .close-btn::after{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    left: 0;
    background: #5d5d5d;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
@media screen and (max-width: 1200px) {
    .comparison-container1 {
        font-size: 3.5vw;
    }
    .comparison-container1 .titlebox {
        padding: 2em 0 1em 0;
    }
    .comparison-container1 .selected-list-mobile {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        margin: 0;
    }
    .comparison-container1 .selected-list-mobile .selected-box {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 2.5em;
        margin: 0 0 1em 0;
    }
    .comparison-container1 .selected-list-mobile .selected-box span {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        height: 100%;
        border:1px solid #5696cb;
        font-size: 1.2em;
        line-height: 100%;
        padding: 0 1.8em 0 1.8em;
        color: #5696cb;
        text-align: center;
    }
    .comparison-container1 .selected-list-mobile .selected-box .icon {
        content: "1";
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 2.5em;
        height: 2.5em;
        background: #eb6877;
        color: #fff;
    }
    .comparison-container1 .selected-list-mobile .selected-box .icon::before {
        content: "1";
        font-size: 1.5em;
        line-height: 100%;
        text-align: center;
        font-weight: 500;
    }
    .comparison-container1 .selected-list-mobile .selected-box:nth-child(2) .icon {
        background: #f8b551;
    }
    .comparison-container1 .selected-list-mobile .selected-box:nth-child(2) .icon::before {
        content: "2";
    }
    .comparison-container1 .selected-list-mobile .selected-box:nth-child(3) .icon {
        background: #80c269;
    }
    .comparison-container1 .selected-list-mobile .selected-box:nth-child(3) .icon::before {
        content: "3";
    }
    .article-content .comparison-container1 .comparison-table1 tr td:nth-child(1) {
        width: 2.5em;
        padding: 1em 0;
    }
    .article-content .comparison-container1 .comparison-table1 tr td.comparison-cell {
        width: calc(100vw - 2.5em);
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(1) td.comparison-cell .textbox {
        display: none;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container {
        display: none;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell {
        text-align: center;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell::after {
        content: "詳情 >";
        font-size: 1.2em;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container.expand {
        position: fixed;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        z-index: 999;
        background: rgba(0,0,0,0.6);
        left: 0;
        top:0;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container .textbox {
        position: relative;
        display: block;
        width: 90%;
        padding: 3em;
        max-height: calc(90% - 60px);
        background: rgb(245,246,246);
        background: linear-gradient(0deg, rgba(245,246,246,1) 0%, rgba(255,255,255,1) 47%);
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container .textbox::before {
        content: "方案特色";
        position: relative;
        display: block;
        font-size: 1.2em;
        margin: 0 0 0.5em 0;
        font-weight: 500;
        color: #5c99cc;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container .textbox .close-btn {
        position: absolute;
        display: block;
        width: 1.5em;
        height: 1.5em;
        right: 0.5em;
        top:0.5em;
        cursor: pointer;
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container .textbox .close-btn::before {
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 2px;
        top:calc(50% - 1px);
        left: 0;
        background: #5d5d5d;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .article-content .comparison-container1 .comparison-table1 tr:nth-child(3) td.comparison-cell .text-container .textbox .close-btn::after{
        content: "";
        position: absolute;
        display: block;
        width: 100%;
        height: 2px;
        top:calc(50% - 1px);
        left: 0;
        background: #5d5d5d;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .article-content .comparison-container1 .comparison-table1 .booking-btn {
        width: 6em;
    }
    .comparison-download-box {
        font-size: 3.5vw;
    }
    .comparison-download-box .download-btn {
        width: 10em;
    }
    .comparison-download-box .comparison-list {
        flex-direction: column;
        margin: 0 0 0 1em;
    }
    .comparison-download-box .comparison-list .item {
        margin: 0 0 0.5em 0;
    }
    .comparison-download-box .comparison-list .item .textbox {
        font-size: 0.9em;
        margin: 0 2em 0 0.2em;
    }
    .comparison-download-box .comparison-list .item .del-btn {
        top:0.5em;
        right: 0;
    }
    .comparison-container2 {
        font-size: 2.5vw;
        width: 100vw;
        left: calc(50% - 50vw);
    }
    .comparison-container2 .titlebox .title-right .t2-1 span {
        font-size: 1em;
        margin: 0 1.2em 0 0;
    }

    .article-content .comparison-container2 .comparison-table-list dt {
        font-size: 1.4em;
    }
    .article-content .comparison-container2 .comparison-table2 tr td:nth-child(1) {
        font-size: 1em;
    }
    .article-content .comparison-container2 .comparison-table2 tr td span {
        max-width: 85%;
    }
    .article-content .comparison-container2 .comparison-table2 tr td .sub-titlebox {
        font-size: 1.6em;
    }
    .article-content .comparison-container2 .back-comparison-btn {
        width: 10em;
        font-size: 1.5em;
        padding: 1em;
        border-radius: 2em;
    }
    .note-popup {
        position: fixed;
        display: none;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        left: 0;
        top:0;
        background: rgba(0,0,0,0.3);
        z-index: 999;
        font-size: 3.5vw;
        margin: 0;
    }
    .note-popup.expand {
        display: flex;
    }
    .note-popup .note-popup-container {
        width: 90%;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .comparison-container1 {
        font-size: 2vw;
    }
    .comparison-container1 .titlebox {
        padding: 1em 0 1em 0;
    }
    .article-content .comparison-container1 .comparison-table1 tr td:nth-child(1) {
        width: 2.5em;
        padding: 1em 0;
    }
    .article-content .comparison-container1 .comparison-table1 tr td.comparison-cell {
        width: calc(100vw - 2.5em);
    }
    .article-content .comparison-container1 .comparison-table1 .booking-btn {
        width: 8em;
    }
    .comparison-download-box {
        font-size: 2vw;
    }
    .comparison-download-box .download-btn {
        width: 10em;
    }
    .comparison-download-box .comparison-list .item .textbox {
        font-size: 1.2em;
        margin: 0 1.5em 0 0.5em;
    }
    .comparison-container2 {
        font-size: 1.8vw;
    }
    .article-content .comparison-container2 .comparison-table2 tr td .sub-titlebox {
        font-size: 1.5em;
    }
    .note-popup {
        font-size: 1em;
    }
}
.plan-container1 {
    position: relative;
    display: block;
}
.plan-container1 .titlebox {
    position: relative;
    display: block;
    font-size: 1.4em;
    color: #376d99;
    text-align: center;
    font-weight: 500;
    padding: 1em 0;
}
.plan-container1 .titlebox2 {
    position: relative;
    display: block;
    font-size: 1.4em;
    color: #000;
    text-align: center;
    font-weight: 500;
    padding: 1em 0;
}
.plan-container1 .textbox {
    position: relative;
    display: block;
    font-size: 0.9em;
    line-height: 180%;
    color: #282828;
    text-align: center;
    padding: 0 0 0.5em 0;
}
.plan-container2 {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 90%;
    margin: 1em auto;
}
.plan-container2 .textbox {
    position: relative;
    display: block;
    background: #edf4fa;
    font-size: 1em;
    text-align: center;
    padding: 1em;
}
.plan-container2 .textbox .t1 {
    font-weight: 500;
    color: #000;
}
.plan-container2 .textbox .t2 {
    font-weight: 500;
    color: #5696cb;
    padding: 0 0.5em;
}
.plan-container2 .textbox .t4 {
    font-weight: 500;
    color: #eb6877;
    padding: 0 0.5em;
}
.plan-container2 .textbox1 {
    width: calc(45% - 1em);
    margin: 0 1em 0 0;
}
.plan-container2 .textbox2 {
    width: 55%;
}
.plan-container2 .textbox3 {
    width: 100%;
    margin: 1em 0 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.plan-container2 .textbox3 dt {
    position: relative;
    display: block;
    font-weight: 500;
    color: #000;
}
.plan-container2 .textbox3 dt::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1px;
    background: #5696cb;
    vertical-align: middle;
    margin: 0 0.5em 0 0;
}
.plan-container2 .textbox3 dt::after {
    content: "";
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1px;
    background: #5696cb;
    vertical-align: middle;
    margin: 0 0 0 0.5em;
}
.plan-container2 .textbox3 dd {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
}
.plan-container2 .textbox3 dd .box {
    position: relative;
    display: block;
    width: 50%;
    padding: 1em 2em;
}
.plan-container2 .textbox3 dd .box span {
    position: relative;
    display: block;
    text-align: left;
    font-size: 0.9em;
}
.plan-container2 .textbox3 dd .box span::before {
    content: "-";
    position: absolute;
    display: block;
    left: -1em;
}
.main-booking-btn {
    position: relative;
    display: block;
    width: 10em;
    font-size: 1em;
    color: #fff;
    text-align: center;
    background: #376d99;
    padding: 0.6em;
    border-radius: 2em;
    margin: 2em auto;
    cursor: pointer;
    font-weight: 500;
    border:2px solid #fff;
}
.main-booking-btn:hover {
    background: #fff;
    border: 2px solid #376d99;
    color: #376d99;
}
.customize-container1 {
    padding-top: 3em;
    margin-top: 2em;
    border-top:1px solid #a4a4a4;
}
.plan-bar {
    justify-content: space-between;
    border-top: 1px solid #a4a4a4;
    padding: 3em 0 0 0;
    margin-top: 0;
}
.plan-bar.customize-bar {
    justify-content: flex-end;
    border: 0px;
}

.plan-bar .plan-bar-right {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    float: right;
}
.plan-bar-right .notebox1 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.plan-bar-right .notebox1 span {
    position: relative;
    display: block;
    font-size: 0.8em;
    color: #163567;
    margin: 0 1.5em 0 0;
}
.plan-bar-right .notebox1 span::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: none;
    vertical-align: middle; 
    margin: 0 0.5em 0 0;
}
.plan-bar-right .notebox1 span:nth-child(2)::before {
    background: #e6afbd;
}
.plan-bar-right .notebox1 span:nth-child(3)::before {
    background: #a4a4a4;
}
.plan-bar-right .notebox2 {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.plan-bar-right .notebox2 .icon {
    position: relative;
    display: block;
    width: 2em;
    height: 2em;
    background: url(../images/icon_i_mark2.svg) no-repeat center center;
    background-size: contain;
    -webkit-transform: scale(-1,1);
    transform: scale(-1,1);
    margin: 0 0.5em 0 0;
}
.plan-bar-right .notebox2 span {
    position: relative;
    display: block;
    font-size: 1.2em;
    color: #163567;
    margin: 0 1.5em 0 0;
}
.article-content .all-btn {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top:1em;
    right: 1em;
    font-size: 1.35em;
    cursor: pointer;
}
.article-content .plan-bar .plan-bar-right .all-btn{
    position: relative;
    top: auto;
    right: auto;
}
.article-content .all-btn::after {
    content: "全部展開";
    font-weight: 500;
    color: #5c99cd;
    padding: 0 0 0 0.5em;
    
}
.article-content .all-btn .icon{
    position: relative;
    display: block;
    width: 1.2em;
    height: 1.2em;
    text-align: center;
    border:2px solid #b7e0fb;
    background: #fff;
}
.article-content .all-btn .icon::before {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
}
.article-content .all-btn .icon::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.article-content .all-btn.expand .icon::after {
    display: none;
}
.article-content .all-btn.expand::after {
    content: "全部關閉";
}
.check-table-list {
    position: relative;
    display: block;
    width: 100%;
}
.check-table-list .check-table-title {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0.5em 2em;
    background: #f0f2f2;
    margin: 0.4em 0 0 0;
}
.check-table-list .check-table-title span {
    color: #5c99cd;
    font-weight: 500;
    font-size: 1.3em;
}
.check-table-list .check-table-title.new::after {
    content: "NEW!";
    position: relative;
    display: block;
    font-weight: 500;
    color: #eb6877;
    margin: 0 0 0 0.8em;
}
.check-table-list .check-table-box {
    position: relative;
    display: block;
    width: 100%;
}
.check-table-list .check-table-box dt {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #d5edfc;
    margin: 0.2em 0 0 0;
}
.check-table-list .check-table-box dt .titlebox {
    padding: 0.5em 2em 0.5em 2em;
}
.check-table-list.check-list-optional .check-table-box dt .titlebox {
    width:60%;
}
.check-table-list.check-list-optional .check-table-box dt .pricebox {
    width:20%;
}
.check-table-list .check-table-box dt .titlebox span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 1em;
    font-weight: 500;
    color: #163567;
}
.check-table-list .check-table-box dt .titlebox span:nth-child(1) {
    min-width: 3em;
}
.check-table-list .check-table-box .expand-btn{
    position: relative;
    display: block;
    width: 1.8em;
    height: 1.8em;
    text-align: center;
    border:2px solid #b7e0fb;
    background: #fff;
    margin: 0 4.5em 0 0;
}
.check-table-list .check-table-box .expand-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
}
.check-table-list .check-table-box .expand-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 90%;
    height: 2px;
    top:calc(50% - 1px);
    left: 5%;
    background: #b7e0fb;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.check-table-list .check-table-box.expand .expand-btn::after {
    display: none;
}
.check-table-list .check-table-box dd{
    position: relative;
    display: none;
    width: 100%;
}
.check-table-list .check-table-box.expand dd{
    display: block;
    background: rgb(237,238,238);
    background: linear-gradient(0deg, rgba(240,240,240,1) 0%, rgba(255,255,255,1) 47%);
}
.check-table-list .check-table-box dd .check-table {
    border: 0;
    border-spacing: 0;
    width: 100%;
}
.check-table-list .check-table-box dd .check-table tr {
    position: relative;
}
.check-table-list .check-table-box dd .check-table tr th,
.check-table-list .check-table-box dd .check-table tr td{
    position: relative;
    border: 0;
    border-spacing: 0;
    border-right: 1px solid #fff;
    vertical-align: middle;
    text-align: center;
    background: #6aa0d0;
    padding: 0.2em 0;
}
.check-table-list .check-table-box dd .check-table tr th span {
    color: #fff;
    font-size: 1em;
}
.check-table-list .check-table-box dd .check-table tr td{
    border-bottom:1px solid #f0f2f2;
    border-right: 1px solid #f0f2f2;
    background: none;
    padding: 1em 1em;
    font-size: 0.9em;
}
.check-table-list .check-table-box dd .check-table tr th:nth-child(1),
.check-table-list .check-table-box dd .check-table tr td:nth-child(1){
    width: 30%;
}
.check-table-list .check-table-box dd .check-table tr th:nth-child(2),
.check-table-list .check-table-box dd .check-table tr td:nth-child(2){
    width: 55%;
}
.check-table-list .check-table-box dd .check-table tr th:nth-child(3),
.check-table-list .check-table-box dd .check-table tr td:nth-child(3){
    width: 15%;
}
.check-table-list .check-table-box dd .check-table tr td .textbox {
    font-size: 0.9em;
}
.check-table-list .check-table-box dd .check-table tr td .icon-dot {
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: none;
    margin: 0 0.3em;
}
.check-table-list .check-table-box dd .check-table tr td .icon-dot.dot1 {
    background: #5696cb;
}
.check-table-list .check-table-box dd .check-table tr td .icon-dot.dot2 {
    background: #e6afbd;
}
.check-table-list .check-table-box dd .check-table tr.sub-item-title td,
.check-table-list .check-table-box dd .check-table tr.sub-item td{
    border-bottom:0px;
}
.check-table-list .check-table-box dd .check-table tr.sub-item.sub-item-last td {
    border-bottom:1px solid #f0f2f2;
}
.check-table-list .check-table-box dd .check-table tr.sub-item-title span{
    position: relative;
    background: #d5edfc;
    padding: 0.2em 0.5em;
    left: -0.5em;
}
.check-table-list .check-table-box dd .check-table2 {
    position: relative;
    display:flex;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    margin: 0.2em 0;
}
.check-table-list .check-table-box dd .check-table2 .table-box {
    position: relative;
    display: block;
    width: 50%;
}
.check-table-list .check-table-box dd .check-table2.type2 .table-box:nth-child(1){
    width: 80%;
}
.check-table-list .check-table-box dd .check-table2.type2 .table-box:nth-child(2){
    width: 20%;
}
.check-table-list .check-table-box dd .check-table2 .table-box .titlebox {
    position: relative;
    display: block;
    border: 0;
    border-spacing: 0;
    border-right: 1px solid #fff;
    vertical-align: middle;
    text-align: center;
    background: #6aa0d0;
    padding: 0.2em 0;
    color: #fff;
    font-size: 1em;
    font-weight: 500;
}
.check-table-list .check-table-box dd .check-table2 .table-box .textbox{
    position: relative;
    display: block;
    border-bottom:1px solid #f0f2f2;
    border-right: 1px solid #f0f2f2;
    background: none;
    padding: 1em 1em;
    font-size: 0.9em;
    height: calc(100% - 2.8em);
}
.check-table-list .check-table-box dd .check-table2.type2 .table-box:nth-child(2) .textbox{
    text-align: center;
}
.check-table-list .check-table-box dd .check-table2 .table-box.price-cell {
    display: none;
}
.check-table-list .check-table-box dd .check-table2 .table-box.note-cell {
    display: none;
}
.check-table-list .check-table-box .note-btn {
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_i_mark2.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0 0 0.2em;
    vertical-align: middle;
    cursor: pointer;
}
.check-table-list .check-table-box .note-content {
    position: absolute;
    display: none;
    margin: 2.5em 0 0 -8em;
    width: 18em;
    background: rgb(237,238,238);
    background: linear-gradient(0deg, rgba(237,238,238,1) 0%, rgba(255,255,255,1) 47%);
    z-index: 1;
    border:1px solid #a4a4a4;
    padding: 2em 1em;
}
.check-table-list .check-table-box .note-content.expand {
    display: inline-block;
}
.check-table-list .check-table-box .note-content .textbox {
    font-size: 1em;
    line-height: 150%;
    color: #b43a48;
    font-weight: 500;
}
.check-table-list .check-table-box .note-content .close-btn {
    position: absolute;
    display: block;
    width: 1.2em;
    height: 1.2em;
    right: 0.3em;
    top:0.3em;
    cursor: pointer;
}
.check-table-list .check-table-box .note-content .close-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    left: 0;
    background: #5d5d5d;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.check-table-list .check-table-box .note-content .close-btn::after{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top:calc(50% - 1px);
    left: 0;
    background: #5d5d5d;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.plan-bar-right .notebox2 span {
    position: relative;
    display: block;
    font-size: 1.2em;
    color: #163567;
    margin: 0 1.5em 0 0;
}
.booking-index-note .note-list{
    text-align: left;
}
.booking-index-note .note-list dt span {
    font-size: 1.3em;
    font-weight: 500;
    color: #5696cb;
    vertical-align: middle;
}
.booking-index-note .note-list dt::before {
    content: "";
    position: relative;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: url(../images/icon_i_mark.svg) no-repeat center center;
    background-size: contain;
    vertical-align: middle;
    margin: 0 0.5em 0 0;
}
.booking-index-note .note-list li {
    position: relative;
    padding: 0 0 0 1.5em;
    text-indent: -1.5em;
}
.booking-index-note .note-list li::before {
    position: relative;
    content: " - ";
    padding: 0 0.5em 0;
}
@media screen and (max-width: 1200px) {
    .check-table-list.check-list-optional .check-table-box dt .titlebox {
        width:80%;
    }
    .check-table-list.check-list-optional .check-table-box dt .pricebox {
       display: none;
    }
    .check-table-list.check-list-optional .check-table-box .note-btn {
        display: none;
    }
    .check-table-list.check-list-optional .check-table-box .note-content.expand {
        display: none;
    }
    .stage-plan .main-content-article .top-textbox .font-size-btn {
        display: none;
    }
    .plan-container1 {
        font-size: 3.5vw;
    }
    .plan-container1 .textbox {
        text-align: left;
    }
    .plan-container2 {
        font-size: 3.5vw;
    }
    .plan-container2 .textbox1 {
        width: 100%;
        margin: 1em 0 0 0;
    }
    .plan-container2 .textbox2 {
        width: 100%;
        margin: 1em 0 0 0;
    }
    .plan-container2 .textbox3 {
        width: 100%;
        margin: 1em 0 0 0;
    }
    .plan-container2 .textbox3 dd {
        flex-direction: column;
    }
    .plan-container2 .textbox3 dd .box {
        width: 100%;
    }
    .plan-bar-right .notebox1 span:nth-child(1) {
        display: none;
    }
    .plan-bar-right .notebox2 {
        display: none;
    }
    .plan-bar {
        width: 96vw;
        left: calc(50% - 48vw);
    }
    .article-content .all-btn {
        font-size: 1em;
    }
    .article-content .all-btn::after {
        padding: 0 0 0 0.2em;
    }
    .check-table-list {
        font-size: 3vw;
        width: 96vw;
        left: calc(50% - 48vw);
        
    }
    .check-table-list .check-table-box dt .titlebox {
        padding: 0.5em 2em 0.5em 2em;
    }
    .check-table-list .check-table-box .expand-btn{
        margin: 0 3em 0 0;
    }
    .check-table-list .check-table-box dd .check-table tr th:nth-child(1),
    .check-table-list .check-table-box dd .check-table tr td:nth-child(1){
        width: 30%;
    }
    .check-table-list .check-table-box dd .check-table tr th:nth-child(2),
    .check-table-list .check-table-box dd .check-table tr td:nth-child(2){
        width: 55%;
    }
    .check-table-list .check-table-box dd .check-table tr th:nth-child(3),
    .check-table-list .check-table-box dd .check-table tr td:nth-child(3){
        width: 15%;
    }
    .check-table-list .check-table-box dd .check-table tr td .icon-dot {
        width: 0.8em;
        height: 0.8em;
    }
    .booking-index-note .note-list{
        text-align: left;
    }
    .booking-index-note .note-list dt span {
        font-size: 1.3em;
        font-weight: 500;
        color: #5696cb;
        vertical-align: middle;
    }
    .booking-index-note .note-list dt::before {
        content: "";
        position: relative;
        display: inline-block;
        width: 1.5em;
        height: 1.5em;
        background: url(../images/icon_i_mark.svg) no-repeat center center;
        background-size: contain;
        vertical-align: middle;
        margin: 0 0.5em 0 0;
    }
    .check-table-list .check-table-box dd .check-table2 {
        align-items: flex-start;
        flex-direction: column;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box {
        width: 100%;
    }
    .check-table-list .check-table-box dd .check-table2.type2 .table-box:nth-child(1){
        width: 100%;
    }
    .check-table-list .check-table-box dd .check-table2.type2 .table-box:nth-child(2){
        width: 100%;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box .titlebox {
        position: relative;
        display: block;
        border: 0;
        border-spacing: 0;
        border-right: 1px solid #fff;
        vertical-align: middle;
        text-align: center;
        background: #6aa0d0;
        padding: 0.2em 0;
        color: #fff;
        font-size: 1em;
        font-weight: 500;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box .textbox{
        height: auto;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box.price-cell {
        display: block;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box.price-cell .textbox {
        text-align: center;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box.note-cell {
        display: block;
    }
    .check-table-list .check-table-box dd .check-table2 .table-box.note-cell .textbox {
        text-align: center;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .plan-container1 {
        font-size: 1.8vw;
    }
    .plan-container2 {
        font-size: 1.8vw;
    }
    .article-content .all-btn {
        font-size: 1.2em;
    }
    .article-content .all-btn::after {
        padding: 0 0 0 0.2em;
    }
    .check-table-list {
        font-size:2vw;     
    }
}
.customize-container {
    font-size: 1vw;
}
.customize-container .intro-text {
    text-align: center;
}
.customize-container .booking-form-list dt {
    color: #282828;
    padding: 0 0 1.5em 0;
    line-height: 150%;
}
.customize-container .booking-form-list dt::before {
    content: "Q.";
    position: absolute;
    display: block;
    left: -1.6em;
}
.customize-container .booking-form-list dl dd .sub-list li {
    
}
.customize-container .booking-form-list dd input[type="checkbox"] + label {
    min-width: 17em;
    margin: 0 0.5em 0 0;
}
.customize-container .booking-form-list dd input[type="checkbox"] + label::before{
    border:2px solid #acdbfa;
}
.customize-container .booking-form-list input[type="checkbox"] + label::after {
    left: 0.1em;
    top:0.1em;
}
.customize-container .booking-form-list #gender-male + label,
.customize-container .booking-form-list #gender-female + label{
    display: flex;
    justify-content: center;
    align-items: center;
}
.customize-container .booking-form-list #gender-male + label::before,
.customize-container .booking-form-list #gender-female + label::before{
    position: relative;
    display: block;
    border: 0px;
    background: url(../images/icon_male.svg) no-repeat center center;
    background-size: contain;
    width: 3em;
    height: 3em;
    vertical-align: middle;
    order: 2;
}
.customize-container .booking-form-list #gender-female + label::before {
    background: url(../images/icon_female.svg) no-repeat center center;
    background-size: contain;
}
.customize-container .booking-form-list #gender-male:checked + label::before,
.customize-container .booking-form-list #gender-female:checked + label::before{
    display: none;
}
.customize-container .booking-form-list #gender-male + label::after,
.customize-container .booking-form-list #gender-female + label::after{
    position: relative;
    border: 0px;
    background: url(../images/icon_male_hover.svg) no-repeat center center;
    background-size: contain;
    width: 3em;
    height: 3em;
    vertical-align: middle;
    display: none;
    order: 2;
}
.customize-container .booking-form-list #gender-female + label::after{
    background: url(../images/icon_female_hover.svg) no-repeat center center;
    background-size: contain;
}
.customize-container .booking-form-list #gender-male:checked + label::after,
.customize-container .booking-form-list #gender-female:checked + label::after{
    display: block;
}
.customize-container .booking-form-list #gender-male + label span,
.customize-container .booking-form-list #gender-female + label span {
    order: 1;
    padding: 0 0.5em 0 0;
}
.customize-container .btnbox {
    display: flex;
    justify-content: center;
    align-items: center;
}
.customize-container .btnbox .main-booking-btn {
    margin: 0 1em;
}
@media screen and (max-width: 1200px) {
    .customize-container {
        font-size: 4vw;
    }
    .customize-container .booking-form-list dl{
        padding-left: 2em;
    }
    .customize-container .booking-form-list dl dd .sub-list li {
        width: 100%;
    }
    .customize-container .booking-form-list dl dd .sub-list.sub-list-gender li {
        width: 40%;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .customize-container {
        font-size: 2vw;
    }
    .customize-container .booking-form-list dl dd .sub-list li {
        width: 40%;
    }
    .customize-container .booking-form-list dl dd .sub-list.sub-list-gender li {
        width: 40%;
    }
}

.customize-items-container {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.customize-items-list {
    position: relative;
    display: block;
    font-size: 1vw;
    line-height: 100%;
    margin: 0 auto 2em auto;
    min-width: 25em;
    box-shadow: 0 0.5em 0.5em rgba(0,0,0,0.1);
}
.customize-items-list dt {
    position: relative;
    display: block;
    background: #f0f2f2;
    color: #282828;
    font-weight: 500;
    font-size: 1.2em;
    text-align: center;
    padding: 0.5em 1em;
}
.customize-items-list dd {
    position: relative;
    display: block;
    margin: 0 0 0.2em 0;
}
.customize-items-list dd label {
    position: relative;
    display: block;
    cursor: pointer;
}
.customize-items-list dd label span {
    position: relative;
    display: inline-block;
    font-weight: 500;
    vertical-align: top;
    font-size: 1em;
    padding: 0 0 0 1.8em;
}
.customize-items-list dd label input {
    display: none;
}
.customize-items-list dd label .textbox {
    position: relative;
    display: block;
    font-size: 1.2em;
    height: 100%;
    padding: 2em 2em;
    background: rgb(237,238,238);
    background: linear-gradient(180deg, rgba(245,245,245,1) 0%, rgba(255,255,255,1) 47%);
}
.customize-items-list dd label .textbox span {
    position: relative;
    display: inline-block;
    margin: 0 0 0 0.5em;
    color: #163567;
    font-weight: 500;
}
.customize-items-list dd label .textbox::before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 1em;
    height: 1em;
    border:2px solid #acdbfa;
    top:2.2em;
    left: 2em;
}

.customize-items-list dd label input:checked + .textbox::after
{
    content: "";
    position: absolute;
    display: inline-block;
    width: 0.5em;
    height: 1em;
    border-bottom:0.3em solid #003f76;
    border-right:0.3em solid #003f76;
    top:0.3em;
    pointer-events: none;
    left: 2.2em;
    top:2em;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
}
.customize-items-list dd label input:checked + .textbox {
    background: #c4e6fc;
}
.total-price-box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 1em;
    margin: 1.5em 0 0 0;
    background: rgb(237,238,238);
    background: linear-gradient(0deg, rgba(245,245,245,1) 0%, rgba(255,255,255,1) 47%);
    box-shadow: 0 0em 0.8em rgba(0,0,0,0.2);
}
.total-price-box .box1 .t1 {
    position: relative;
    display: inline-block;
    font-size: 0.9em;
    font-weight: 500;
    color: #282828;
}
.total-price-box .box1 .t2 {
    position: relative;
    display: inline-block;
    font-size: 1em;
    font-weight: 500;
    color: #5696cb;
    padding: 0 0.5em;
}
.total-price-box .box2 {
    position: relative;
    display: block;
    margin: 0 2em;
}
.total-price-box .box2 .t3 {
    position: relative;
    display: inline-block;
    font-size: 1.2em;
    font-weight: 500;
    color: #282828;
}
.total-price-box .box2 .t4 {
    position: relative;
    display: inline-block;
    font-size: 1.2em;
    font-weight: 500;
    color: #eb6877;
    padding: 0 0.5em;
}
.total-price-box .main-booking-btn {
    margin: 1em 0;
}
.customize-btnbox {
    position: relative;
    display: flex;
}
.customize-btnbox .main-booking-btn {
    width: 14em;
    padding: 0.6em 0em;
    margin: 3em 1em;
}
.customize-btnbox .main-booking-btn.download-icon::after {
    content: "";
    position: relative;
    display: inline-block;
    width: 2em;
    height: 2em;
    vertical-align: middle;
    background: url(../images/icon_download.svg) no-repeat center center;
    background-size: contain;
    margin: 0 0 0 0.5em;
}
.customize-btnbox .main-booking-btn.download-icon:hover::after {
    background: url(../images/icon_download_hover.svg) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1200px) {
    .customize-items-list {
        font-size: 3.5vw;
        min-width: inherit;
        width: 100%;
        max-width: 600px;
    }
    .total-price-box {
        font-size: 3vw;
        flex-wrap: wrap;
        padding-top: 2em;
    }
    .total-price-box .box1,
    .total-price-box .box2 {
        font-size: 3.5vw;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .customize-items-list {
        font-size: 2vw;
    }
    .total-price-box {
        font-size: 2vw;
        flex-wrap: wrap;
        padding-top: 0;
    }
    .total-price-box .box1,
    .total-price-box .box2 {
        font-size: 2vw;
    }
}
.employee-checkup-features-intro {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2em 0;
    font-size: 1vw;
}
.employee-checkup-features-intro .titlebox {
    position: relative;
    display: block;
    font-size: 2em;
    color: #376d99;
    margin-bottom: 0.9em;
}
.employee-checkup-features-intro .textbox {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.3em;
    line-height: 180%;
    color: #282828;
}
.employee-checkup-features-intro .textbox span {
    font-size: 1.2em;
    color: #eb6877;
    font-weight: 500;
}
.employee-checkup-features-container1 {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1vw;
    user-select: none;
}
.employee-checkup-features-container1 .item {
    position: relative;
    display: block;
    width: 100%;
    height: 19vw;
    overflow: hidden;
}
.employee-checkup-features-container1 .item .imgbox {
    position: absolute;
    width: 68%;
    right: 0;
}
.employee-checkup-features-container1 .item:nth-child(even) .imgbox {
    left: 0;
    right: auto;
}
.employee-checkup-features-container1 .item .imgbox img {
    width: 100%;
    height: auto;
}
.employee-checkup-features-container1 .item .imgbox::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
    background: #3d86c4;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.employee-checkup-features-container1 .item:hover .imgbox::after {
    opacity: 0.85;
}
.employee-checkup-features-container1 .item .bg1 {
    position: absolute;
    display: block;
    width: 52%;
    left: 0;
}
.employee-checkup-features-container1 .item:nth-child(even) .bg1 {
    left: auto;
    right: 0;
}
.employee-checkup-features-container1 .item .bg1 img {
    width: 100%;
    height: auto;
}
.employee-checkup-features-container1 .item .bg2 {
    position: absolute;
    display: block;
    left: 0;
    bottom: 0;
    font-size: 4em;
    line-height: 100%;
    font-weight: 300;
    color: #fff;
    opacity: 0.3;
    overflow: hidden;
    width: 40%;
    white-space: nowrap;
}
.employee-checkup-features-container1 .item:nth-child(even) .bg2 {
    left: auto;
    right: 0;
    width: 48%;
}
.employee-checkup-features-container1 .item .textbox {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    right: 0;
    top:0;
    color: #fff;
    font-size: 0.9em;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    padding: 0 1em;
}
.employee-checkup-features-container1 .item:nth-child(even) .textbox {
    right: auto;
    left: 0;
}
.employee-checkup-features-container1 .item:hover .textbox {
    opacity: 1;
}
.employee-checkup-features-container1 .item .textbox ul {
    position: relative;
    display:block;
}
.employee-checkup-features-container1 .item .textbox li {
    position: relative;
    display:block;
    margin: 0.5em;
}
.employee-checkup-features-container1 .item .textbox li::before {
    content: "▶";
    position: absolute;
    display: block;
    left: -1.5em;
    color: #acdbfa;
}
.employee-checkup-features-container1 .item .titlebox {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 47%;
    height: 100%;
    left: 0;
    top:0;
    color: #5696cb;
    font-size: 1.7em;
    line-height: 150%;
}
.employee-checkup-features-container1 .item:nth-child(even) .titlebox {
    left: auto;
    right: 0;
}
.employee-checkup-features-container1 .item .titlebox::after {
    content: "";
    position: relative;
    display: block;
    width: 2em;
    height: 2em;
    background: url(../images/icon_more_arrow.svg) no-repeat center center;
    background-size: contain;
}
.employee-checkup-features-container1 .item:nth-child(even) .titlebox::after {
    -webkit-transform: scale(-1,1);
    transform: scale(-1,1);
}
@media screen and (max-width: 1200px) {
    .employee-checkup-features-intro {
        font-size: 3vw;
    }
    .employee-checkup-features-container1 {
        position: relative;
        display: block;
        width: 100%;
        font-size: 3.5vw;
    }
    .employee-checkup-features-container1 .item {
        height: auto;
        margin-bottom: 1em;
    }
    .employee-checkup-features-container1 .item .imgbox {
        position: relative;
        width: 100%;
        right: auto;
    }
    .employee-checkup-features-container1 .item:nth-child(even) .imgbox {
        left: auto;
        right: auto;
    }
    .employee-checkup-features-container1 .item .imgbox img {
        width: 100%;
        height: auto;
    }
    .employee-checkup-features-container1 .item .imgbox::after {
        display: none;
    }
    .employee-checkup-features-container1 .item .bg1 {
        display: none;
    }
    .employee-checkup-features-container1 .item .bg2 {
        display: none;
    }
    .employee-checkup-features-container1 .item .textbox {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        right: auto;
        top:auto;
        color: #fff;
        font-size: 0.9em;
        opacity: 1;
        background: #3d86c4;
        padding: 3em 2em 1em 2em;
    }
    .employee-checkup-features-container1 .item:nth-child(even) .textbox {
        right: auto;
        left: auto;
    }
    .employee-checkup-features-container1 .item .textbox ul {
        position: relative;
        display:block;
        margin: 0;
        padding: 0;
    }
    .employee-checkup-features-container1 .item .titlebox {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        left: auto;
        top:auto;
        line-height: 100%;
        font-size: 1.5em;
        margin: -1.3em auto -1.3em auto;
        z-index: 1;
    }
    .employee-checkup-features-container1 .item .titlebox span {
        background: #fff;
        border:0.2em solid #3d86c4;
        border-radius: 2em;
        padding: 0.5em 1em;
    }
    .employee-checkup-features-container1 .item .titlebox br {
        display: none;
    }
    .employee-checkup-features-container1 .item:nth-child(even) .titlebox {
        left: auto;
        right: auto;
    }
    .employee-checkup-features-container1 .item .titlebox::after {
        display: none;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .employee-checkup-features-intro {
        font-size: 2vw;
    }
    .employee-checkup-features-container1 {
        font-size: 2vw;
    }
    .employee-checkup-features-container1 .item .textbox {
        font-size: 1.2em;
    }
}
.employee-process-container {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1vw;
}
.employee-process-container .employee-process-bg{
    position: relative;
    display: block;
    width: 17.5vw;
    margin: 0 auto;
}
.employee-process-list {
    position: absolute;
    display: block;
    width: 100%;
    left: 0;
    top:0;
}
.employee-process-list .item {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    top:20vw;
    right:calc(50% + 1vw);
    width: 30vw;
}
.employee-process-list .item:nth-child(even) {
    align-items: flex-start;
    right: auto;
    left:calc(50% + 1vw);
}
.employee-process-list .item:nth-child(1) {
    top:6vw;
}
.employee-process-list .item:nth-child(2) {
    top:17vw;
}
.employee-process-list .item:nth-child(3) {
    top:32vw;
}
.employee-process-list .item:nth-child(4) {
    top:44vw;
}
.employee-process-list .item:nth-child(5) {
    top:57vw;
}
.employee-process-list .item:nth-child(6) {
    top:73vw;
}
.employee-process-list .item:nth-child(7) {
    top:86vw;
}
.employee-process-list .item:nth-child(8) {
    top:99vw;
}

.employee-process-list .item .titlebox {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.employee-process-list .item:nth-child(even) .titlebox {
    justify-content: flex-start;
}
.employee-process-list .item .titlebox .icon {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0.5em 0 0;
}
.employee-process-list .item .titlebox .icon > span {
    position: relative;
    display: block;
    font-size: 1.4em;
    line-height: 100%;
    color: #fff;
    font-weight: 500;
}
.employee-process-list .item .titlebox .icon::before {
    content: "";
    position: absolute;
    display: block;
    width: 2.5em;
    height: 2.5em;
    background: #5696cb;
    border-radius: 50%;
}
.employee-process-list .item:nth-child(even) .titlebox .icon::before {
    background: #18bfa6;
}
.employee-process-list .item .titlebox > span {
    position: relative;
    display: block;
    font-size: 1.4em;
    font-weight: 500;
    line-height: 100%;
    color: #5696cb;
    padding: 0 0 0 0.7em;
}
.employee-process-list .item:nth-child(even) .titlebox > span {
    color: #18bfa6;
}
.employee-process-list .item .textbox {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    color: #282828;
    font-size: 1.2em;
    line-height: 150%;
    padding: 1.2em 0;
}
.employee-process-list .item .textbox p {
    font-size: 1.2em;
    line-height: 150%;
}
.employee-process-list .item:nth-child(even) .textbox {
    align-items: flex-start;
}
.employee-process-list .item .textbox ul {
    position: relative;
    display:flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    margin: 0;
}
.employee-process-list .item:nth-child(even) .textbox ul {
    align-items: flex-start;
}
.employee-process-list .item .textbox li {
    position: relative;
    display:block;
    text-align: left;
    line-height: 150%;
    font-size: 1em;
    margin: 0 0 0.2em 0;
}
.employee-process-list .item .textbox li::before {
    content: "▶";
    position: absolute;
    display: block;
    left: -1.5em;
    color: #acdbfa;
}
.employee-service-btn {
    width: auto;
    width: 13em;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.9em 0;
    margin-top: -3.6vw;
}
.employee-service-btn span {
    position: relative;
    display: block;
    line-height: 100%;
}
.employee-service-btn::after {
    content: "";
    position: relative;
    display: block;
    border-right:0.2em solid #fff;
    border-top:0.2em solid #fff;
    width: 0.8em;
    height: 0.8em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    box-sizing: border-box;
    top:0.1em;
    margin: 0 0 0 0.5em;
}
.employee-service-btn:hover::after {
    border-right:0.2em solid #376d99;
    border-top:0.2em solid #376d99;
}
@media screen and (max-width: 1200px) {
    .employee-process-container {
        font-size: 3vw;
    }
    .main-content-article2 .top-textbox{
        display: none;
    }
    .employee-process-container .employee-process-bg{
        display: none;
    }
    .employee-process-list {
        position: relative;
        padding: 2em 0;
    }
    .employee-process-list .item {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        top:auto;
        right:auto;
        width: 100%;
        margin: 0 0 3.5em 0;
    }
    .employee-process-list .item:nth-child(even) {
        align-items: center;
        right: auto;
        left:auto;
    }
    .employee-process-list .item:nth-child(1) {
        top:auto;
    }
    .employee-process-list .item:nth-child(2) {
        top:auto;
    }
    .employee-process-list .item:nth-child(3) {
        top:auto;
    }
    .employee-process-list .item:nth-child(4) {
        top:auto;
    }
    .employee-process-list .item:nth-child(5) {
        top:auto;
    }
    .employee-process-list .item:nth-child(6) {
        top:auto;
    }
    .employee-process-list .item:nth-child(7) {
        top:auto;
    }
    .employee-process-list .item:nth-child(8) {
        top:auto;
    }

    .employee-process-list .item .titlebox {
        justify-content: center;
        font-size: 1.2em;
    }
    .employee-process-list .item:nth-child(even) .titlebox {
        justify-content: center;
    }
    .employee-process-list .item .textbox {
        justify-content: flex-start;
        align-items: flex-start;
    }
    .employee-process-list .item .textbox ul {
        align-items: flex-start;
    }
    .employee-process-list .item:nth-child(even) .textbox ul {
        align-items: flex-start;
    }
    .employee-service-btn {
        margin-top: 0;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .employee-process-container {
        font-size: 1.8vw;
    }
}
.onsite-service-container {
    position: relative;
    display: block;
    width: 100%;
    font-size: 1vw;
}
.onsite-service-container .sub-menubox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 2em 0;
}
.onsite-service-container .sub-menubox .item {
    position: relative;
    display: block;
    padding: 0 2em;
    cursor: pointer;
    border-right:1px solid #5696cb;
}
.onsite-service-container .sub-menubox .item:last-child{
    border-right:0px;
}
.onsite-service-container .sub-menubox .item span {
    position: relative;
    display: block;
    font-size: 1.4em;
    line-height: 100%;
    font-weight: 500;
    color: #a4a4a4;
}
.onsite-service-container .sub-menubox .item.current span,
.onsite-service-container .sub-menubox .item:hover span{
    color: #5696cb;
}
.onsite-service-container .sub-menubox .item.current span::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    bottom: -0.6em;
    height: 2px;
    background: #acdbfa;
}
.onsite-service-container .sub-menubox .item.current span::after {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 0.25em 0.25em 0.25em;
    border-color: transparent transparent #acdbfa transparent;
    left: calc(50% - 0.25em);
    bottom: calc(2px - 0.6em);
}
.titlebox-center {
    position: relative;
    display: block;
    text-align: center;
    font-size: 2em;
    font-weight: 500;
    color: #376d99;
    padding: 2em 0 1.5em 0;
}
.textbox-center {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.1em;
    line-height: 180%;
    color: #282828;
    padding: 0 0 2em 0;
}
.onsite-service-box1 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.onsite-service-box1 .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 0 0.5em rgba(0,0,0,0.2);
    margin: 0 0.5em;
    width: calc(100% / 3 - 1em);
    padding: 2em 1em;
}
.onsite-service-box1 .item::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 0.8em;
    background: #a1c9ec;
    bottom: 0;
}
.onsite-service-box1 .item .imgbox {
    position: relative;
    display: block;
    width: 50%;
    margin: 0 auto;
}
.onsite-service-box1 .item .imgbox img {
    width: 100%;
    height: auto;
}
.onsite-service-box1 .item .textbox {
    position: relative;
    display: block;
    text-align: center;
}
.onsite-service-box1 .item .textbox .t1 {
    position: relative;
    display: block;
    font-size: 1.4em;
    font-weight: 500;
    color: #000;
}
.onsite-service-box1 .item .textbox .t2 {
    position: relative;
    display: block;
    font-size: 1em;
    line-height: 150%;
    padding: 1em 0;
}

.onsite-service-box2 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap:wrap;
    padding: 2em 0 0 0;
}
.onsite-service-box2 .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    margin: 0 0.5em;
    width: calc(100% / 2 - 2em);
    padding:1em;
}

.onsite-service-box2 .item .imgbox {
    position: relative;
    display: block;
    width: 35%;
    margin: 0 auto;
    z-index: 1;
}

.onsite-service-box2 .item .imgbox img {
    width: 100%;
    height: auto;
}
.onsite-service-box2 .item .textbox {
    position: relative;
    display: block;
    text-align: center;
    background: #acdbfa;
    padding: 5.5em 1em 1em 1em;
    margin-top: -5em;
    width: 100%;
    min-height: 13em;
    border-radius: 1em;
}
.onsite-service-box2 .item .textbox .t1 {
    position: relative;
    display: block;
    font-size: 1.4em;
    font-weight: 500;
    color: #000;
}
.onsite-service-box2 .item .textbox .t2 {
    position: relative;
    display: block;
    font-size: 0.9em;
    line-height: 150%;
    padding: 1em 0;
    color: #4d4d4d;
}
.onsite-service-box2 .item .t3 {
    position: relative;
    display: block;
    font-size: 0.9em;
    line-height: 150%;
    padding: 1em 0 0 0;
    color: #4d4d4d;
    text-align: center;
}
.onsite-service-box2 .item .textbox::after {
    content: "";
    position: absolute;
    display: block;
    width: 5em;
    height: 5em;
    background: url(../images/onsite_service_icon8.svg) no-repeat center center;
    background-size: contain;
    bottom: -0.3em;
    right: -0.3em;
}
.onsite-service-box3 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
    flex-direction: column;
}
.onsite-service-box3 p {
    font-size: 1em;
    line-height: 150%;
    color: #282828;
}
.onsite-service-box3 .onsite-service-table {
    border: 0;
    border-spacing: 0;
    width: 80%;
    margin: 1em 0;
}
.onsite-service-box3 .onsite-service-table td {
    text-align: center;
    border:0px;
    border-right: 1px solid #fbb03b;
    border-bottom: 1px solid #fbb03b;
    padding: 1em 0;
    color: #282828;
}
.onsite-service-box3 .onsite-service-table td:nth-child(1) {
    width: 20%;
}
.onsite-service-box3 .onsite-service-table td:nth-child(2),
.onsite-service-box3 .onsite-service-table td:nth-child(3){
    width: 40%;
}
.onsite-service-box3 .onsite-service-table td:last-child {
    border-right:0px;
}
.onsite-service-box3 .onsite-service-table tr:last-child td {
    border-bottom:0px;
}
.onsite-service-box3 .onsite-service-table .t1 {
    font-size: 0.9em;
    font-weight: 500;
}
.onsite-service-box3 .onsite-service-table .t2 {
    font-size: 1.8em;
    font-weight: 500;
}
.onsite-service-box3 .onsite-service-table .t3 {
    font-size: 1em;
    padding: 0 0.5em;
}
.onsite-service-box4 {
    position: relative;
    display: block;
    width: 100%;
}
.onsite-service-box4 img {
    position: relative;
    display: block;
    width: 65%;
    margin: 0 auto;
}
.onsite-service-footer {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border:1px solid #a4a4a4;
    border-bottom: 0.3em solid #5696cb;
    margin: 3em 0 0.5em 0;
    padding: 4em 2em;
}
.onsite-service-footer .item {
    position: relative;
    display: block;
    width: calc(100% / 3);
    text-align: center;
    border-right: 1px solid #5696cb;
    color: #282828;
}
.onsite-service-footer .item:last-child {
    border-right: 0px;
}
.onsite-service-footer .item .t1 {
    font-size: 0.8em;
    line-height: 100%;
}
.onsite-service-footer .item .t2 {
    font-size: 1em;
    font-weight: 500;
    line-height: 180%;
}
@media screen and (max-width: 1200px) {
    .onsite-service-container {
        font-size: 3vw;
    }
    .onsite-service-container .sub-menubox {
        padding: 1em 0;
    }
    .onsite-service-container .sub-menubox .item {
        padding: 0.5em 1em;
        margin: 0.7em 0;
    }
    .onsite-service-container .sub-menubox .item:nth-child(2){
        border-right:0px;
    }
    .onsite-service-container .onsite-service-features::before {
        content: "";
        position: relative;
        display: block;
        width: 40vw;
        max-width: 400px;
        height:40vw;
        max-height: 400px;
        background: url(../images/onsite_icon_top.png) no-repeat center center;
        background-size: contain;
        margin: -1em auto 1em auto;
    }
    .onsite-service-container .onsite-service-features .item{
        border-bottom: 1px solid #5696cb;
    }
    .onsite-service-container .onsite-service-features .titlebox {
        margin: 0;
        align-items: flex-start;
    }
    .onsite-service-container .onsite-service-features .titlebox span {
        border: 0px;
        background: none;
        color: #003f76;
        padding: 1em 0;
    }
    .onsite-service-container .onsite-service-features .item .textbox {
        background: none;
        color: #282828;
        padding-top: 0;
        padding-bottom: 2em;
        padding-right: 0;
        font-size: 1.1em;
    }
    .onsite-service-box1 {
        align-items: center;
        flex-direction: column;
    }
    .onsite-service-box1 .item {
        margin: 1em 0;
        width: 80%;
    }
    .onsite-service-box2 {
        align-items: center;
        flex-direction: column;
        padding:2em 0 0 0;
    }
    .onsite-service-box2 .item {
        justify-content: center;
        align-items: center;
        flex-direction: column;
        margin: 0.5em 0;
        width: 100%;
        padding:1em;
    }
    .onsite-service-box2 .item .textbox {
        padding: 4.5em 1em 1em 1em;
        margin-top: -4em;
        min-height: inherit;
    }
    .onsite-service-box2 .item .textbox .t1 {
        font-size: 1.2em;
    }
    .onsite-service-box2 .item .textbox .t2 {
        font-size: 0.9em;
    }
    .onsite-service-box2 .item .t3 {
        font-size:1.3em;
    }
    .onsite-service-box3 p {
        font-size: 1.3em;
    }
    .onsite-service-box3 .onsite-service-table {
        width: 100%;
        margin: 1em 0;
    }
    .onsite-service-box3 .onsite-service-table td {
        padding: 1em 0;
    }
    .onsite-service-box3 .onsite-service-table td:nth-child(1) {
        width: 25%;
    }
    .onsite-service-box3 .onsite-service-table td:nth-child(2){
        width: 30%;
    }
    .onsite-service-box3 .onsite-service-table td:nth-child(3){
        width: 45%;
    }
    .onsite-service-box3 .onsite-service-table td:last-child {
        border-right:0px;
    }
    .onsite-service-box3 .onsite-service-table tr:last-child td {
        border-bottom:0px;
    }

    .onsite-service-box4 img {
        width: 100%;
    }
    .onsite-service-footer {
        flex-direction: column;
        width: 100%;
        margin: 3em 0 0.5em 0;
        padding: 4em 2em;
    }
    .onsite-service-footer .item {
        width: 100%;
        border-right: 0px;
        border-bottom: 1px solid #5696cb;
        padding: 1em;
    }
    .onsite-service-footer .item:last-child {
        border-bottom: 0px;
    }
    .onsite-service-footer .item .t1 {
        font-size: 1.3em;
    }
    .onsite-service-footer .item .t2 {
        font-size: 1.4em;
    }
}
@media screen and (max-width: 1200px) and (min-width: 600px){
    .onsite-service-container {
        font-size: 1.8vw;
    }
}
.international-container {
    position: relative;
    display: none;
    width: 100%;
}
.international-container.expand {
    display: block;
}
.international-banner {
    position: relative;
    display: block;
    width: 65vw;
    left: calc(50% - 32.5vw);
    margin: 2em 0;
}
.international-banner .banner-img {
    position: relative;
    display: block;
    width: 100%;
}
.international-banner .banner-img img {
    width: 100%;
    height: auto;
}
.international-banner .banner-text {
    position: absolute;
    display: block;
    width: 16em;
    font-size: 1.4em;
    color: #fff;
    padding: 0.2em;
    border:2px solid #fff;
    left: calc(50% - 8em);
    top:8vw;
    text-align: center;
}
.international-banner .banner-items {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 95%;
    margin: -7em auto 0 auto;
}
.international-banner .banner-items .item {
    position: relative;
    display: block;
    width: calc(100% / 5 - 1em);
    margin: 0 0.5em;
    box-shadow: 0 0.2em 0.5em rgba(0,0,0,0.2);
    background: #fff;
    padding: 0.5em;
    min-height: 17em;
    overflow: hidden;
}
.international-banner .banner-items .item::after {
    content: "";
    position: absolute;
    display: block;
    width: 3em;
    height: 3em;
    background: #acdbfa;
    bottom: -1.5em;
    right: -1.5em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.international-banner .banner-items .item:nth-child(even) {
    top:1em;
}
.international-banner .banner-items .item .icon-img {
    position: relative;
    display: block;
    width: 30%;
    margin: 1em auto;
}
.international-banner .banner-items .item .icon-img img {
    width: 100%;
}
.international-banner .banner-items .item .t1 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1em;
    line-height: 100%;
    font-weight: 500;
    color: #5696cb;
    padding: 0 0 1em 0;
    border-bottom: 1px solid #a4a4a4;
}
.international-banner .banner-items .item .t2 {
    position: relative;
    display: block;
    font-size: 0.9em;
    line-height: 150%;
    padding: 1em 0.5em 1em 0;
}
.international-banner .banner-items .item .t2 span {
    position: relative;
    display: block;
    padding: 0 0 0 1.2em;
}
.international-banner .banner-items .item .t2 span::before {
    content: "▶";
    position: absolute;
    display: block;
    left: 0em;
    color: #acdbfa;
    font-size: 0.7em;
}
.international-mapbox {
    position: relative;
    display: block;
    width: 90%;
    margin: 0 auto 3em auto;
}
.international-mapbox img {
    width: 100%;
}
.international-box1 {
    position: relative;
    display: block;
    width: 100%;
}
.international-box1 .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin: 0 0 4em 2em;
}
.international-box1 .item .item-left {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 5em;
}
.international-box1 .item .item-left .icon-img {
    position: relative;
    display: block;
    width: 7em;
    height: 7em;
}
.international-box1 .item .item-left .icon-img img {
    width: 100%;
    height: auto;
}
.international-box1 .item .item-left .titlebox {
    position: relative;
    display: block;
    padding: 0 0 0 1em;
}
.international-box1 .item .item-left .titlebox span {
    position: relative;
    display: block;
    font-size: 2em;
    font-weight: 500;
    line-height: 100%;
}
.international-box1 .item:nth-child(1) .item-left .titlebox span {
    color: #fbb03b;
}
.international-box1 .item:nth-child(2) .item-left .titlebox span {
    color: #f0b3b6;
}
.international-box1 .item:nth-child(3) .item-left .titlebox span {
    color: #aed26a;
}
.international-box1 .item:nth-child(4) .item-left .titlebox span {
    color: #88c8de;
}
.international-box1 .item .item-right {
    position: relative;
    display: block;
    padding: 0 5em;
    border-left: 1px solid #a4a4a4;
}
.international-box1 .item .item-right .t1 {
    position: relative;
    display: block;
    font-size: 1.4em;
    color: #003f76;
    font-weight: 500;
}
.international-box1 .item .item-right .t2 {
    position: relative;
    display: block;
    font-size: 1em;
    color: #282828;
}

.international-box2 {
    position: relative;
    display: block;
    width: 100%;
}
.international-box2::before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: calc(100% - 7em);
    left: 10.5em;
    top:5em;
    background: #000;
}
.international-box2 .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin: 0 0 3em 2em;
}
.international-box2 .item .item-left {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 5em;
}
.international-box2 .item .item-left .icon-img {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 7em;
    height: 7em;
    background: #5696cb;
    border-radius: 50%;
}
.international-box2 .item:nth-child(even) .item-left .icon-img {
    background: #18bfa6;
}
.international-box2 .item .item-left .icon-img .s1 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1em;
    color: #fff;
    font-weight: 700;
    line-height: 100%;
}
.international-box2 .item .item-left .icon-img .s2 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 2em;
    line-height: 100%;
    color: #fff;
    font-weight: 700;
}
.international-box2 .item .item-left .titlebox {
    position: relative;
    display: block;
    padding: 0 0 0 1em;
}
.international-box2 .item .item-left .titlebox span {
    position: relative;
    display: block;
    font-size: 2em;
    font-weight: 500;
    line-height: 100%;
    color: #5696cb;
}
.international-box2 .item:nth-child(even) .item-left .titlebox span {
    color: #18bfa6;
}
.international-box2 .item .item-right {
    position: relative;
    display: block;
    padding: 0 5em 0 0;
    width: 36em;
}
.international-box2 .item .item-right::after {
    content: "";
    position: relative;
    display: block;
    width: 4em;
    height: 4em;
    background: url(../images/international_icon10.svg) no-repeat center center;
    background-size: contain;
    left: 5em;
}
.international-box2 .item:last-child .item-right::after {
    display: none;
}
.international-box2 .item .item-right .t1 {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 1.4em;
    color: #fff;
    font-weight: 500;
    line-height: 100%;    
    margin: 0 0 0.3em 0;
}
.international-box2 .item .item-right .t1 span {
    background: #5696cb;
    padding: 0.5em 1em;
    border-radius: 2rem;
}
.international-box2 .item:nth-child(even) .item-right .t1 span {
    background: #18bfa6;
}
.international-box2 .item .item-right .t2 {
    position: relative;
    display: block;
    font-size: 1em;
    color: #282828;
}
.international-box2 .item .item-right .t2 span.arrow-li {
    position: relative;
    display: block;
    padding: 0 0 0 1.5em;
}
.international-box2 .item .item-right .t2 span.arrow-li::before {
    content: "▶";
    position: absolute;
    display: block;
    left: 0.5em;
    color: #acdbfa;
    font-size: 0.7em;
}
.international-box3 {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    flex-wrap: wrap;
}
.international-box3 .item {
    position: relative;
    display: block;
    width: calc(100% / 2 - 0.6em);
    margin: 0.3em 0.3em;
    background: #93c2e4;
    border-radius: 0.6em;
    padding: 1em 0.5em 0.5em 0.5em;
}
.international-box3 .item:nth-child(3),
.international-box3 .item:nth-child(4),
.international-box3 .item:nth-child(5){
    width: calc(100% / 3 - 0.6em);
}
.international-box3 .item dt {
    position: relative;
    display: block;
    text-align: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.4em;
    line-height: 100%;
    padding: 0 0 1em 0;
}
.international-box3 .item dd {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    border-radius: 0.6em;
    box-shadow: 0 0 0.2em rgba(0,0,0,0.2);
    padding: 0.5em;
    min-height: 10em;
}
.international-box3 .item:nth-child(1) dd,
.international-box3 .item:nth-child(2) dd{
    min-height: 14em;
}
.international-box3 .item dd .textbox {
    position: relative;
    display: block;
    font-size: 1.2em;
    line-height: 150%;
    font-weight: 500;
    color: #5d5d5d;
}
.international-box3 .item dd .textbox .t2 {
    font-size: 2.5em;
    line-height: 130%;
}
.international-box4 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
    width: 100%;
    margin: 4em 0 0 0;
}
.international-box4 .item {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background: rgb(230,230,230);
    background: linear-gradient(0deg, rgba(230,230,230,1) 0%, rgba(249,249,249,1) 37%);
    box-shadow: 0 0 0.2em rgba(0,0,0,0.4);
    width: calc(100% / 3 - 2em);
    margin: 2em 1em;
    border-radius: 0.5em;
    min-height: 10em;
}
.international-box4 .item .icon-img {
    position: absolute;
    display: block;
    width: 3em;
    top:-1.5em;
    left: calc(50% - 1.5em);
}
.international-box4 .item .t1 {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1em;
    line-height: 150%;
    padding: 0 1em;
}
.international-box4 .item .t2 {
    position: absolute;
    display: block;
    text-align: center;
    font-size: 1em;
    line-height: 100%;
    bottom: 0.6em;
}
.international-footer {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    border:1px solid #a4a4a4;
    border-bottom: 0.3em solid #5696cb;
    margin: 5em 0 0.5em 0;
    padding: 4em 2em;
}
.international-footer .titlebox {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1.4em;
    line-height: 100%;
    font-weight: 500;
    color: #282828;
}
.international-footer .textbox {
    position: relative;
    display: block;
    text-align: center;
    font-size: 1em;
    line-height: 180%;
    color: #282828;
    margin: 1.5em 0 0 0;
}
.international-footer .textbox b {
    font-weight: 700;
}
.booking-index-list-employee li .textbox .text1{text-align: left;}
@media screen and (max-width: 1200px) {
    
    .international-banner {
        width: 100vw;
        left: calc(50% - 50vw);
    }
    .international-banner .banner-text {
        top:14vw;
    }
    .international-banner .banner-items {
        width: 95%;
        margin: -2em auto 0 auto;
        flex-wrap: wrap;
    }
    .international-banner .banner-items .item {
        width: calc(100% / 2 - 1em);
        margin: 0 0.5em 1em 0.5em;
        min-height: 17em;
    }
    .international-banner .banner-items .item:nth-child(even) {
        top:0;
    }
    .international-banner .banner-items .item .t2 {
        font-size: 1em;
    }
    .international-banner .banner-items .item .t2 span {
        padding-left: 1.5em;
    }
    .international-mapbox {
        width: 100%;
        margin: 0 auto 3em auto;
    }
    .international-box1 .item {
        width: 100%;
        margin: 0 0 4em 0;
    }
    .international-box1 .item .item-left {
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-direction: column;
        padding: 0;
    }
    .international-box1 .item .item-left .icon-img {
        width: 6em;
        height: 6em;
    }
    .international-box1 .item .item-left .titlebox {
        padding: 0.5em 0 0 0;
    }
    .international-box1 .item .item-right {
        padding: 0 0 0 1em;
        border-left: 0px;
    }
    .international-box2::before {
        content: "";
        position: absolute;
        display: block;
        width: 1px;
        height: calc(100% - 13em);
        left: 3em;
        top:5em;
        background: #000;
    }
    .international-box2 .item {
        margin: 0 0 3em 0;
    }
    .international-box2 .item .item-left {
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 0;
    }
    .international-box2 .item .item-left .icon-img {
        width: 6em;
        height: 6em;
    }
    .international-box2 .item .item-left .icon-img .s1 {
        font-size: 0.9em;
    }
    .international-box2 .item .item-left .icon-img .s2 {
        font-size: 1.8em;
    }
    .international-box2 .item .item-left .titlebox {
        position: absolute;
        padding: 0;
        top: 0;
        left: 7em;
        white-space: nowrap;
    }
    .international-box2 .item .item-right {
        padding: 3em 0 0 1em;
        width: 65vw;
    }
    .international-box3 {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        width: 100%;
        flex-wrap: wrap;
    }
    .international-box3 .item {
        width: calc(100% - 0.6em);
    }
    .international-box3 .item:nth-child(3) dd .textbox .t2,
    .international-box3 .item:nth-child(4) dd .textbox .t2,
    .international-box3 .item:nth-child(5) dd .textbox .t2{
        font-size: 1.5em;
    }
    .international-box4 {
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
        width: 500%;
        margin: 4em 0 0 0;
    }
    .international-box4 .item {
        width: 70vw;
        border-radius: 1em;
        min-height: 12em;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .international-box1 {
        margin-left: 20%;
    }
    .international-box2 {
        margin-left: 20%;
        width: 60%;
    }
}
.international-box5 {
    position: relative;
    display: block;
    width: 100%;
    margin: 5em 0 0 0;
}
.international-box5 .item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}
.international-box5 .item .logo-img {
    position: relative;
    display: block;
    width: 15em;
}
.international-box5 .item .logo-img img {
    width: 100%;
    height: auto;
}
.international-box5 .item .textbox {
    position: relative;
    display: block;
    width: calc(100% - 20em);
    padding: 0 0 0 3em;
    margin: 0 0 5em 0;
    font-size: 1em;
}
.international-box5 .item .textbox dt {
    position: relative;
    display: block;
    font-size: 1.4em;
    font-weight: 500;
    color: #5696cb;
    line-height: 100%;
    padding: 0 0 1em 0;
}
.international-box5 .item .textbox dd {
    position: relative;
    display: block;
    font-size: 1em;
    color: #282828;
    line-height: 150%;
}
.international-box5 .item .textbox dd p {
    font-size: 1em;
    padding: 0 0 2em 0;
}
.international-box5 .item .textbox dd p.line-border {
    border-top:1px solid #282828;
    border-bottom:1px solid #282828;
    padding: 2em 0;   
}
@media screen and (max-width: 1200px) {
    .international-box5 .item {
        flex-direction: column;
    }
    .international-box5 .item .logo-img {
        width: 60%;
        max-width: 220px;
        margin: 0 auto 3em auto;
    }
    .international-box5 .item .textbox {
        width: 100%;
        padding: 0;
        text-align: left;
        margin-bottom: 2em;
    }
    .international-box5 + .international-footer {
        margin-top: 0;
    }
}
@media screen and (min-width: 600px) and (max-width: 1200px) {
    .international-box5 {
        font-size: 2vw;
    }
}


/*Cyrus*/

.lianan-content1{padding-top: 1rem;}
.about-service-content1,.about-service-content5{padding-top:0rem;}
.about-service-info-container .textbox dl{
        padding: 1.5rem 0 0 0;
}
.about-service-info-container .textbox dl dt{
        margin: 0 0 .5rem 0;
}
.stage-business,.stage-corporation{
        background-color: rgba(255,255,255,1);
}
.hero-banner .imgbox{min-height: 2rem;}
.g-recaptcha {
/*    width: 302px;
    margin-left: auto;
    margin-right: auto; */
    display: none;
}
.integrative-container .reserve-info .box1 .textbox p{
    padding-left: 3.5em;
    text-indent: -3.5em;
}
.integrative-container .reserve-info .box2 .textbox p{
    padding-left: 1em;
    text-indent: -1em;
}
.global-main-title{margin-bottom: 1rem;}
.stage-index-blog .global-main-title{margin-bottom: 2.6vw;}
.team-division-list{justify-content: flex-start;}
.team-division-list li{margin: .5vw.3vw;}
.media-list{justify-content: flex-start;}
.media-list .item{margin-right: 3vw;}
.media-list .item:last-child{margin-right: 0vw;}
.article-content img{height:auto !important;}
@media screen and (min-width: 1201px){
    .weekly-menu-container-fixed-h{display: none;}
    .weekly-menu-container.expand + .weekly-menu-container-fixed-h{display: block;margin:0 0 1.2vw 0;height: calc(2vw + 2px);}
    .booking-form-list .notebox.note2 .note-list{
        display: flex;
        flex-direction: column;
        align-items: center;
        width: auto;
    }
    
}
@media screen and (max-width: 1200px){
    .corporation-intro .textbox .t2 p,.corporation-info-container .textbox dl dd p{
        padding: .5em 0;
    }
    .article-content iframe{
        height: calc(95vw * 0.5625)
    }
    .environment-info-box .position-list li dl.center dt{
        text-align: center;
        padding-bottom: 0;
    }
    .environment-info-box .position-list ul{
        display: flex;
        align-items: center;
    }
}

@media screen and (max-width: 640px){
    .breadcrumb{padding:2.66rem 0; }
    .stage-booking .stage-main-title .textbox{
        margin-top: 5.33rem;
    }
    .nav .nav-iconbtn{
        top: calc(100dvh - 70px);
        /*top: initial;
        bottom*/
    }
    .nav-sreach-container{
        top: calc(100dvh - 70px - 12vw - 10px);
    }
    .feature-textbox .textbox .dot-box{
        top: calc(100%  + 2rem);
    }
}

@media screen and (max-width: 375px){
    .about-service-info-container .textbox dl dd p{padding-top: 0;}
    .nav .nav-menu ul li{padding: 12px 0;}
}
@media screen and (max-width: 320px){
    .nav .nav-menu ul li{font-size: 18px;line-height: 18px;padding: 10px 0;}
    .nav .nav-iconbtn{top:calc(100dvh - 80px) }
}
@media screen and (min-width: 600px) and (max-width: 1200px){
    .about-service-info-container .textbox dl dd p{padding-top: 0;}
    .corporation-intro .imgbox,.business-content1 .business-info-container .imgbox,.functional-feature .imgbox,.about-service-content3 .about-service-info-container .imgbox {
        width: 60vw;
    }
    .business-content1 .business-info-container .imgbox{margin:0 auto;}
    .integrative-content3{padding-bottom: 1rem;}
    .integrative3-imgbox {
        width: 60%;
    }

}
@media screen and (max-width: 640px)  and (max-height: 650px){
    .nav .nav-menu ul li{padding: 10px 0;font-size: 21px;line-height: 1em;}
}