@charset "UTF-8";
/*----------------------------------------------------
	☆sass Var
----------------------------------------------------*/
/*@include incImg100Auto();*/
/*@include incSmoothing();*/
/*-- HOTEL --*/
.contents .hotelBox {
  margin-bottom: 0;
  padding: 60px 15px;
  width: 100%;
  max-width: none; }
  .contents .hotelBox .hotelBoxDetail {
    background-color: #FAFAFA;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    /*filter: drop-shadow(0px 0px 10px rgba(0,0,0,.2));*/
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    margin: 0 auto;
    max-width: 1200px; }
    .contents .hotelBox .hotelBoxDetail p.img {
      line-height: 0;
      width: 50%; }
      .contents .hotelBox .hotelBoxDetail p.img img {
        height: auto;
        width: 100%; }
    .contents .hotelBox .hotelBoxDetail .data {
      padding: 30px 40px;
      text-align: center;
      width: 50%; }
      .contents .hotelBox .hotelBoxDetail .data .logo {
        margin-bottom: 20px; }
        .contents .hotelBox .hotelBoxDetail .data .logo img {
          height: auto;
          width: 100%;
          max-width: 200px; }
      .contents .hotelBox .hotelBoxDetail .data h2 {
        margin-bottom: 25px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
        .contents .hotelBox .hotelBoxDetail .data h2 span {
          display: block; }
        .contents .hotelBox .hotelBoxDetail .data h2 span.jp {
          font-size: 26px;
          font-size: 2.6rem;
          font-weight: normal;
          letter-spacing: 0.08em;
          margin-bottom: 15px; }
        .contents .hotelBox .hotelBoxDetail .data h2 span.en {
          font-family: 'Cinzel', serif;
          font-size: 15px;
          font-size: 1.5rem;
          font-weight: 300;
          letter-spacing: 0.08em; }
      .contents .hotelBox .hotelBoxDetail .data .desc {
        font-size: 14px;
        font-weight: 300;
        letter-spacing: 0.04em;
        line-height: 1.8;
        margin-bottom: 25px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
      .contents .hotelBox .hotelBoxDetail .data .btn {
        font-size: 14px;
        font-size: 1.4rem;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
        .contents .hotelBox .hotelBoxDetail .data .btn a {
          background-color: #224165;
          border-radius: 3px;
          color: #FFF;
          display: inline-block;
          letter-spacing: 0.06em;
          line-height: 1;
          padding: 18px 55px 16px 40px;
          text-decoration: none;
          position: relative;
          -webkit-transition: 0.2s;
          -o-transition: 0.2s;
          transition: 0.2s; }
        .contents .hotelBox .hotelBoxDetail .data .btn a:hover {
          background-color: #356DAE; }
        .contents .hotelBox .hotelBoxDetail .data .btn a:after {
          content: "\f105";
          display: block;
          font-size: 14px;
          font-family: "Font Awesome 5 Free";
          font-weight: bold;
          position: absolute;
          top: 16px;
          right: 20px; }
        .contents .hotelBox .hotelBoxDetail .data .btn a[target="_blank"]:after {
          content: "\f35d";
          display: block;
          font-size: 14px;
          font-family: "Font Awesome 5 Free";
          font-weight: bold;
          position: absolute;
          top: 16px;
          right: 20px; }
  .contents .hotelBox .hotelList {
    margin: 0 auto;
    max-width: 1200px;
    padding: 45px 0 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    .contents .hotelBox .hotelList ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      margin: 0 -10px; }
      .contents .hotelBox .hotelList ul li {
        text-align: center;
        margin-bottom: 25px;
        padding: 10px;
        width: 25%; }
        .contents .hotelBox .hotelList ul li a {
          color: #000;
          display: block;
          text-decoration: none;
          -webkit-transition: 0.2s;
          -o-transition: 0.2s;
          transition: 0.2s; }
        .contents .hotelBox .hotelList ul li h3 {
          font-size: 17px;
          font-size: 1.7rem;
          font-weight: 500;
          letter-spacing: 0.06em;
          margin-bottom: 5px;
          text-align: left; }
        .contents .hotelBox .hotelList ul li p.hImg {
          line-height: 0;
          margin-bottom: 15px;
          -webkit-transition: 0.2s;
          -o-transition: 0.2s;
          transition: 0.2s; }
          .contents .hotelBox .hotelList ul li p.hImg img {
            height: auto;
            width: 100%; }
        .contents .hotelBox .hotelList ul li p.hTxt {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.6;
          letter-spacing: 0.04em; }
      .contents .hotelBox .hotelList ul a:hover {
        color: #224165; }
        .contents .hotelBox .hotelList ul a:hover p.hImg {
          /*filter: drop-shadow(0px 0px 7px rgba(0,0,0,.5));*/
          -webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 7px rgba(0, 0, 0, 0.5); }

.contents .hotelBox#anchor7 .hotelBoxDetail .data .logo img {
  max-width: 200px; }

.hotelBox:nth-child(even) {
  background-color: #F9F9F9; }

#cboxLoadedContent {
  height: auto !important;
  overflow: hidden !important; }

.modalBase {
  background-color: #FFF;
  width: 100%;
  max-width: 1000px; }
  .modalBase .modalT {
    display: table;
    width: 100%;
    /*
.data:after {
background-color: rgba(0,0,0,0.5);
content: '';
display: block;
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
.data.color01:after {
background-color: rgba(0,82,189,0.5);
}
.data.color02:after {
background-color: rgba(100,82,189,0.5);
}
.data.color03:after {
background-color: rgba(200,82,189,0.5);
}
.data.color04:after {
background-color: rgba(245,182,9,0.5);
}
*/ }
    .modalBase .modalT .cell {
      display: table-cell;
      vertical-align: top;
      width: 50%; }
    .modalBase .modalT .img {
      background-position: center center;
      line-height: 0; }
      .modalBase .modalT .img img {
        height: auto;
        width: 100%;
        opacity: 0; }
    .modalBase .modalT .data {
      background-color: #CCC;
      color: #FFF;
      padding: 20px 40px;
      vertical-align: middle;
      text-align: center;
      width: 50%;
      position: relative; }
      .modalBase .modalT .data h2 {
        margin-bottom: 20px;
        position: relative;
        z-index: 2;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
        .modalBase .modalT .data h2 span {
          display: block; }
        .modalBase .modalT .data h2 span.jp {
          font-size: 26px;
          font-size: 2.6rem;
          font-weight: normal;
          line-height: 1.3;
          letter-spacing: 0.04em;
          margin-bottom: 5px; }
        .modalBase .modalT .data h2 span.en {
          font-family: 'Cinzel', serif;
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.2;
          letter-spacing: 0.08em; }
      .modalBase .modalT .data .desc {
        font-size: 14px;
        font-weight: 300;
        letter-spacing: 0.03em;
        line-height: 1.8;
        position: relative;
        z-index: 2;
        text-align: left;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .modalBase .modalT .data.color01 {
      background: url(/cmn/uniq/hotel/bg_texture_01.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color02 {
      background: url(/cmn/uniq/hotel/bg_texture_02.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color03 {
      background: url(/cmn/uniq/hotel/bg_texture_03.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color04 {
      background: url(/cmn/uniq/hotel/bg_texture_04.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color05 {
      background: url(/cmn/uniq/hotel/bg_texture_05.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color06 {
      background: url(/cmn/uniq/hotel/bg_texture_06.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color07 {
      background: url(/cmn/uniq/hotel/bg_texture_07.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color08 {
      background: url(/cmn/uniq/hotel/bg_texture_08.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color09 {
      background: url(/cmn/uniq/hotel/bg_texture_09.png) center center no-repeat;
      background-size: cover; }
    .modalBase .modalT .data.color010 {
      background: url(/cmn/uniq/hotel/bg_texture_10.png) center center no-repeat;
      background-size: cover; }
  .modalBase .modalB {
    display: table;
    width: 100%;
    position: relative; }
    .modalBase .modalB .cell {
      display: table-cell;
      padding: 35px 30px;
      vertical-align: top;
      width: 50%; }
      .modalBase .modalB .cell dl dt {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 600;
        letter-spacing: 0.08em;
        line-height: 1.2;
        margin-bottom: 7px; }
      .modalBase .modalB .cell dl dd {
        border-bottom: 1px dotted #AAA;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.4;
        letter-spacing: 0.04em;
        margin-bottom: 15px;
        padding-bottom: 15px; }
        .modalBase .modalB .cell dl dd i {
          margin-right: 5px; }
        .modalBase .modalB .cell dl dd a {
          color: #1d1d1d;
          text-decoration: none; }
      .modalBase .modalB .cell .category {
        font-family: "Cinzel", serif;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 600;
        letter-spacing: 0.06em;
        margin-bottom: 15px; }
      .modalBase .modalB .cell .category:before {
        content: "ー";
        display: inline-block;
        font-size: 10px;
        font-weight: bold;
        margin-right: 5px;
        margin-top: -2px;
        vertical-align: middle; }
      .modalBase .modalB .cell ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .modalBase .modalB .cell ul li {
          font-size: 11px;
          margin: 0 3% 10px 0;
          vertical-align: middle;
          white-space: nowrap;
          width: 40%; }
        .modalBase .modalB .cell ul li:before {
          content: '';
          display: inline-block;
          margin-right: 5px;
          height: 20px;
          width: 20px;
          vertical-align: middle; }
        .modalBase .modalB .cell ul li.restaurant:before {
          background: url(/cmn/uniq/hotel/icon_restaurant.png) left top no-repeat;
          background-size: 20px auto; }
        .modalBase .modalB .cell ul li.freewifi:before {
          background: url(/cmn/uniq/hotel/icon_freewifi.png) left top no-repeat;
          background-size: 20px auto; }
        .modalBase .modalB .cell ul li.bf_guest:before {
          background: url(/cmn/uniq/hotel/icon_bf_guest.png) left top no-repeat;
          background-size: 20px auto; }
        .modalBase .modalB .cell ul li.bf_toilet:before {
          background: url(/cmn/uniq/hotel/icon_bf_toilet.png) left top no-repeat;
          background-size: 20px auto; }
        .modalBase .modalB .cell ul li.nosmoking:before {
          background: url(/cmn/uniq/hotel/icon_nosmoking.png) left top no-repeat;
          background-size: 20px auto; }
        .modalBase .modalB .cell ul li.parking:before {
          background: url(/cmn/uniq/hotel/icon_parking.png) left top no-repeat;
          background-size: 20px auto; }
    .modalBase .modalB .dataL {
      border-right: 1px solid #CCC; }
    .modalBase .modalB .btns {
      display: block !important;
      position: absolute;
      bottom: 80px;
      right: 0;
      padding: 0 30px;
      width: 50%; }
      .modalBase .modalB .btns ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        .modalBase .modalB .btns ul li {
          font-size: 14px;
          font-size: 1.4rem;
          width: 48.5%;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
          .modalBase .modalB .btns ul li a {
            color: #FFF;
            border-radius: 3px;
            letter-spacing: 0.06em;
            display: block;
            padding: 18px 5px 18px 5px;
            text-align: center;
            text-decoration: none;
            -webkit-transition: 0.2s;
            -o-transition: 0.2s;
            transition: 0.2s;
            position: relative; }
          .modalBase .modalB .btns ul li a:hover {
            background-color: #356DAE; }
          .modalBase .modalB .btns ul li a:after {
            content: "\f105";
            display: inline;
            font-size: 14px;
            font-family: "Font Awesome 5 Free";
            font-weight: bold;
            position: absolute;
            right: 20px; }
          .modalBase .modalB .btns ul li a[target="_blank"]:after {
            content: "\f105";
            display: inline;
            font-size: 11px;
            font-family: "Font Awesome 5 Free";
            font-weight: bold;
            position: static;
            margin-left: 7px; }
        .modalBase .modalB .btns ul li.official a {
          background-color: #224165; }
        .modalBase .modalB .btns ul li.official a:hover {
          background-color: #356DAE; }
        .modalBase .modalB .btns ul li.reserve a {
          background-color: #3DA700; }
        .modalBase .modalB .btns ul li.reserve a:hover {
          background-color: #43BB04; }

/*-- GUIDE&FAQ --*/
.contents .bdrSection {
  border-top: 1px solid #DDD;
  margin-top: 50px;
  padding-top: 50px; }

.contents .guideMain .last, .contents .faqMain .last {
  margin-bottom: 0px !important; }

.contents .guideMain .inrBox, .contents .faqMain .inrBox {
  margin-bottom: 30px; }

.contents .guideMain .faqListBox, .contents .faqMain .faqListBox {
  margin-bottom: 20px; }
  .contents .guideMain .faqListBox .listType, .contents .faqMain .faqListBox .listType {
    text-indent: -17px;
    margin-left: 10px; }
    .contents .guideMain .faqListBox .listType::before, .contents .faqMain .faqListBox .listType::before {
      padding-right: 10px;
      color: #224165; }
  .contents .guideMain .faqListBox .listTypeQ::before, .contents .faqMain .faqListBox .listTypeQ::before {
    content: "Q"; }
  .contents .guideMain .faqListBox .listTypeA::before, .contents .faqMain .faqListBox .listTypeA::before {
    content: "A"; }

/*-- SITEMAP --*/
.contents .sitemapMain .head03 a {
  text-decoration: none; }
  .contents .sitemapMain .head03 a:hover {
    text-decoration: none;
    opacity: 0.6; }

.contents .sitemapMain .clm3 {
  width: 100%;
  overflow: hidden; }
  .contents .sitemapMain .clm3 li {
    width: 33.333%;
    float: left; }

/*-- PRIVACY --*/
.contents .privacypolicy .jpList {
  margin: 0 0 1em 1em; }
  .contents .privacypolicy .jpList::before {
    list-style: none !important;
    margin-left: 20px; }

.contents .privacypolicy .cap {
  color: #636363;
  font-size: 1.2rem; }

.contents .privacypolicy .boxInr {
  padding-left: 20px; }

/*-- CONTACT --*/
.contents .contactBox {
  margin-bottom: 0;
  padding: 65px 20px 50px;
  width: 100%;
  max-width: none; }
  .contents .contactBox .contactBoxDetail {
    margin: 0 auto;
    max-width: 1200px; }
    .contents .contactBox .contactBoxDetail .data .logo {
      margin-bottom: 25px;
      text-align: center; }
    .contents .contactBox .contactBoxDetail .data h2 {
      margin-bottom: 25px;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
      .contents .contactBox .contactBoxDetail .data h2 span.en {
        font-family: 'Cinzel', serif;
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.08em; }
      .contents .contactBox .contactBoxDetail .data h2 span.jp {
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: normal;
        letter-spacing: 0.08em;
        margin-left: 10px; }
  .contents .contactBox .hotelList {
    margin: 0 auto;
    max-width: 1200px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    .contents .contactBox .hotelList ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      margin: 0 -10px; }
      .contents .contactBox .hotelList ul li {
        margin-bottom: 25px;
        padding: 10px;
        width: 33%; }
        .contents .contactBox .hotelList ul li a {
          background-color: #FAFAFA;
          border: 1px solid #EEE;
          border-top: 3px solid #46525C;
          color: #000;
          display: block;
          text-decoration: none;
          -webkit-transition: 0.2s;
          -o-transition: 0.2s;
          transition: 0.2s;
          -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          position: relative; }
          .contents .contactBox .hotelList ul li a .hData {
            padding: 25px 20px 55px; }
            .contents .contactBox .hotelList ul li a .hData h3 {
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: 500;
              line-height: 1.4;
              letter-spacing: 0.06em;
              margin-bottom: 5px; }
            .contents .contactBox .hotelList ul li a .hData p.hTxt {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.6;
              letter-spacing: 0.04em;
              margin-bottom: 20px; }
            .contents .contactBox .hotelList ul li a .hData .btn {
              text-align: center;
              position: absolute;
              bottom: 25px;
              left: 0;
              width: 100%;
              text-align: center; }
              .contents .contactBox .hotelList ul li a .hData .btn span {
                background-color: #224165;
                border-radius: 3px;
                color: #FFF;
                display: inline-block;
                font-size: 12px;
                font-size: 1.2rem;
                font-weight: normal;
                line-height: 1;
                letter-spacing: 0.04em;
                padding: 10px 22px 10px 20px;
                text-align: center;
                text-decoration: none;
                position: relative;
                -webkit-transition: 0.2s;
                -o-transition: 0.2s;
                transition: 0.2s;
                -webkit-box-shadow: 0 8px 6px -6px #DDD;
                -moz-box-shadow: 0 8px 6px -6px #DDD;
                box-shadow: 0 8px 6px -6px #DDD; }
              .contents .contactBox .hotelList ul li a .hData .btn span:before {
                content: "\f105";
                display: inline-block;
                font-family: "Font Awesome 5 Free";
                font-weight: bold;
                margin-right: 7px; }
          .contents .contactBox .hotelList ul li a .hImg img {
            width: 100%; }
        .contents .contactBox .hotelList ul li a:hover {
          color: #2378ae;
          -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          border-top: 3px solid #2378ae; }
          .contents .contactBox .hotelList ul li a:hover .btn span {
            background-color: #2378ae; }

.contactBox:nth-child(even) {
  background-color: #F9F9F9; }

/*-- NEWS --*/
.contents .newsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin: 0 auto;
  max-width: 840px;
  padding: 0 0 100px;
  width: 100%; }
  .contents .newsList .newsListMain {
    padding-left: 0;
    width: 100%; }
    .contents .newsList .newsListMain ul li {
      border-bottom: 1px solid #DDD; }
      .contents .newsList .newsListMain ul li a {
        color: #333;
        display: table;
        padding: 18px 15px;
        text-decoration: none;
        width: 100%;
        -webkit-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s; }
        .contents .newsList .newsListMain ul li a p {
          display: table-cell;
          font-size: 14px;
          font-size: 1.4rem; }
        .contents .newsList .newsListMain ul li a p.date {
          width: 12%; }
        .contents .newsList .newsListMain ul li a p.tag {
          font-size: 12px;
          width: 12%; }
          .contents .newsList .newsListMain ul li a p.tag span {
            background-color: #224165;
            border-radius: 2px;
            color: #FFF;
            display: inline-block;
            line-height: 1;
            padding: 5px 10px;
            min-width: 70px;
            text-align: center; }
        .contents .newsList .newsListMain ul li a p.txt {
          width: 78%; }
          .contents .newsList .newsListMain ul li a p.txt span.new {
            display: inline-block;
            background-color: #CCC;
            color: #FFF;
            font-size: 11px;
            line-height: 1;
            padding: 5px 15px; }
      .contents .newsList .newsListMain ul li a:hover {
        background-color: #FAFAFA;
        color: #2378ae; }

.contents .newsDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin: 0 auto;
  max-width: 840px;
  padding: 0 0 100px;
  width: 100%; }
  .contents .newsDetail .newsDetailMain {
    width: 100%; }
    .contents .newsDetail .newsDetailMain .newsTitle p {
      display: inline-block;
      font-size: 14px;
      font-size: 1.4rem; }
    .contents .newsDetail .newsDetailMain .newsTitle p.date {
      width: 10%; }
    .contents .newsDetail .newsDetailMain .newsTitle p.tag {
      font-size: 12px;
      width: 15%; }
      .contents .newsDetail .newsDetailMain .newsTitle p.tag span {
        background-color: #224165;
        border-radius: 2px;
        color: #FFF;
        display: inline-block;
        line-height: 1;
        padding: 5px 10px;
        min-width: 70px;
        text-align: center; }
    .contents .newsDetail .newsDetailMain .newsTitle .txt {
      border-bottom: 1px solid #DDD;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: 500;
      line-height: 1.5;
      margin-bottom: 20px;
      padding: 12px 0 12px; }
    .contents .newsDetail .newsDetailMain .editor img {
      width: 100% !important; }

/*-- PRESS --*/
.contents .pressList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin: 0 auto;
  padding: 0 0 100px;
  width: 100%; }
  .contents .pressList .newsListMain {
    width: 80%; }
    .contents .pressList .newsListMain ul li {
      border-bottom: 1px solid #DDD; }
      .contents .pressList .newsListMain ul li a {
        color: #333;
        display: table;
        padding: 18px 15px;
        text-decoration: none;
        width: 100%;
        -webkit-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s; }
        .contents .pressList .newsListMain ul li a p {
          display: table-cell;
          font-size: 14px;
          font-size: 1.4rem; }
        .contents .pressList .newsListMain ul li a p.date {
          width: 12%; }
        .contents .pressList .newsListMain ul li a p.tag {
          font-size: 12px; }
          .contents .pressList .newsListMain ul li a p.tag span {
            background-color: #A5D982;
            border-radius: 2px;
            color: #FFF;
            display: inline-block;
            line-height: 1;
            padding: 5px 10px;
            min-width: 180px;
            margin-right: 15px;
            text-align: center;
            white-space: nowrap; }
          @media all and (-ms-high-contrast: none) {
            .contents .pressList .newsListMain ul li a p.tag span {
              padding: 10px 10px 5px; } }
        .contents .pressList .newsListMain ul li a p.txt {
          width: 70%; }
          .contents .pressList .newsListMain ul li a p.txt span.new {
            display: inline-block;
            background-color: #CCC;
            color: #FFF;
            font-size: 11px;
            line-height: 1;
            padding: 5px 15px;
            margin-left: 5px; }
      .contents .pressList .newsListMain ul li a:hover {
        background-color: #FAFAFA;
        color: #2378ae; }
    .contents .pressList .newsListMain .tabMenuBox {
      background-color: #F0F0F0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin: 0 auto 25px;
      padding: 15px;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
    .contents .pressList .newsListMain .tabMenuBox p {
      font-weight: 600;
      margin-right: 20px; }
    .contents .pressList .newsListMain .tabMenuSelect {
      overflow: hidden;
      width: 40%;
      text-align: center; }
    .contents .pressList .newsListMain .tabMenuSelect select {
      width: 100%;
      padding-right: 1em;
      cursor: pointer;
      text-indent: 0.01px;
      -o-text-overflow: ellipsis;
      text-overflow: ellipsis;
      border: none;
      outline: none;
      background: transparent;
      background-image: none;
      -webkit-box-shadow: none;
      box-shadow: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none; }
    .contents .pressList .newsListMain .tabMenuSelect select::-ms-expand {
      display: none; }
    .contents .pressList .newsListMain .tabMenuSelect {
      position: relative;
      border: 1px solid #bbbbbb;
      border-radius: 2px;
      background: #ffffff; }
    .contents .pressList .newsListMain .tabMenuSelect::before {
      position: absolute;
      top: 1em;
      right: 0.9em;
      width: 0;
      height: 0;
      padding: 0;
      content: '';
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-top: 6px solid #666666;
      pointer-events: none; }
    .contents .pressList .newsListMain .tabMenuSelect select {
      padding: 8px 38px 8px 8px;
      color: #666666; }
  .contents .pressList .archives {
    width: 20%; }
    .contents .pressList .archives h2 {
      font-size: 19px;
      font-size: 1.9rem;
      font-weight: 600;
      margin-bottom: 20px; }
      .contents .pressList .archives h2 span {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 500; }
    .contents .pressList .archives ul li {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.06em; }
      .contents .pressList .archives ul li a {
        color: #333;
        display: inline-block;
        padding: 5px 0;
        text-decoration: none;
        -webkit-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s; }
        .contents .pressList .archives ul li a span {
          color: #999; }
      .contents .pressList .archives ul li a:hover {
        color: #2378ae; }

.contents .pressDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin: 0 auto;
  padding: 0 0 100px;
  width: 100%; }
  .contents .pressDetail .newsDetailMain {
    padding-left: 30px;
    width: 80%; }
    .contents .pressDetail .newsDetailMain .newsTitle p {
      display: inline-block;
      font-size: 14px;
      font-size: 1.4rem; }
    .contents .pressDetail .newsDetailMain .newsTitle p.date {
      width: 13%; }
    .contents .pressDetail .newsDetailMain .newsTitle p.tag {
      font-size: 12px; }
      .contents .pressDetail .newsDetailMain .newsTitle p.tag span {
        background-color: #A5D982;
        border-radius: 2px;
        color: #FFF;
        display: inline-block;
        line-height: 1;
        padding: 5px 10px;
        min-width: 180px;
        text-align: center;
        white-space: nowrap; }
    .contents .pressDetail .newsDetailMain .newsTitle .txt {
      border-bottom: 1px solid #DDD;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: 500;
      line-height: 1.5;
      margin-bottom: 20px;
      padding: 12px 0 12px; }
    .contents .pressDetail .newsDetailMain .editor img {
      width: 100% !important; }
  .contents .pressDetail .archives {
    width: 20%; }
    .contents .pressDetail .archives h2 {
      font-size: 19px;
      font-size: 1.9rem;
      font-weight: 600;
      margin-bottom: 20px; }
      .contents .pressDetail .archives h2 span {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 500; }
    .contents .pressDetail .archives ul li {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.06em; }
      .contents .pressDetail .archives ul li a {
        color: #333;
        display: inline-block;
        padding: 5px 0;
        text-decoration: none;
        -webkit-transition: 0.2s;
        -o-transition: 0.2s;
        transition: 0.2s; }
        .contents .pressDetail .archives ul li a span {
          color: #999; }
      .contents .pressDetail .archives ul li a:hover {
        color: #2378ae; }

/*----------------------------------------------------
	☆SP Start
----------------------------------------------------*/
@media only screen and (max-width: 960px) {
  .contents .spMargin {
    margin: 0 20px; }
  /*-- HOTEL --*/
  .contents .hotelBox {
    padding: 30px 0 0; }
    .contents .hotelBox .hotelBoxDetail {
      background-color: #FFF;
      display: block;
      /*filter: drop-shadow(0px 0px 5px rgba(0,0,0,.2));*/
      -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); }
      .contents .hotelBox .hotelBoxDetail p.img {
        width: auto; }
        .contents .hotelBox .hotelBoxDetail p.img img {
          height: auto;
          width: 100%; }
      .contents .hotelBox .hotelBoxDetail .data {
        padding: 25px 15px;
        width: auto; }
        .contents .hotelBox .hotelBoxDetail .data .logo {
          margin-bottom: 10px; }
          .contents .hotelBox .hotelBoxDetail .data .logo img {
            height: auto;
            width: 130px; }
        .contents .hotelBox .hotelBoxDetail .data h2 {
          margin-bottom: 20px; }
          .contents .hotelBox .hotelBoxDetail .data h2 span.en {
            font-size: 21px;
            font-size: 2.1rem;
            line-height: 1.3;
            letter-spacing: 0.04em;
            margin-bottom: 5px; }
          .contents .hotelBox .hotelBoxDetail .data h2 span.jp {
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: 0.05em; }
        .contents .hotelBox .hotelBoxDetail .data .desc {
          font-size: 13px;
          letter-spacing: 0.04em;
          line-height: 1.8;
          margin-bottom: 20px;
          text-align: left; }
          .contents .hotelBox .hotelBoxDetail .data .desc br {
            display: none; }
        .contents .hotelBox .hotelBoxDetail .data .btn {
          font-size: 12px;
          font-size: 1.2rem;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
          .contents .hotelBox .hotelBoxDetail .data .btn a {
            letter-spacing: 0.06em;
            display: block;
            padding: 18px 5px 18px 5px;
            text-align: center;
            position: relative; }
          .contents .hotelBox .hotelBoxDetail .data .btn a:hover {
            background-color: #356DAE; }
          .contents .hotelBox .hotelBoxDetail .data .btn a:after {
            content: "\f105";
            color: #FFF;
            display: inline;
            font-size: 14px;
            font-family: "Font Awesome 5 Free";
            font-weight: bold;
            position: static;
            margin-left: 7px; }
          .contents .hotelBox .hotelBoxDetail .data .btn a[target="_blank"]:after {
            content: "\f35d";
            display: inline;
            font-size: 11px;
            font-family: "Font Awesome 5 Free";
            font-weight: bold;
            position: static;
            margin-left: 7px; }
    .contents .hotelBox .hotelList {
      background-color: #F9F9F9;
      padding: 25px 15px 15px;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
      .contents .hotelBox .hotelList ul {
        display: block;
        margin: 0; }
        .contents .hotelBox .hotelList ul li {
          border: 1px solid #DDD;
          background-color: #FFF;
          text-align: center;
          margin-bottom: 7px;
          padding: 0;
          width: auto; }
          .contents .hotelBox .hotelList ul li a {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center; }
            .contents .hotelBox .hotelList ul li a h3 {
              font-size: 12px;
              font-size: 1.2rem;
              margin-bottom: 3px; }
            .contents .hotelBox .hotelList ul li a p.hImg {
              line-height: 0;
              margin-bottom: 0;
              width: 32%; }
              .contents .hotelBox .hotelList ul li a p.hImg img {
                height: auto;
                width: 100%; }
            .contents .hotelBox .hotelList ul li a div.hData {
              padding: 0 0 0 15px;
              text-align: left;
              width: 68%; }
            .contents .hotelBox .hotelList ul li a p.hTxt {
              font-size: 10px;
              font-size: 1rem;
              line-height: 1.6;
              letter-spacing: 0.04em; }
          .contents .hotelBox .hotelList ul li a:hover p.hImg {
            /*filter: drop-shadow(0px 0px 0px rgba(0,0,0,0));*/
            -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
            box-shadow: 0 0 0 rgba(0, 0, 0, 0); }
  .contents .hotelBox#anchor7 .hotelBoxDetail .data .logo img {
    width: 170px; }
  .hotelBox:nth-child(even) {
    background-color: #FFF; }
  .modalBase .modalT {
    display: block; }
    .modalBase .modalT .cell {
      display: block;
      width: auto; }
    .modalBase .modalT .data {
      padding: 35px 20px 25px;
      width: auto; }
      .modalBase .modalT .data h2 {
        margin-bottom: 10px; }
        .modalBase .modalT .data h2 span.en {
          font-size: 11px;
          font-size: 1.1rem;
          margin-bottom: 0; }
        .modalBase .modalT .data h2 span.jp {
          font-size: 19px;
          font-size: 1.9rem;
          margin-bottom: 5px; }
      .modalBase .modalT .data .desc {
        font-size: 14px;
        line-height: 1.8;
        text-align: left; }
        .modalBase .modalT .data .desc br {
          display: none !important; }
  .modalBase .modalB {
    display: block; }
    .modalBase .modalB .cell {
      display: block;
      padding: 25px 20px;
      width: auto; }
      .modalBase .modalB .cell dl dt {
        font-size: 14px;
        font-size: 1.4rem;
        padding-top: 5px; }
      .modalBase .modalB .cell dl dd {
        font-size: 13px;
        font-size: 1.3rem;
        letter-spacing: 0.04em;
        line-height: 1.4;
        margin-bottom: 10px;
        padding-bottom: 10px; }
        .modalBase .modalB .cell dl dd a {
          color: #2378ae;
          text-decoration: underline; }
      .modalBase .modalB .cell .category {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 600; }
      .modalBase .modalB .cell ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .modalBase .modalB .cell ul li {
          font-size: 9px;
          margin-right: 0;
          width: 50%; }
        .modalBase .modalB .cell ul li:before {
          margin-right: 7px;
          height: 20px;
          width: 20px;
          vertical-align: middle; }
    .modalBase .modalB .dataL {
      border-right: none;
      padding: 25px 20px 15px; }
    .modalBase .modalB .dataR {
      background-color: #F4F4F4; }
    .modalBase .modalB .btns {
      background-color: #F4F4F4;
      position: static;
      padding: 12px 15px;
      width: auto; }
      .modalBase .modalB .btns ul li {
        font-size: 11px;
        font-size: 1.1rem; }
        .modalBase .modalB .btns ul li a {
          letter-spacing: 0.02em; }
        .modalBase .modalB .btns ul li a:after {
          display: inline;
          font-size: 11px;
          position: static;
          margin-left: 7px; }
        .modalBase .modalB .btns ul li a[target="_blank"]:after {
          display: inline;
          font-size: 11px;
          position: static;
          margin-left: 7px; }
  /*-- GUIDE&FAQ --*/
  .contents .faqMain .anchorBox {
    display: none; }
  .contents .faqMain .listType {
    text-indent: 0px !important; }
  .contents .faqMain .js-ac {
    margin: 0 auto 10px; }
  .contents .faqMain .js-ac .js-ac-trigger:before {
    padding: 10px 14px 10px 20px;
    content: "\f105";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    -webkit-transform: rotateZ(90deg);
    -ms-transform: rotate(90deg);
    transform: rotateZ(90deg); }
  .contents .faqMain .js-ac .js-ac-target {
    display: none; }
  .contents .faqMain .js-ac .js-ac-trigger.active::before {
    content: '\f107';
    font-family: "Font Awesome 5 Free";
    -webkit-transform: rotateZ(180deg);
    -ms-transform: rotate(180deg);
    transform: rotateZ(180deg); }
  .contents .faqMain .js-ac .js-ac-target.active {
    display: block; }
  .contents .faqMain .head03 {
    border-bottom: none;
    padding: 6px;
    color: #FFF;
    background-color: #224165;
    font-size: 16px; }
  .contents .bdrSection {
    border-top: 1px solid #DDD;
    margin: 0;
    padding-top: 40px; }
  /*-- SITEMAP --*/
  .contents .sitemapMain .sitemapBox {
    width: 100%; }
  .contents .sitemapMain .clm3 li {
    width: 50%; }
  /*-- CONTACT --*/
  .contents .contactBox {
    border-bottom: 1px solid #EEE;
    padding: 55px 0 25px; }
    .contents .contactBox .contactBoxDetail {
      display: block;
      padding: 0 15px; }
      .contents .contactBox .contactBoxDetail .data {
        width: auto; }
        .contents .contactBox .contactBoxDetail .data .logo {
          margin-bottom: 10px; }
          .contents .contactBox .contactBoxDetail .data .logo img {
            height: auto;
            width: 130px; }
        .contents .contactBox .contactBoxDetail .data h2 {
          margin-bottom: 10px; }
          .contents .contactBox .contactBoxDetail .data h2 span.en {
            display: block;
            font-size: 20px;
            font-size: 2rem;
            line-height: 1.3;
            letter-spacing: 0.04em; }
          .contents .contactBox .contactBoxDetail .data h2 span.jp {
            display: block;
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: 0.05em;
            margin-left: 0; }
    .contents .contactBox .hotelList {
      padding: 20px 10px 15px; }
      .contents .contactBox .hotelList ul {
        display: block;
        margin: 0; }
        .contents .contactBox .hotelList ul li {
          border: 1px solid #EEE;
          background-color: #FFF;
          margin-bottom: 10px;
          padding: 0;
          width: auto; }
          .contents .contactBox .hotelList ul li a {
            display: block;
            padding: 15px 10px 12px; }
            .contents .contactBox .hotelList ul li a div.hData {
              padding: 0 0 0 0;
              text-align: left;
              width: auto; }
              .contents .contactBox .hotelList ul li a div.hData h3 {
                font-size: 14px;
                font-size: 1.4rem;
                margin-bottom: 3px; }
              .contents .contactBox .hotelList ul li a div.hData p.hTxt {
                font-size: 12px;
                font-size: 1.2rem;
                line-height: 1.6;
                letter-spacing: 0.04em;
                margin-bottom: 8px; }
              .contents .contactBox .hotelList ul li a div.hData .btn {
                text-align: left;
                position: static;
                width: 100%; }
                .contents .contactBox .hotelList ul li a div.hData .btn span {
                  font-size: 9px;
                  font-size: 0.9rem;
                  line-height: 1;
                  letter-spacing: 0.04em;
                  padding: 7px 15px 7px 10px; }
                .contents .contactBox .hotelList ul li a div.hData .btn span:before {
                  content: "\f105";
                  display: inline-block;
                  font-family: "Font Awesome 5 Free";
                  font-weight: bold;
                  margin-right: 7px; }
            .contents .contactBox .hotelList ul li a a:hover p.hImg {
              /*filter: drop-shadow(0px 0px 0px rgba(0,0,0,0));*/
              -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
              box-shadow: 0 0 0 rgba(0, 0, 0, 0); }
  .contents .contactBox#anchor7 .contactBoxDetail .data .logo img {
    width: 50px; }
  /*-- NEWS --*/
  .contents .newsList {
    display: block;
    margin: 0 auto;
    padding: 0 0 50px; }
    .contents .newsList .newsListMain {
      padding-left: 0;
      margin-bottom: 20px;
      width: auto; }
      .contents .newsList .newsListMain ul li a {
        display: block;
        padding: 12px 10px;
        width: auto; }
        .contents .newsList .newsListMain ul li a p {
          display: block;
          font-size: 10px;
          font-size: 1.0rem; }
        .contents .newsList .newsListMain ul li a p.date {
          display: inline;
          margin-right: 5px;
          width: auto; }
        .contents .newsList .newsListMain ul li a p.tag {
          display: inline-block;
          font-size: 9px;
          width: auto; }
          .contents .newsList .newsListMain ul li a p.tag span {
            padding: 4px 8px;
            min-width: 70px; }
        .contents .newsList .newsListMain ul li a p.txt {
          display: block;
          font-size: 12px;
          font-size: 1.2rem;
          padding-top: 3px;
          width: auto; }
      .contents .newsList .newsListMain ul li a:hover {
        background-color: #FAFAFA;
        color: #2378ae; }
    .contents .newsList .archives {
      border: 1px solid #CCC;
      padding: 25px 20px 15px;
      width: auto; }
  .contents .newsDetail {
    display: block;
    padding: 0 0 50px;
    width: auto; }
    .contents .newsDetail .newsDetailMain {
      padding-left: 0;
      width: auto; }
      .contents .newsDetail .newsDetailMain .newsTitle p {
        display: inline-block;
        font-size: 10px;
        font-size: 1.0rem; }
      .contents .newsDetail .newsDetailMain .newsTitle p.date {
        display: inline;
        margin-right: 5px;
        width: auto; }
      .contents .newsDetail .newsDetailMain .newsTitle p.tag {
        display: inline-block;
        font-size: 9px;
        width: auto; }
        .contents .newsDetail .newsDetailMain .newsTitle p.tag span {
          padding: 4px 8px;
          min-width: 70px; }
      .contents .newsDetail .newsDetailMain .newsTitle .txt {
        border-bottom: 1px solid #DDD;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 500;
        margin-bottom: 20px;
        padding: 10px 0; }
      .contents .newsDetail .newsDetailMain .editor img {
        width: 100% !important; }
      .contents .newsDetail .newsDetailMain .editor section {
        margin-bottom: 20px; }
  .contents .newsList .newsListMain ul li a p.txt span.new {
    font-size: 9px;
    margin-left: 5px;
    padding: 4px 10px; }
  /*-- PRESS --*/
  .contents .pressList {
    display: block;
    margin: 0 auto;
    padding: 0 0 50px; }
    .contents .pressList .newsListMain {
      padding-left: 0;
      margin-bottom: 20px;
      width: auto; }
      .contents .pressList .newsListMain ul li a {
        display: block;
        padding: 12px 10px;
        width: auto; }
        .contents .pressList .newsListMain ul li a p {
          display: block;
          font-size: 10px;
          font-size: 1.0rem; }
        .contents .pressList .newsListMain ul li a p.date {
          display: inline;
          margin-right: 5px;
          width: auto; }
        .contents .pressList .newsListMain ul li a p.tag {
          display: inline-block;
          font-size: 9px;
          width: auto; }
          .contents .pressList .newsListMain ul li a p.tag span {
            padding: 4px 8px;
            min-width: 70px; }
        .contents .pressList .newsListMain ul li a p.txt {
          display: inline-block;
          font-size: 12px;
          font-size: 1.2rem;
          padding-top: 3px;
          width: auto; }
      .contents .pressList .newsListMain ul li a:hover {
        background-color: #FAFAFA;
        color: #2378ae; }
      .contents .pressList .newsListMain .tabMenuBox {
        background-color: #EEE;
        margin: 0 0 5px;
        padding: 8px; }
      .contents .pressList .newsListMain .tabMenuBox p {
        font-size: 12px;
        font-weight: 600;
        margin-right: 10px; }
      .contents .pressList .newsListMain .tabMenuSelect {
        font-size: 11px;
        margin: 0;
        width: 55%; }
    .contents .pressList .archives {
      border: 1px solid #CCC;
      padding: 25px 20px 15px;
      width: auto; }
  .contents .pressDetail {
    display: block;
    padding: 0 0 50px;
    width: auto; }
    .contents .pressDetail .newsDetailMain {
      padding-left: 0;
      width: auto; }
      .contents .pressDetail .newsDetailMain .newsTitle p {
        display: inline-block;
        font-size: 10px;
        font-size: 1.0rem; }
      .contents .pressDetail .newsDetailMain .newsTitle p.date {
        display: inline;
        margin-right: 5px;
        width: auto; }
      .contents .pressDetail .newsDetailMain .newsTitle p.tag {
        display: inline-block;
        font-size: 9px;
        width: auto; }
        .contents .pressDetail .newsDetailMain .newsTitle p.tag span {
          padding: 4px 8px;
          min-width: 70px; }
      .contents .pressDetail .newsDetailMain .newsTitle .txt {
        border-bottom: 1px solid #DDD;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 500;
        margin-bottom: 20px;
        padding: 10px 0; }
      .contents .pressDetail .newsDetailMain .editor img {
        width: 100% !important; }
    .contents .pressDetail .archives {
      border: 1px solid #CCC;
      margin-top: 30px;
      padding: 25px 20px 15px;
      width: auto; }
  .contents .pressList .newsListMain ul li a p.txt span.new {
    font-size: 9px;
    margin-left: 5px;
    padding: 4px 10px; } }

/*----------------------------------------------------
	☆accordionBox
----------------------------------------------------*/
.cp_actab {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  color: #ffffff; }

.cp_actab input {
  position: absolute;
  z-index: -1;
  opacity: 0; }

.cp_actab {
  font-weight: bold;
  line-height: 3;
  position: relative;
  display: block;
  padding: 0 0 0 1em;
  cursor: pointer;
  margin: 0 0 1px 0;
  background: #da3c41; }

.cp_actab .cp_actab-content {
  overflow: hidden;
  max-height: 0;
  -webkit-transition: max-height 0.35s;
  -o-transition: max-height 0.35s;
  transition: max-height 0.35s;
  color: #333333;
  background: #f1c6c6; }

.cp_actab .cp_actab-content p {
  margin: 1em; }

/* :checked */
.cp_actab input:checked ~ .cp_actab-content {
  max-height: 20em; }

/* Icon */
.cp_actab label::after {
  line-height: 3;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 3em;
  height: 3em;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s;
  text-align: center; }

.cp_actab input[type=checkbox] + label::after {
  content: '+'; }

.cp_actab input[type=checkbox]:checked + label::after {
  -webkit-transform: rotate(315deg);
  -ms-transform: rotate(315deg);
  transform: rotate(315deg); }
