@charset "utf-8";


/*==================================================
---TOPbanner
====================================================*/
.fixed_btn
{
  position: fixed;
  bottom: 10px;
  right: 10px;
  
  border-radius: 6px;
  background-color: rgba(255, 139, 92, 0.7);
  padding: 6px 3px;
}


/*==================================================
---COMMON
====================================================*/
body {
    font-family: YakuHanJPs_Noto, 'Work Sans', 'fot-tsukuardgothic-std', 'Noto Serif JP', sans-serif;
    animation-name: opacity;
    letter-spacing: .1em;
    color: #333;
    line-height: 25px;
    animation-duration: 1.5s;
    overflow-x: hidden;
    position: relative;
    z-index: -2;
    margin-top: 110px;
      min-width: 1140px;
    overflow: auto;
}

img {
    -webkit-backface-visibility: hidden;
    vertical-align: bottom;
}

.bodyWrap {
    z-index: -1;
}
.taopNewsBox{
    display: none !important;
}
.pcHeader {
    display: flex;
    justify-content: space-between;
    position: fixed;
    width: 100%;
    box-sizing: border-box;
    padding: 20px 80px;
    background: #fff;
    z-index: 56;
    align-items: center;
    padding-bottom: 14px;
    top: 0;
    min-width: 1140px;
}

.spheader {
    display: none;
}

.pcHeader .gnavi__lists {
    display: flex;
    align-items: baseline;
}

.pcHeader ul a {
    display: block;
    color: #333;
    margin-left: 30px;
    font-weight: bold;
    transition: .4s;
    padding: 3px 0;
}

.pcHeader ul a:hover {
    color: #2FBEDD;
}

.hero {
    position: relative;
    height: 90vh;
    overflow: hidden;
}


.hero .swiper-slide::after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: #333;
    z-index: 5;
    opacity: .4;
}

.hero .swiper-slide img {
    height: 100vh;
    width: 100%;
    object-fit: cover;
}

.swiper-slide01 img {
    object-position: left;
}

.heroOpTextBox {
    position: absolute;
    bottom: 38%;
    left: 5%;
    z-index: 6;
}

.heroOpTextBox {
    color: #fff;
}

.heroOpTextBox h1 {
    font-size: 35px;
    margin-bottom: 17px;
}



.slider-thumbnail .swiper-slide {
    opacity: .5;
    transition: opacity .5s;
    width: calc(100% / 5.5) !important;
}

.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
    opacity: 1;
}

.swiper {
    max-width: 989px;
    width: 100%;
}

.swiper-slide img {
    height: auto;
    width: 100%;
}

.swiper-slide .des {
    margin-bottom: 14px;
}

.swiper-slide h3 {
    margin-top: 10px;
    font-size: 25px;
    color: #0065AE;
    text-decoration: underline;
    margin-bottom: 10px;
}

.slider-thumbnail {
    cursor: pointer;
    margin-bottom: 30px;
}

.slider-thumbnail .swiper-slide {
    padding-bottom: 0;
    margin-right: 10px;
}

.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
    opacity: 1;

}


.slider-thumbnail .swiper-slide.swiper-slide-thumb-active:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    border: 4px solid #82c7f3;
    border-radius: 13px;
}

.udabothm {
    background: #f1f7fc;
    padding: 40px;
    padding-bottom: 100px;
}

#udabothm {
    padding-top: 150px;
}

.udabothm .swiper-slide {
    padding-bottom: 0;
}

.udabothm .slider img {
    height: 500px;
    object-fit: cover;
}

.udabothm .titleBox h3 {
    text-align: center;
    font-size: 26px;
    margin-bottom: 18px;

}

.swiper-slide img {
    height: auto;
    width: 100%;
    border-radius: 47px;
}

.slider-thumbnail img {
    height: 117px;
    object-fit: cover;
    border-radius: 13px;
}

.udaboutNav {
    margin-top: 40px;
}

.udaboutNav ul {
    display: flex;
    list-style: none;
    max-width: 1122px;
    margin: 0 auto;
    padding: 0 40px;
    column-gap: 20px;
}

.udaboutNav ul li {
    width: 33%;
}

.udaboutNav ul a {
    display: block;
    border: solid 2px #82c7f3;
    color: #82c7f3;
    text-align: center;
    padding: 14px 0;
    transition: .4s;
}

.udaboutNav ul .current {
    background: #82c7f3;
    color: #fff;
    position: relative;
}

.udaboutNav ul .current::after {
    background-image: url(../img/udaboutNav.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 56px;
    height: 10px;
    content: "";
    position: absolute;
    top: 113%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.udAboutOptextBox {
    text-align: center;
    margin-top: 87px;
    font-size: 20px;
}

.udAboutOptextBox p {
    line-height: 34px;
    padding: 0 40px;
}

.udaboutNav ul a:hover {
    background: #82c7f3;
    color: #fff;
}


.greetingTitleBox {
    font-size: 57px;
    color: rgba(47, 190, 221, 0.53);
}

.DirectorBoxWArp .titleh3 {
    margin-top: -33px;
    margin-bottom: 20px;
}

.DirectorBoxWArp .des {
    margin-bottom: 28px;
    line-height: 30px;
}

.DirectorBoxWArp .titleh3 h3 {
    display: inline-block;
    font-size: 31px;
    background: #fff;
    position: relative;
    z-index: 2;
    padding: 13px 14px 10px 10px;
}

.DirectorBoxWArpFlex {
    display: flex;

    align-items: center;
    margin-bottom: 27px;
}

.DirectorBoxWArpFlex .entitle {
    font-size: 30px;
    padding-right: 46px;
}

.DirectorBoxWArpFlex .jatitle {
    font-size: 21px;
    line-height: 35px;
    font-weight: bold;
    color: #4c4c4c;
    border-left: solid 1px rgba(51, 51, 51, 0.6);
    padding-left: 40px;
}


.gnavi__wrap ul {
    list-style: none;
}

.gnavi__list:not(:first-child)::before {
    content: "";
    width: 1px;
    height: 100%;
    /* background-color: #fff; */
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s;
}

.dropdown__lists {
    opacity: 0;
    /*デフォルトでは非表示の状態にしておく*/
    width: 100%;
    position: absolute;
    top: 60px;
    left: 0;
    transition: all .3s;
}

.gnavi__list:hover .dropdown__lists {
    opacity: 1;
    /*Gナビメニューにホバーしたら表示*/
}

.gnavi__list a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #1b4059;
    font-size: 15px;
    letter-spacing: 0.05em;
    font-weight: 600;
    transition: all .3s;
}


.dropdown__list {

    transition: all .3s;
    position: relative;
}





.gnavi__list {
    position: relative;
    transition: all .3s;
}

.dropdown__list:not(:first-child)::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    transition: .4s;
}

.pcHeader .dropdown__list a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: #0065AE;
    text-decoration: none;
    position: relative;
    margin-left: 0;
    padding: 18px 18px;
    background-color: #EBF7FF;
}

.pcHeader .dropdown__list a img {
    margin-right: 20px;
}

.dropdown__list a::before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #0065AE;
    border-left: 2px solid #0065AE;
    transform: rotate(135deg);
    position: absolute;
    right: 15px;
    top: calc(50% - 5px);
}

.dropdown__lists {
    visibility: hidden;
    opacity: 0;
    transition: all .3s;
    width: 100%;
    width: 340px;
    position: absolute;
    top: 93px;
    left: 32px;
}

.gnavi__list:hover .dropdown__lists {
    visibility: visible;
    /*Gナビメニューにホバーしたら表示*/
    opacity: 1;
    /*不透明度1*/
}

.dropdown__lists::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 90px;
    height: 2px;
    content: "";
    z-index: 5;
    background: #0065AE;
}

.pularrow {
    padding-left: 20px;
    position: relative;
    z-index: 5;
    margin-bottom: -5px;
}


.gnavi__list {
    text-align: center;
}

.gnavi__list .jatitle {
    font-size: 14px;
}

.gnavi__list .entitle {
    font-size: 10px;
    color: #74533F;
    margin-top: -10px;
}



#servicelist {
    background: #FFF9F1;
    padding-top: 104px;
    padding-bottom: 97px;
    margin-bottom: 64px;
}

.servicelistWrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    box-sizing: border-box;
}

.servicelistFlex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

.servicelistFlex a {
    transition: .4s;
    overflow: hidden;
}

.servicelistFlex a:hover::before {
    transform: scale(6);
    border-radius: 6px;
}

.servicelistFlex > div {
    width: 18.8%;
    background: #fff;
    box-shadow: 0 0 22px 0 #adadad40;
    border-radius: 6px;
}

.servicelistFlex a {
    text-align: center;
    position: relative;
    padding-top: 26px;
    display: block;
    padding-bottom: 21px;
    color: #74533F;
    font-size: 20px;
    border-radius: 6px;
}

.servicelistFlex h3 {
    position: relative;
    z-index: 6;
}

.servicelistFlex a:hover {
    color: #fff;
}

.servicelistFlex .imgBox {
    position: relative;
    z-index: 5;
    margin-bottom: 9px;
}
.comBtn a {
    display: block;
    text-align: center;
    max-width: 301px;
    width: 100%;
    height: 57px;
    line-height: 57px;
    background: #0065AE;
    border-radius: 100vw;
    color: #fff;
    margin: 0 auto;
    font-weight: 600;
    transition: all .4s cubic-bezier(.36, .14, 0, 1) 0s;
    -webkit-transform: scale(1);
    box-sizing: border-box;
    border: solid 2px #0065AE;
}
.comBtn a:hover {
    background: #fff;
    color: #0065AE;
}


.servicelistFlex a::before {
    position: absolute;
    content: "";
    width: 110px;
    height: 110px;
    border-radius: 100vw;

    top: 14%;
    left: 51px;
    right: 0;
    transition: all 1s cubic-bezier(.36, .14, 0, 1) 0s;
    -webkit-transform: scale(1);
    transform: scale(1);
}


.servicelistFlex .color01::before {
    background: #FF8B5C;
}

.servicelistFlex .color02::before {
    background: #5EDA9E;
}

.servicelistFlex .color03::before {
    background: #77CBEF;
}

.servicelistFlex .color04::before {
    background: #FAB967;
}

.servicelistFlex .color05::before {
    background: #E589F4;
}


#facilities {
    margin-bottom: 90px;
}

#facilities .TitleBox {
    text-align: center;
}

#facilities .swiper .swiper-slide {
    display: flex;
    align-items: center;
    column-gap: 40px;
}

.facilitiesWrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

.facilitiesWrap .TitleBox h2 {
    font-size: 30px;
    color: #74533F;
    margin: 5px 0;
    margin-top: 10px;
}

.facilitiesWrap .TitleBox {
    margin-bottom: 30px;
}


.facilitiesWrap .TitleBox .enTitle {
    color: #ADADAD;
    font-size: 20px;
}

.swiper .swiper-slide .imgBox {
    width: 60%;
}

.swiper .swiper-slide .textBox {
    width: 40%;

}

.swiper .swiper-slide .textBox .des {
    font-size: 15px;
    font-weight: 600;
}



#message {
    background: rgba(0, 101, 174, 0.42);
    padding: 27px;
}

.messageWrap {
    background: #0065AE;
    padding: 40px 27px;
}


#message .titleBox {
    text-align: center;
}


#message .titleBox h2 {
    font-size: 30px;
    color: #fff;
    margin: 5px 0;
    margin-top: 10px;
}

#message .titleBox {
    margin-bottom: 20px;
}


#message .titleBox .enTitle {
    color: rgba(255, 255, 255, 0.42);
    font-size: 20px;
}

#message .textBox {
    background: #fff;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    box-sizing: border-box;
    padding: 36px 59px;
}

#message .textBox .title {
    text-align: center;
    font-size: 30px;
    color: #0065AE;
    font-weight: bold;
    line-height: 38px;
}

.dot3 {
    text-align: center;
    margin-bottom: 26px;
}

#message .textBox .des {
    text-align: center;
    font-size: 20px;
    color: #74533F;
    font-weight: 600;
    line-height: 34px;
    margin-bottom: 20px;
}

#message .Mflex {
    display: flex;
    margin-bottom: 30px;
}

#message .Mflex img {
    width: 100%;
}

#profile {
    background-image: url(../img/profileBg.png);
    background-size: cover;
    padding: 76px 40px;
    margin-bottom: 42px;
}

.profileWrap {
    max-width: 1200px;
    margin: 0 auto;
}

#profile .titleBox {
    text-align: center;
}

#profile .titleBox h2 {
    font-size: 30px;
    color: #74533F;
    margin: 5px 0;
    margin-top: 10px;
}

#profile .titleBox {
    margin-bottom: 40px;
}


#profile .titleBox .enTitle {
    color: #ADADAD;
    font-size: 20px;
}

#profile .flexBox {
    display: flex;
    justify-content: space-between;
    column-gap: 42px;
}

#profile .flexBox img {
    width: 100%;
}

#profile .flexBox > div {
    width: 49%;
}

#profile .flexBox .des {
    margin-bottom: 26px;
    color: #74533F;
    font-size: 15px;
    font-weight: bold;
}

#profile .flexBox h3 {
    color: #0065AE;
    font-size: 25px;
    margin-bottom: 14px;
}

#profile .flexBox .nameFlex {
    display: flex;
    margin-bottom: 20px;
    align-items: baseline;
}

#profile .flexBox .nameFlex h4 {
    color: #74533F;
    font-size: 30px;
    padding-right: 37px;
    position: relative;
    margin-right: 20px;
}

#profile .flexBox .nameFlex h4::after {
    position: absolute;
    content: "/";
    right: 0;
    font-size: 30px;
    color: #74533F;
}

#profile .flexBox .nameFlex .nameen {
    color: #959595;
}

.opNewsBoxFlex {
    display: flex;
}

.opNewsBox {
    display: flex;
    background: #fff;
    border: solid 2px #0065AE;
    border-radius: 100vw;
    position: absolute;
    left: 5%;
    bottom: 66px;
    z-index: 5;
    padding: 12px 39px;
}

.heroNewsWrap {
    position: absolute;
    left: 5%;
    bottom: 30px;
    z-index: 5;
}

.heroNewsCard {
    background: #fff;
    border: solid 2px #0065AE;
    border-radius: 16px;
    padding: 6px 24px;
    position: relative;
}

.heroNewsCard .opNewsBox {
    position: relative;
    left: auto;
    bottom: auto;
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 0;
    margin-bottom: 0;
}

.heroNewsCard .opNewsBox:last-of-type {
    border-bottom: none;
}

.heroNewsCardBtn {
    text-align: right;
    padding: 6px 0 4px;
}

.heroNewsCardBtn a {
    color: #0065AE;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}

.opNewsBox a {
    display: block;
}

.opNewsBox .title a {
    font-size: 15px;
    font-weight: 600;
    color: #74533F;
    text-decoration: underline;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 250px;
}

.opNewsBox .cate {
    font-size: 13px;
    background: #0065AE;
    color: #fff;
    padding: 0 10px;
    margin: 0 16px;
    line-height: 25px;
}

.opNewsBox .day {
    font-size: 15px;
}

.opNewsBox .btn a {
    color: #0065AE;
    font-size: 17px;
    font-weight: 600;
    margin-left: 16px;
}

.pcCopy {
    position: fixed;
    left: 20px;
    top: 40%;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    z-index: 5;
    color: #C3C3C3;
    font-size: 11px;
}

.optitmeSchedule {
    position: absolute;
    background: #fff;
    right: 17px;
    bottom: 41px;
    z-index: 5;
    max-width: 536px;
    width: 100%;
    padding-top: 14px;
    margin-bottom: 5px;
}

.optitmeSchedule h3 {
    text-align: center;
    color: #0065AE;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
}

.mapflex {
    display: flex;
    padding: 0 24px;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}


.mapflex .adress {
    width: 74%;
    font-weight: 600;
    font-size-adjust: 18px;
    color: #74533F;
    text-decoration: underline;
    line-height: 22px;
}

.mapflex .accessBox {
    width: 22%;
    text-align: center;
    font-weight: 600;
    color: #5EDA9E;
    position: relative;
    font-size: 19px;
}

.mapflex .accessBox::after {
    position: absolute;
    content: "";
    background-image: url(../img/mapacon.svg);
    left: -8px;
    top: 2px;
    width: 17.9px;
    height: 21.9px;
    background-size: contain;
    background-repeat: no-repeat;
}

.mapflex a {
    display: block;
}

.reserveFlex {
    display: flex;
}
.reserveFlex > a {
    width: 50%;
    text-align: center;
    display: block;
    color: #fff;
    padding: 12px 0;
    font-size: 18px;
    font-weight: bold;
    padding-left: 18px;
    position: relative;
}

.reserveFlex .telBox {
    background: #0065AE;
    position: relative;
}

.reserveFlex .telBox::after {
    background-image: url(../img/suketel.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.5px;
    height: 23.5px;
    left: 34px;
    top: 12px;
    content: "";
    position: absolute;
}

.reserveFlex .reserve {
    background: #FF8B5C;
}

.reserveFlex .reserve::after {
    background-image: url(../img/sukeca.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.5px;
    height: 23.5px;
    left: 20px;
    top: 12px;
    content: "";
    position: absolute;
}

.biz-hour {
    display: block;
    border-collapse: collapse;
    display: flex;
    justify-content: center;
    font-weight: 600;
    margin-bottom: 10px;
}

.biz-hour th,
.biz-hour td {
    padding: 10px 14px;
    text-align: center;
    border: 1px solid #0065AE;
    font-weight: 600;
    color: #0065AE;
}

/* 最上段の表の見出し。background-colorを書き換えれば背景色が変わります。 */
.biz-hour th {
    background-color: #0065AE;
    font-weight: normal;
    font-weight: 600;
    color: #fff;
}

/* 「土」の文字色 */
.biz-hour th.sat {
    color: #fff;
}

/* 「日」の文字色 */
.biz-hour th.sun {
    color: #fff;
}


.midlelistWrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 78px;
}

.midlelistWrap > div {
    width: 48%;
}
.otherBtn a {
    display: block;
    max-width: 369px;
    width: 100%;
    text-align: center;
    background: #0065AE;
    border-radius: 100vw;
    padding: 16px 0;
    font-size: 19px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 12px;
    position: relative;
    padding-left: 40px;
    box-sizing: border-box;
}
.map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 62%;
    margin-bottom: 10px;
}

/* Google Mapのiframe */
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#midlelist .biz-hour {
    justify-content: flex-start;
}

#midlelist .logobox {


    margin-bottom: 10px;
}

#midlelist .adress {
    font-weight: 600;
    color: #74533F;
}

#midlelist .telBox {
    color: #74533F;
    margin-bottom: 30px;
}

#midlelist .des {
    font-size: 17px;
    color: #74533F;
    font-weight: bold;
}

.othertel a::after {
    background-image: url(../img/suketel.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.5px;
    height: 23.5px;
    left: 85px;
    top: 18px;
    content: "";
    position: absolute;
}

.otherres a {
    background: #FF8B5C;
}
.otherres a::after {
    background-image: url(../img/sukeca.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.5px;
    height: 23.5px;
    left: 73px;
    top: 18px;
    content: "";
    position: absolute;
}
.otheaccess {
    margin-top: 10px;
}

.otheaccess a {
    background: #5EDA9E;
}

.otheaccess a::after {
    background-image: url(../img/mapw.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.5px;
    height: 28.5px;
    left: 128px;
    top: 14px;
    content: "";
    position: absolute;
}

.ftrBanerFlex {
    display: flex;

    margin-bottom: 50px;
}

.ftrBanerFlex > div {
    width: 50%;
    position: relative;
}

.ftrBanerFlex > div img {
    width: 100%
}
.ftrBanerFlex .comBtn {
    position: absolute;
    left: 60px;
    bottom: 20px;
    z-index: 5;
    width: 81%;
}
#ftrBaner .comBtn a {
    margin: 0;
}
.footermain {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    margin-bottom: 40px;
}

.footermain > div {
    width: 48%;
}

footer .pcHeader {
    position: static;
    justify-content: center;
    margin-bottom: 20px;
}

small {
    display: block;
    text-align: center;
    padding: 5px 0;
    background: #0065AE;
    color: rgba(255, 255, 255, 0.83);
    font-size: 12px;
}

.fixnav{
  position: fixed;
   top: 50%;
  right: 0;
  -webkit-transform : translate(0,-50%);
  transform : translate(0,-50%);
  font-size: 15px;
  color: #fff;
    font-weight: bold;
  cursor: pointer;
  transition: .5s;
  z-index: 8;
  /*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;
}
.fixnav .des{
 -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
margin: 0 auto;}

.fixnav a {
    display: block;
    color: #fff;
    text-align: center;
    border-radius: 6px 0 0 6px;
    margin-bottom: 5px;
    padding: 28px 6px;
}
/*このクラスが付与されると表示する*/
.active{
  opacity: 1;
  visibility: visible;
}
.fixnav .imgBox{
    margin-bottom: 12px;
}

.fixmail{
    background: #0065AE;
}
.fixtel{
    background: #FF8B5C;
}

.fixmap{
    background: #5EDA9E;
}

.taopNewsBoxBtn{
    text-align: center;
    font-weight: bold;
}
.taopNewsBoxBtn a{
    display: block;
    color: #0065AE;
}

.taopNewsBoxBtn a {
 display: none;
}

.footermainLogoBox{
    margin-bottom: 20px;
}



#news {
    padding: 0 40px;
    padding-top: 71px;
    padding-bottom: 160px;
    max-width: 1200px;
    margin: 0 auto;
}

#news .title {
    margin-top: -80px;
}

#news > div {
    display: flex;
    align-items: center;
}

.NewsItem {
    width: 100%;
    padding: 45px 0;

    position: relative;
    display: block;
    color: #333;
}

.NewsItemWrap a {
    border-top: solid 1px #CCCCCC;
    transition: .4s;
}

.NewsItemWrap .mainText {
    transition: .4s;
}

.NewsItemWrap a:hover .mainText {
    letter-spacing: .15em;
}

.NewsItemWrap a:hover .cateBox .cate {
    background: #2FBEDD;
    color: #fff;
    border: solid 1px #2FBEDD;
}

.NewsItemWrap a:hover::after {
    right: 4px;
}


.NewsItemOutWrap {
    width: 100%;
    font-weight: bold;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 40px;
    box-sizing: border-box;
}

.NewsItemWrap a:last-child {
    border-bottom: solid 1px #CCCCCC;
}

.NewsItemWrap a::after {
    transition: .4s;
    content: "";
    background-image: url(../img/Barrow.png);
    background-size: contain;
    width: 21px;
    height: 28px;
    position: absolute;
    right: 16px;
    top: 59px;
    background-repeat: no-repeat;
}

.cateBox {
    margin-bottom: 11px;
    display: flex;
    align-items: center;
}

.cateBox .day {
    color: #8E8E8E;
    padding-right: 16px;
    font-size: 12px;
}

.NewsItemWrap {
    width: 100%;
}



.NewsItem {
    font-size: 15px;
}

.cateBox .cate {
    border: solid 1px #8E8E8E;
    padding: 0 18px;
    color: #8E8E8E;
    font-size: 13px;
    transition: .4s;
}

#news .subTitle {
    font-size: 15px;
    font-weight: normal;
    color: #333;
}




#news .titleBox {
    margin-right: 46px;
}


#news .titleBox {
    font-weight: bold;
    margin-bottom: 40px;
    width: 34%;
}

#news .titleBox .enTitle {
    color: #2FBEDD;
    font-size: 15px;
}

#news .titleBox h2 {
    font-size: 22px;
    margin-bottom: 18px;
}



@media screen and (max-width:1280px) {
    .heroNewsItem{
        display: none;
    }
    .taopNewsBox{
        display: flex !important;
    
    }
 .opNewsBox {
    position: static;
    justify-content: center;
    max-width: 580px;
    margin: 0 auto;
    margin-bottom: 12px;
}
  #servicelist {
    padding-top: 50px;
}  
   .taopNewsBox {
    max-width: 426px;
}
    .opNewsBox .day {
    font-size: 13px;
}
    .opNewsBox .cate {
    font-size: 11px;
    padding: 0 10px;
    margin: 0 10px;
}
    .opNewsBox .title a {
    font-size: 13px;
}
    .taopNewsBoxBtn {
    margin-bottom: 59px;
}
}

@media screen and (max-width:1256px) {
.heroOpTextBox {
    bottom: 54%;
}
}






@media screen and (max-width:768px) {
    .heroNewsWrap {
        display: none;
    }
    .taopNewsBoxBtn a {
 display: block;
}
    .otheaccess a::after {
    left: 115px;
}
    .midlelistWrap .textBox {
   
    max-width: 383px;
    margin: 0 auto;
         margin-bottom: 40px;
}
   .footermain {
    max-width: 366px;
}
.pcHeader {
   display: none;
}
    .otherBtn a {
    font-size: 17px;
}
   .spheader {
    display: block;
    position: fixed;
    z-index: 99;
    background: #fff;
    width: 100%;
    padding: 9px 25px;
}
    #midlelist .telBox {
    margin-bottom: 15px;
}
    #midlelist .des {
    font-size: 15px;
}
    .midlelistWrap {
    margin-bottom: 41px;
}
    body {
     min-width: auto;
        margin-top: 0;
}
    .servicelistFlex {
   flex-wrap: wrap;
}
    .servicelistFlex > div {
    width: 48.3%;
        margin-bottom: 20px;
}
    .servicelistFlex a::before {
   
    top: 43%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
    .swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
   display: none;
}
    .hero {
    height: 100vh;
}
    #facilities .swiper .swiper-slide {
   display: block;
}
    
    .spheader .logoBox img{
        max-width: 188px;
        width: 100%;
    }
    
    
    .swiper .swiper-slide .imgBox {
    width: auto;
}
    .swiper .swiper-slide .textBox {
    width: auto;
}
    .fixnav {
    top: auto;
    -webkit-transform: none;
    transform: none;
    display: flex;
    bottom: 0;
        width: 100%;
}
    .fixnav .des {
   
    writing-mode: inherit;
}
    .fixnav>div{
        width: 100%;
    }
    .fixnav a {
  display: flex;
        align-items: center;
        border-radius: 0;
        padding: 13px 6px;
        height: 35px;
        margin-bottom: 0;
}
    .fixnav .imgBox {
    margin-bottom: 0;
}
    #profile .flexBox {
   display:block;
}
    #profile .flexBox > div {
    width: auto;
}
   #profile {
    padding: 38px 25px;
    margin-bottom: 42px;
}
   #profile .imgBpx{
        margin-bottom: 20px;
    }
    .pcCopy {
    display: none;
}
    
    .midlelistWrap {
 display: block;
}
    .midlelistWrap > div {
    width: auto;
}
   .midlelistWrap {
    padding: 0 25px;
}
    .ftrBanerFlex {
   display: block;
}
    .ftrBanerFlex > div {
    width: auto;
}
    #profile .titleBox {
    margin-bottom: 13px;
}
    .heroOpTextBox {
    bottom: 61%;
}
    .biz-hour th, .biz-hour td {
    padding: 6px 5px;
}
    .ftrBanerFlex .comBtn {
    left: 25px;
    bottom: 28px;
}
   .optitmeSchedule {
    max-width: 410px;
    width: 100%;
}
    .footermain {
   display: block;
}
    .footermain > div {
    width: auto;
}
    .optitmeSchedule h3 {
    font-size: 19px;
}
   .footermain .biz-hour {
    justify-content: flex-start;
}
    .reserveFlex > a {
    font-size: 15px;
}
    .optitmeSchedule h3 {
    font-size: 14px;
            margin-bottom: 3px;
}
    .servicelistWrap {
    padding: 0 25px;
}
    .swiper-slide img {
    border-radius: 24px;
}
   .optitmeSchedule {
    padding-top: 9px;
}
    #servicelist {
    padding-bottom: 46px;
    margin-bottom: 30px;
}
    .facilitiesWrap {
    padding: 0 25px;
}
    .mapflex {
    margin-bottom: 10px;
}
    .footermain {
    padding: 0 25px;
}
    .reserveFlex > a {
    font-size: 13px;
}
    .reserveFlex .telBox::after {
    width: 18.5px;
    height: 17.5px;
    left: 32px;
    top: 14px;
}
    #message {
    padding: 7px;
}
    .messageWrap {
    padding: 40px 10px;
}
    .reserveFlex .reserve::after {
    width: 19.5px;
    height: 19.5px;
    left: 20px;
    top: 13px;
}
    .fixnav .des {
    margin: 0 15px;
}
    .fixnav a {
    justify-content: center;
}
    .mapflex {
   display: block;
   
}
    .mapflex .adress {
    width: auto;
    
}
  .mapflex .accessBox {
    width: auto;
    text-align: left;
    font-size: 15px;
    padding-left: 18px;
}
    .mapflex .accessBox::after {
    left: -2px;
}
    .mapflex .adress {
    margin-bottom: 5px;
}
    .mapflex .adress br{
   display: none;
}
    #message .textBox .des {
    font-size: 15px;
    line-height: 32px;
}
      #message .textBox {
    padding: 0 40px;
    padding: 28px 26px;
}
    #message .textBox .title {
    font-size: 23px;
    line-height: 33px;
}
    .dot3 {
    margin-bottom: 21px;
}
    
    .facilitiesWrap .TitleBox h2 {
    font-size: 22px;
}
    
    #message .titleBox h2 {
    font-size: 22px;
    margin: 2px 0;
}
 #profile .titleBox h2 {
    font-size: 22px;
    margin: 3px 0;
}   #profile .flexBox .nameFlex h4 {
    font-size: 23px;
    padding-right: 32px;
    margin-right: 14px;
}
    footer {
    padding-bottom: 60px;
}
     #profile {
    margin-bottom: 29px;
}
   #profile .flexBox .nameFlex .nameen {
    font-size: 12px;
} 
    #profile .flexBox .nameFlex h4::after {
    font-size: 20px;
}
    #profile .flexBox h3 {
    font-size: 20px;
    margin-bottom: 9px;
}.swiper-slide h3 {
    margin-top: 15px;
    font-size: 20px;
    margin-bottom: 5px;
}
    .slider-thumbnail img {
    height: 87px;
    border-radius: 13px;
}
    .swiper .swiper-slide .textBox .des {
    font-size: 14px;
}
    .swiper-slide {
    padding-bottom: 9px;
}
    
    
    
    
}

@media screen and (max-width:630px) {
#message .textBox .des br{
   display: none;
}
    #message .textBox .des {
    line-height: 27px;
}
    #message .textBox .title {
    font-size: 17px;
    line-height: 25px;
}
}



@media screen and (max-width:600px) {
footer {
    padding-bottom: 46px;
}
    .slider-thumbnail .swiper-slide {
    width: calc(100% / 6) !important;
}
    .slider-thumbnail img {
    height: 68px;
}
    .ftrBanerFlex .comBtn {
    left: 25px;
    font-size: 15px;
    bottom: 15px;
}
    .ftrBanerFlex {
    margin-bottom: 29px;
}
.fixnav .imgBox {
    display: none;
}
    .fixnav a {
    padding: 12px 6px;
    height: 22px;
}
    .fixnav {
    font-size: 13px;
}
  .fixnav .des {
    margin: 0 8px;
}
}

@media screen and (max-width:580px) {
.opNewsBox {
   display: block !important;
}
    .opNewsBox {
    padding: 5px 34px;
}
    .opNewsBox .cate {
    font-size: 11px;
    height: 19px;
    line-height: 19px;
}
    .opNewsBoxFlex {
        align-items: center;
    }
    .optitmeSchedule {
    right: 8px;
    bottom: 5px;
}
    .swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    display: none;
}
   .optitmeSchedule {
    width: 87%;
}
   .biz-hour th, .biz-hour td {
    padding: 6px 4px;
}
    .biz-hour th, .biz-hour td {
    font-size: 13px;
}
  .mapflex .adress {
    font-size: 13px;
    line-height: 19px;
}
    .mapflex {
    padding: 0 17px;
  
}
    .reserveFlex .telBox::after {
    left: 14px;
    top: 15px;
}.reserveFlex > a {
    font-size: 12px;
}
    .reserveFlex > a {
    padding-left: 29px;
}
    .reserveFlex .reserve::after {
    left: 15px;
    top: 13px;
}
    .mapflex {
    margin-bottom: 6px;
}
    .servicelistFlex a {
    font-size: 17px;
}
    #facilities {
    margin-bottom: 43px;
}
    #message .Mflex {
    margin-bottom: 17px;
}
    #midlelist .telBox {
    font-size: 13px;
}
    #midlelist .adress {
   font-size: 14px;
}
    #midlelist .des {
    font-size: 14px;
}
    small {
    padding: 3px 0;
    font-size: 10px;
}
    .footermainLogoBox img{
max-width: 182px;
        width: 100%;
}
    .footermain {
    margin-bottom: 26px;
}
    .slider-thumbnail img {
    height: 50px;
}
    .slider-thumbnail img {
    border-radius: 5px;
}
    .slider-thumbnail .swiper-slide.swiper-slide-thumb-active:after {
    border-radius: 5px;
}
    .slider-thumbnail .swiper-slide {
    margin-right: 6px;
}
    .swiper .swiper-slide .textBox .des {
    font-size: 12px;
    line-height: 21px;
}
    .heroOpTextBox h1 {
    font-size: 18px;
}
	
	
}


	