@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap");
* { margin: 0; padding: 0; outline: none; /*-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-appearance: none;
*/ }

html { font-size: 62.5%; }

body { font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック', sans-serif; font-size: 16px; line-height: 1.7; background: #0e1114; color: #444; text-align: center; scrolling: yes; position: relative; -webkit-text-size-adjust: 100%; overflow-x: hidden; }

body.fixed { position: fixed; width: 100%; height: 100%; }

a { color: #444; text-decoration: none; overflow: hidden; outline: none; cursor: pointer; }

a[href^="tel"] { color: inherit; text-decoration: none; }

@media screen and (min-width: 990px) { a[href^="tel"] { pointer-events: none; } }

a:hover { text-decoration: none; color: #444; }

p { font-size: 1.4rem; }

img { border: none; vertical-align: top; }

table { border-collapse: collapse; }

ul { list-style-type: none; }

button, input, select { border: none; cursor: pointer; }

select { -moz-appearance: none; text-indent: 0.01px; text-overflow: ''; }

select::-ms-expand { display: none; }

select, button, input[type="submit"] { -webkit-appearance: none; }

h1, h2, h3 { font-weight: normal; }

h4, h5, h6, strong { font-weight: 500; }

/* FOR SLICK.JS */
.slick-list { _zoom: 1; overflow: hidden; }

/* ::::::::::::::::::::::::::::::::: COMMON ::::::::::::::::::::::::::::::::: */
.wrap { overflow: hidden; width: 100%; min-width: 980px; }

.mainHeader, .mainFooter { background: #1D1D1D; }

.edmont .mainHeader, .edmont .mainFooter { background: #6090A3; }

@media screen and (max-width: 989px) { .edmont .mainHeader .logo, .edmont .mainFooter .logo { width: 290px; height: 30px; } }

.green .mainHeader, .green .mainFooter { background: #a7cac7; }

.yellow .mainHeader, .yellow .mainFooter { background: #dfc895; }

.red .mainHeader, .red .mainFooter { background: #dbadab; }

.purple .mainHeader, .purple .mainFooter { background: #aca1b5; }

.blue .mainHeader, .blue .mainFooter { background: #96aeba; }

.brown .mainHeader, .brown .mainFooter { background: #b6a9a2; }

/* HEADER */
.mainHeader .wrapper { display: flex; align-items: center; width: 100%; height: 80px; max-width: 1100px; margin: 0 auto; }

@media screen and (max-width: 989px) { .mainHeader .wrapper { justify-content: center; text-align: center; } }

.mainHeader .logo { display: block; margin: 0; }

@media screen and (max-width: 989px) { .mainHeader .logo { height: 15px; } }

.mainHeader .logo a { display: flex; flex-direction: column; justify-content: center; height: auto; }

.mainHeader .logo img { vertical-align: top; max-width: 100%; }

/* FOOTER */
.mainFooter { color: #fff; overflow: hidden; }

.mainFooter a { color: inherit; }

.mainFooter .wrapper { width: 100%; max-width: 1100px; padding: 40px 0; margin: 0 auto; }

@media screen and (max-width: 989px) { .mainFooter .wrapper { display: block; height: auto; padding: 40px 0; } }

.mainFooter .footerNav { display: flex; justify-content: center; flex-wrap: wrap; margin: 30px 0 20px 0; line-height: 1; font-size: 1.3rem; }

@media screen and (max-width: 989px) { .mainFooter .footerNav { margin: 30px 0 20px; } }

.mainFooter .footerNav li { border-right: 1px solid; margin-bottom: 10px; }

.mainFooter .footerNav li:first-child { border-left: 1px solid; }

.mainFooter .footerNav li a { padding: 0 14px; }

@media screen and (max-width: 989px) { .mainFooter .logo { margin: 0 auto 15px; } }

.mainFooter .logo img { max-width: 100%; }

.mainFooter .copyright { margin-left: auto; font-size: 11px; }

/*COMMON*/
h1 { display: flex; justify-content: center; align-items: center; flex-direction: column; font-size: 3.8rem; line-height: 1.6; font-weight: 900; color: #222; margin: 0 0 35px; }

h1 span.ja { font-weight: 500; font-size: 1.7rem; }

h3 { font-size: 2.1rem; margin: 0 0 35px; font-weight: 500; color: #222; }

h3.en { font-size: 2.6rem; font-weight: 900; }

h3.withBar { font-size: 2.0rem; color: #FFF; padding: 10px 20px; background: #7e8082; text-align: left; }

h3.withTab { margin: 0 0 20px; }

h4 { font-size: 1.8rem; margin: 0 0 30px; }

h2 a, h3 a, h4 a { color: inherit; transition: all .6s; }

h2 a:hover, h3 a:hover, h4 a:hover { opacity: .7; }

.max { width: 100%; }

.sldBlock { width: 100%; }

.sldBlock ul { width: 100%; background: #6c6e70; _zoom: 1; overflow: hidden; }

.sldBlock ul li { float: left; width: 25%; opacity: 0.3; cursor: pointer; }

.sldBlock ul li.on { opacity: 1; }

.tagList { text-align: left; margin: 0 0 30px; }

.tagList li { display: inline-block; font-size: 1.2rem; line-height: 20px; padding: 0 8px; background: #f4f2f0; margin: 0 5px 3px 0; }

.hoverAlpha { transition: opacity 0.2s ease; }

.hoverAlpha:hover { opacity: 0.8; }

a[class="pdf"] { background: url(../img/common/icon_pdf.png) no-repeat left center/16px auto; padding-left: 20px; text-decoration: underline; color: #638fa2; }

a[class="pdf"]:hover { text-decoration: none; }

.btnSS, .btnS, .btnM, .btnL { width: 100%; }

.btnSS a, .btnS a, .btnM a, .btnL a { width: 100%; display: block; line-height: 40px; font-size: 1.45rem; padding: 0; background: #638fa2; color: #FFF !important; font-weight: 500; text-align: center; text-decoration: none !important; }

.btnSS.gray a, .btnS.gray a, .btnM.gray a, .btnL.gray a { background: #a8aaab; }

.btnSS.brown a, .btnS.brown a, .btnM.brown a, .btnL.brown a { background: #665852; }

.btnSS { max-width: 125px; }

.btnS { max-width: 180px; }

.btnM { max-width: 260px; }

.btnL { max-width: 260px; }

.btnL a { font-size: 1.8rem; line-height: 60px; }

.external a { box-sizing: border-box; }

.external a::after { content: ''; display: inline-block; vertical-align: middle; background: url(../img/common/linkmark_white.svg) no-repeat 0 -1px/19px auto; width: 19px; height: 15px; margin-left: 10px; }

.btnWrap { display: flex; margin: 30px 0; }

.btnWrap:last-child { margin-bottom: 0; }

@media screen and (max-width: 989px) { .btnWrap { display: block; } }

.btnWrap li { background: none; padding: 0; }

@media screen and (max-width: 989px) { .btnWrap li { max-width: none; } }

.btnWrap li + li { margin-left: 20px; }

@media screen and (max-width: 989px) { .btnWrap li + li { margin: 10px 0 0; } }

.btnWrap.center { justify-content: center; }

@media screen and (max-width: 989px) { .btnWrap.half { display: flex; flex-wrap: wrap; justify-content: space-between; } }

@media screen and (max-width: 989px) { .btnWrap.half li { width: calc(50% - 5px); margin-top: 10px; }
  .btnWrap.half li a { display: flex; justify-content: center; align-items: center; height: 100%; } }

@media screen and (max-width: 989px) { .btnWrap.half li + li { margin: 10px 0 0; } }

@media screen and (max-width: 989px) { .btnWrap.half > li:nth-child(-n+2) { margin-top: 0; } }

.iconLink a { display: inline-block; background: url(../img/common/vector_yellow_right.svg) no-repeat left center/7px auto; padding-left: 15px; color: #638fa2; text-decoration: underline; }

.iconLink a:hover { text-decoration: none; }

/* SECTION */
.section { padding: 0 0 60px; position: relative; }

.section-top { padding-top: 60px; }

.section.bgLightest { background: #f4f2f0; }

.section.bgLighter { background: #eeebe8; }

.section.bgDark { background: #515457; padding: 30px 0 0; }

.section .inner960 { width: 960px; margin: 0 auto; }

.section .inner960 > div:last-child { margin-bottom: 20px; }

.section h2.lead { font-size: 2.7rem; font-weight: 500; color: #222; margin: 0 0 35px; }

.section .lead { margin: 0 0 40px; }

.section table { width: 100%; }

.section table th, .section table td { border: 1px solid #DDD; padding: 10px 15px; text-align: left; vertical-align: middle; }

.section table th { background: #faf9f8; font-weight: 500; }

.section .table01 { width: 100%; }

.section .table01 th { background: #faf9f8; width: 25%; font-weight: 500; }

.section .table01 th, .section .table01 td { border: 1px solid #DDD; padding: 10px 15px; vertical-align: middle; text-align: left; font-size: 1.4rem; }

.section .boxList { display: flex; justify-content: space-between; width: 980px; margin: 0 -10px 50px; }

.section .boxList li { margin: 0 10px; text-align: left; background: #FFF; }

.section .boxList li .title { font-size: 1.8rem; font-weight: 500; padding: 20px 20px 15px; position: relative; color: #222; }

.section .boxList li .caption { font-size: 1.3rem; padding: 0 20px 35px; }

.section .boxList li a { display: block; }

.section .boxList li a .title { text-indent: 15px; }

.section .boxList li a .title::after { position: absolute; width: 6px; height: 6px; content: ""; background: url(../img/common/vector_yellow_right.svg) no-repeat center center; background-size: 6px 6px; left: 20px; top: 32px; }

.section .boxList.small li .title { font-size: 1.5rem; font-weight: 500; padding: 15px 20px 15px; }

.section .boxList.small li a .title::after { top: 25px; }

.section .anchorList { background: #faf9f8; border: 1px solid #ddd; padding: 20px 30px 15px; margin: 0 0 50px; text-align: left; font-size: 1.4rem; }

.section .anchorList li { display: inline-block; margin: 0 20px 5px 0; }

.section .anchorList li a { color: #444; padding: 0 0 0 15px; text-decoration: underline; background: url(../img/common/vector_yellow_down.svg) no-repeat left center; background-size: 6px 6px; }

.section .anchorList li a:hover { color: #638fa2; }

.section .tabListL { width: 990px; display: flex; justify-content: space-between; margin: 0 -15px 50px; }

.section .tabListL li { margin: 0 15px; width: 100%; font-weight: 500; }

.section .tabListL li a, .section .tabListL li span { line-height: 40px; font-size: 1.45rem; color: #FFF; background: #a8aaab; display: flex; justify-content: center; align-items: center; }

.section .tabListL li span { background: #638fa2; position: relative; }

.section .tabListL li span::after { content: ""; background: #638fa2; width: 8px; height: 8px; left: 0; bottom: -3px; right: 0; transform: rotate(45deg); margin: 0 auto; position: absolute; }

.section .tabListS { margin: 0 0 50px; }

.section .tabListS li { display: inline-block; font-size: 1.4rem; }

.section .tabListS li a, .section .tabListS li span { padding: 0 10px 0 0; margin: 0 10px 0 0; position: relative; }

.section .tabListS li span, .section .tabListS li.active a { color: #638fa2; font-weight: 500; text-decoration: none; }

.section .tabListS li a::after, .section .tabListS li span::after { border-right: 1px solid #a0a0a0; content: ""; position: absolute; height: 10px; right: 0; top: 0; bottom: 0; margin: auto 0; }

.section .tabListS li a { text-decoration: underline; }

.section .tabListS li a:hover { color: #638fa2; }

.section .tabListS li:last-child a, .section .tabListS li:last-child span { padding: 0; margin: 0; }

.section .tabListS li:last-child a::after, .section .tabListS li:last-child span::after { display: none; }

.planTopBlock { width: 100%; margin: 0 auto 50px; background: #FFF; _zoom: 1; overflow: hidden; }

.planTopBlock .sldBlock { float: left; width: 420px; }

.planTopBlock .titleBlock { width: 460px; float: right; padding: 35px 40px 40px 0; text-align: left; }

.planTopBlock .titleBlock h1 { font-weight: 500; font-size: 2.5rem; line-height: 1.7; margin: 0 0 10px; display: block; }

.priceBlock { padding: 15px 20px; background: #faf9f8; border: 1px solid #ddd; }

.priceBlock table { width: 100%; font-size: 1.4rem; }

.priceBlock table th, .priceBlock table td { text-align: left; vertical-align: top; border: none; padding: 0; }

.priceBlock table th { width: 70px; }

.planMainBlock { width: auto; padding: 40px 40px 30px; margin: 0 auto 50px; background: #FFF; text-align: left; }

.borderBlock { padding: 40px 40px 30px; border: 1px solid #bbb; margin: 0 auto 50px; width: auto; text-align: left; }

.freeArea img { max-width: 100%; overflow: hidden; }

.freeArea p, .freeArea ul.iconList, .freeArea ol, .freeArea table, .freeArea blockquote, .bgGray, .freeArea hr { font-size: 1.4rem; margin: 0 0 40px; }

.freeArea a { color: #638fa2; text-decoration: underline; }

.freeArea a:hover { color: #D00; }

.freeArea .imgBlock { _zoom: 1; overflow: hidden; }

.freeArea .imgBlock.center .img { text-align: center; margin-bottom: 15px; }

.freeArea .imgBlock.left .img { float: left; padding-right: 40px; }

.freeArea .imgBlock.right .img { float: right; padding-left: 40px; }

ul.iconList li { background: url(../img/common/vector_yellow_right.svg) no-repeat 0px 8px; background-size: 6px 6px; padding: 0 0 0 15px; text-align: left; }

ul.iconList li a { color: #638fa2; text-decoration: underline; }

ul.iconList li a:hover { text-decoration: none; }

.freeArea .imgList { display: flex; }

.freeArea .imgList + .imgList { margin-top: 30px; }

.freeArea .imgList li { background: none; padding: 0; width: 280px; }

.freeArea .imgList li + li { margin-left: 20px; }

.freeArea .imgList li .img { text-align: center; margin: 0 0 10px; }

.freeArea .imgList li .caption { text-align: center; margin: 0; font-size: 1.3rem; }

.freeArea ol { padding: 0 0 0 15px; }

.freeArea hr { border: none; border-top: 1px solid #e6e6e6; margin: 40px 0; }

blockquote, .bgGray { background: #faf9f8; border: 1px solid #DDD; padding: 15px 20px; text-align: left; }

blockquote + .bgGray { margin-top: 20px; }

.roomTopBlock { width: 100%; margin: 0 auto 50px; background: #FFF; }

.roomTopBlock .sldBlock { _zoom: 1; overflow: hidden; }

.roomTopBlock .sldBlock .img { width: 750px; height: 500px; float: left; }

.roomTopBlock .sldBlock ul { width: 210px; float: right; }

.roomTopBlock .sldBlock ul li { float: none; width: 100%; height: 125px; overflow: hidden; }

.roomTopBlock .titleBlock { text-align: left; padding: 40px 40px 50px; _zoom: 1; overflow: hidden; }

.roomTopBlock .titleBlock .title { font-size: 2.1rem; font-weight: 500; margin: 0 0 30px; color: #222; }

.roomTopBlock .titleBlock .imgBlock { float: right; width: 420px; padding: 0 0 0 40px; }

.pickupBlock { width: 1100px; margin: 0 -70px 35px; position: relative; }

.pickupBlock .mainList { _zoom: 1; overflow: hidden; position: relative; margin: 0 auto; width: 990px; padding: 0 55px; }

.pickupBlock .mainList li { float: left; width: 300px; height: 365px; margin: 0 15px; background: #FFF; position: relative; }

.pickupBlock .mainList li a { display: block; }

.pickupBlock .mainList li .title { padding: 18px 20px 0; overflow: hidden; font-size: 1.4rem; line-height: 22px; height: 66px; text-indent: 15px; text-align: left; background: url(../img/common/vector_yellow_right.svg) no-repeat 20px 26px; background-size: 6px 6px; }

.pickupBlock .mainList li .title::after { content: "MORE"; color: #888; border: 1px solid #ddd; padding: 0 8px; line-height: 16px; margin: 0 0 0 5px; font-size: 1.1rem; font-weight: 500; }

.pickupBlock .mainList li.noMore .title::after { content: none; }

.pickupBlock .mainList li .info { color: #999; font-size: 1.2rem; height: 36px; overflow: hidden; line-height: 18px; border-top: 1px solid #ddd; padding: 13px 0 0; margin: 10px 20px 0; text-align: left; }

.pickupBlock .mainList li a .info { border-top: 1px solid #ddd; }

.pickupBlock .slick-dots { clear: both; padding: 25px 0 0; }

.pickupBlock .slick-dots li { float: none; width: 5px; height: 5px; margin: 0 6px; background: none; border: 1px solid #aea799; transform: rotate(45deg); display: inline-block; text-indent: -999px; overflow: hidden; cursor: pointer; }

.pickupBlock .slick-dots li.slick-active { background: #aea799; }

.pickupBlock .slick-prev, .pickupBlock .slick-next { position: absolute; width: 30px; height: 30px; top: 145px; text-indent: -999px; overflow: hidden; }

.pickupBlock .slick-prev { background: url(../img/common/vector_pickup_left.svg) no-repeat center center; background-size: 30px 30px; left: 0px; }

.pickupBlock .slick-next { background: url(../img/common/vector_pickup_right.svg) no-repeat center center; background-size: 30px 30px; right: 0px; }

.sideMoreLink { width: 140px; position: absolute; right: 10px; top: 10px; }

.sideMoreLink a { width: 100%; line-height: 30px; background: #FFF; border-radius: 15px; font-size: 1.3rem; display: block; }

.topicsBlock .sideMoreLink, .informationBlock .sideMoreLink { right: -60px; }

.topicsBlock { width: 100%; margin: 0 auto 30px; position: relative; }

.topicsBlock .topicsList { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }

.topicsBlock .topicsList li { width: 470px; background: #FFF; margin: 0 0 20px; text-align: left; }

.topicsBlock .topicsList li a { display: flex; align-items: stretch; width: 100%; min-height: 120px; height: 100%; position: relative; }

.topicsBlock .topicsList li .img { flex-basis: 120px; }

.topicsBlock .topicsList li div { padding: 15px 20px; flex-basis: 310px; display: flex; align-items: center; align-content: center; flex-wrap: wrap; }

.topicsBlock .topicsList li div p { font-size: 1.4rem; flex-basis: 100%; }

.topicsBlock .topicsList li div .date { color: #638fa2; font-weight: 500; margin: 0 0 5px; }

.topicsBlock .topicsList li div .date span { padding: 0 10px 0 0; margin: 0 10px 0 0; position: relative; }

.topicsBlock .topicsList li div .date span::after { border-right: 1px solid #638fa2; content: ""; position: absolute; height: 10px; right: 0; top: 0; bottom: 0; margin: auto 0; }

.informationBlock { width: 100%; margin: 0 auto 50px; position: relative; }

.informationBlock .informationList li { display: block; margin: 0 0 1px; }

.informationBlock .informationList li a { display: block; padding: 25px 40px; background: #FFF; text-align: left; }

.informationBlock .informationList li a .date { color: #638fa2; font-weight: 500; margin: 0 0 5px; }

.informationBlock .informationList li a .date span { padding: 0 10px 0 0; margin: 0 10px 0 0; position: relative; }

.informationBlock .informationList li a .date span::after { border-right: 1px solid #638fa2; content: ""; position: absolute; height: 10px; right: 0; top: 0; bottom: 0; margin: auto 0; }

.withImageBox { margin: 0 auto 50px; background: #FFF; _zoom: 1; overflow: hidden; text-align: left; }

.withImageBox .inner { padding: 40px 40px 50px; }

.withImageBox .inner h3 { margin: 0 0 30px; }

.withImageBox.center .img { font-size: 0; letter-spacing: 0; }

.withImageBox.center .img img { display: inline-block; width: 50%; }

.withImageBox.left .img { width: 350px; float: left; margin-right: 40px; }

.withImageBox.right .img { width: 350px; float: right; margin-left: 40px; }

/* ::::::::::::::::::::::::::::::::: PC ::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 990px) { .sp { display: none !important; } }

/* ::::::::::::::::::::::::::::::::: SP ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 989px) { .pc { display: none !important; }
  /* ::::::::::::::::::::::::::::::::: COMMON ::::::::::::::::::::::::::::::::: */
  .wrap { min-width: 100%; }
  /*COMMON*/
  h3 { font-size: 1.8rem; margin: 0 0 30px; }
  h3.en { font-size: 2.2rem; font-weight: 900; }
  h3.withBar { font-size: 1.7rem; padding: 8px 5%; margin-bottom: 15px; }
  h3.withTab { margin: 0 0 30px; }
  h4 { font-size: 1.6rem; margin: 0 0 25px; }
  .breadcrumbs { padding: 7px 4% 12px; font-size: 1.05rem; }
  .hoverAlpha:hover { opacity: 1; }
  /* SECTION */
  .section { padding: 0 0 40px; position: relative; }
  .section-top { padding-top: 40px; }
  .section.bgDark { padding: 30px 0 10px; }
  .section .inner960 { width: 90%; margin: 0 auto; }
  .section h2.lead { font-size: 2.0rem; margin: 0 0 30px; }
  .section .table01 { border-top: 1px solid #DDD; }
  .section .table01 th, .section .table01 td { display: block; width: auto; border-top: none; padding: 10px 15px; }
  .section .btnM { max-width: 100%; }
  .section .btnL { max-width: 100%; }
  .section .btnSS a, .section .btnS a, .section .btnM a, .section .btnL a { box-sizing: border-box; min-height: 40px; padding: 8px 0; line-height: 1.6; }
  .section .btnL a { min-height: 60px; padding: 13px 0; line-height: 1.8; }
  .section .boxList { display: block; width: 100%; margin: 0 0 10px; }
  .section .boxList li { margin: 0 0 30px; }
  .section .boxList li .title { font-size: 1.7rem; padding: 20px 5% 15px; }
  .section .boxList li .caption { padding: 0 5% 30px; }
  .section .boxList li a .title::after { left: 5%; }
  .section .boxList.small li .title { padding: 20px 5% 15px; }
  .section .anchorList { padding: 15px 5%; margin: 0 0 40px; }
  .section .anchorList li { margin: 0 0 5px; }
  .section .anchorList li:not(:last-child) { margin-right: 10px; }
  .section .anchorList.wide li { display: block; }
  .section .tabListL { width: 102%; margin: 0 -1% 40px; }
  .section .tabListL li { margin: 0 2%; padding: 0; }
  .section .tabListL li a, .section .tabListL li span { line-height: 1.5; font-size: 1.4rem; padding: 5px 10px; height: 100%; }
  .section .tabListL li:first-child { margin-left: 0; }
  .section .tabListL li:last-child { margin-right: 0; }
  .section .tabListS { margin: 0 0 35px; padding-top: 5px; }
  .planTopBlock { width: 100%; margin: 0 auto 40px; }
  .planTopBlock .sldBlock { float: none; width: 100%; }
  .planTopBlock .titleBlock { width: 90%; float: none; padding: 30px 5% 35px; text-align: left; }
  .planTopBlock .titleBlock h1 { font-size: 2rem; line-height: 1.5; margin: 0 0 10px; width: 100%; display: block; }
  .priceBlock { padding: 15px 5%; }
  .planMainBlock { width: auto; padding: 30px 5% 20px; margin: 0 auto 40px; }
  .borderBlock { padding: 30px 5% 20px; margin: 0 auto 40px; }
  .freeArea img { max-width: 100%; overflow: hidden; }
  .freeArea p, .freeArea ul.iconList, .freeArea ol, .freeArea table, .freeArea blockquote, .bgGray .freeArea hr { margin: 0 0 30px; }
  .freeArea hr { margin: 30px 0; }
  .freeArea .imgBlock.left .img { max-width: 45%; padding-right: 5%; }
  .freeArea .imgBlock.right .img { max-width: 45%; padding-left: 5%; }
  .freeArea .imgList { display: block; margin: 0 auto 10px; }
  .freeArea .imgList li { width: 100%; }
  .freeArea .imgList li + li { margin-left: 0; }
  .freeArea .imgList li .caption { margin: 0 0 20px; }
  blockquote, .bgGray { padding: 15px 5%; }
  .roomTopBlock { margin: 0 auto 40px; }
  .roomTopBlock .sldBlock .img { width: 100%; height: auto; float: none; }
  .roomTopBlock .sldBlock ul { width: 100%; float: none; }
  .roomTopBlock .sldBlock ul li { width: 25%; height: auto; float: left; }
  .roomTopBlock .titleBlock { padding: 35px 5% 45px; _zoom: 1; }
  .roomTopBlock .titleBlock .title { font-size: 2.1rem; font-weight: 500; margin: 0 0 25px; }
  .roomTopBlock .titleBlock .imgBlock { float: none; width: 100%; padding: 35px 0 0 0; }
  .pickupBlock { width: 100%; margin: 0 auto 25px; }
  .pickupBlock .mainList { width: 100%; padding: 0; }
  .pickupBlock .mainList li { width: 100%; height: auto; margin: 0; }
  .pickupBlock .mainList li img { width: 100%; height: auto; }
  .pickupBlock .mainList li .title { padding: 18px 0 0; margin: 0 5% 13px; overflow: hidden; background-position: 0px 26px; }
  .pickupBlock .mainList li .info { position: relative; width: 90%; left: auto; bottom: auto; margin: 0 auto 17px; }
  .pickupBlock .slick-dots { padding: 25px 70px 5px; }
  .pickupBlock .slick-dots li { float: none; width: 5px; height: 5px; margin: 0 6px; background: none; border: 1px solid #aea799; transform: rotate(45deg); display: inline-block; text-indent: -999px; overflow: hidden; cursor: pointer; }
  .pickupBlock .slick-dots li.slick-active { background: #aea799; }
  .sideMoreLink { position: relative; right: auto; top: auto; margin: -5px auto 30px; }
  .topicsBlock .sideMoreLink, .informationBlock .sideMoreLink { right: auto; }
  .topicsBlock { width: 100%; margin: 0 auto 40px; }
  .topicsBlock .topicsList { display: block; }
  .topicsBlock .topicsList li { width: 100%; margin: 0 0 1px; }
  .topicsBlock .topicsList li a { display: block; min-height: 100px; }
  .topicsBlock .topicsList li .img { flex-basis: 100px; }
  .topicsBlock .topicsList li div { padding: 15px 5%; flex-basis: 250px; }
  .topicsBlock .topicsList li div .date { font-size: 1.2rem; margin: 0 0 1px; }
  .informationBlock { width: 100%; margin: 0 auto 40px; }
  .informationBlock .informationList li { display: block; margin: 0 0 1px; }
  .informationBlock .informationList li a { padding: 15px 5%; }
  .withImageBox { margin: 0 auto 40px; }
  .withImageBox .inner { padding: 30px 5% 40px; }
  .withImageBox .inner h3 { margin: 0 0 20px; }
  .withImageBox.center .img img { display: block; width: 100%; }
  .withImageBox.left .img { width: 100%; float: none; margin-right: 0; }
  .withImageBox.right .img { width: 100%; float: none; margin-left: 0; } }

/* ::::::::::::::::::::::::::::::::: スクロール用テーブル ::::::::::::::::::::::::::::::::: */
div.scroll_div { overflow: auto; }

/* ::::::::::::::::::::::::::::::::: プラン一覧 ::::::::::::::::::::::::::::::::: */
.planList_section { padding-bottom: 0; }

.planList_section .tabListS { margin-bottom: 0; padding-bottom: 50px; }

@media screen and (max-width: 989px) { .planList_section .tabListS { display: none; } }

.planList_section .catList { background: #faf9f8; border: 1px solid #ddd; padding: 15px 30px 15px; margin: 0 0 50px; text-align: left; font-size: 1.4rem; }

@media screen and (max-width: 989px) { .planList_section .catList { display: none; } }

.planList_section .catList li { display: inline-block; margin: 0 20px 5px 0; }

.planList_section .catList li a { color: #444; margin: 0; padding: 0 0 0 15px; text-decoration: underline; background: url(../img/common/vector_yellow_right.svg) no-repeat left center; background-size: 6px 6px; }

.planList_section .catList li a:hover { color: #638fa2; }

.planList_section .catList li a::after { content: none; }

.planList_section .catList li:last-child a { padding: 0 0 0 15px; }

.planList_section .catList li.active a { color: #638fa2; font-weight: 700; text-decoration: none; }

.planList_section .searchBlock { border: solid 1px #ddd; background: #faf9f8; padding: 16px 10px; margin-bottom: 40px; font-size: 0; }

.planList_section .searchBlock p { display: inline-block; margin-right: 10px; font-size: 1.5rem; }

@media screen and (max-width: 989px) { .planList_section .searchBlock p { display: block; } }

.planList_section .searchBlock p span { color: #638fa2; font-weight: 700; }

.planList_section .categorySelect { background: #515457 url(../img/common/mark_select_white.svg) no-repeat right 15px center/8px auto; border-radius: 0; width: 100%; height: 50px; line-height: 50px; margin-bottom: 40px; padding: 0 17px; text-align: left; color: #fff; font-size: 14px; }

.planList_section .more_btn { margin: 50px auto 0; }

@media screen and (min-width: 990px) { .planList_section .more_btn { max-width: none; width: 360px; } }

@media screen and (max-width: 989px) { .planList_section .more_btn { margin: 40px auto 0; } }

.planList_section .more_btn a { width: 100%; }

.planList_section .inner960 > div:last-child { margin-bottom: 0; }

.planContentsList { margin-bottom: 30px; }

.planContentsList > li { background: #fff; padding: 36px 40px 41px; margin-bottom: 40px; text-align: left; }

@media screen and (max-width: 989px) { .planContentsList > li { padding: 16px 5% 30px; margin-bottom: 30px; } }

.planContentsList > li:last-child { margin-bottom: 0; }

.planContentsList > li.recommendation { border: solid #d4b572 5px; }

@media screen and (max-width: 989px) { .planContentsList > li.recommendation { border-width: 2px; }
  .planContentsList > li.recommendation .inner { margin-right: -2px; margin-left: -2px; }
  .planContentsList > li.recommendation .priceBlock { margin-right: -2px; margin-left: -2px; }
  .planContentsList > li.recommendation .btn { margin-right: -2px; margin-left: -2px; } }

.planContentsList > li.recommendation .icon { font-size: 1.3rem; background: #d4b572; display: inline-block; height: 24px; line-height: 24px; padding: 0 20px; border-radius: 12px; color: #fff; margin-bottom: 8px; }

.planContentsList .inner::after { content: ""; display: block; clear: both; }

.planContentsList .inner .img { float: left; width: 300px; margin: 0 40px 30px 0; }

@media screen and (max-width: 989px) { .planContentsList .inner .img { float: none; width: auto; margin: 0 0 12px 0; } }

.planContentsList .inner .img img { max-width: 100%; }

.planContentsList .inner .textArea { overflow: hidden; }

.planContentsList .planTitle { font-size: 2.1rem; line-height: 1.666; margin-bottom: 15px; font-weight: 500; color: #222; }

@media screen and (max-width: 989px) { .planContentsList .planTitle { margin-bottom: 10px; font-size: 1.6rem; line-height: 1.5625; } }

.planContentsList .tagList { margin-bottom: 20px; }

@media screen and (max-width: 989px) { .planContentsList .tagList { margin-bottom: 10px; } }

.planContentsList .desc { margin-bottom: 25px; font-size: 1.3rem; line-height: 1.692; }

.planContentsList .priceBlock { margin-bottom: 30px; }

@media screen and (max-width: 989px) { .planContentsList .priceBlock { margin-bottom: 20px; } }

@media screen and (max-width: 989px) { .planContentsList .btnWrap { max-width: 350px; margin: 0 auto; }
  .planContentsList .btnWrap li:nth-child(odd):last-child { max-width: none; width: 100%; }
  .planContentsList .btnWrap li a { flex-direction: column; justify-content: center; align-items: center; font-size: 1.45rem; }
  .planContentsList .btnWrap span { font-size: 1.3rem; } }

/*sns*/
.sns_box_wrap { padding: 25px 40px; border: 1px solid #bbb; margin: 0 auto; width: auto; text-align: left; }

.sns_box_wrap .sns_box { display: flex; justify-content: center; margin: 0 auto; }

.sns_box_wrap .sns_box a { display: block; width: 30px; height: 30px; margin: 0 10px; text-align: center; }

.sns_box_wrap .sns_box a img { width: 25px; height: auto; vertical-align: middle; }

@media screen and (max-width: 989px) { .sns_box_wrap .sns_box { width: 100%; }
  .sns_box_wrap .sns_box a { margin: 0 8px; } }

/* ::::::::::::::::::::::::::::::::: プラン詳細 ::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 989px) { .planDetail .planTopBlock { margin-bottom: 30px; } }

.planDetail .planTopBlock.recommendation { border-right: solid #dfc896 5px; box-sizing: border-box; position: relative; overflow: visible; margin-top: 20px; }

@media screen and (max-width: 989px) { .planDetail .planTopBlock.recommendation { border-right: none; border-bottom: solid #dfc896 5px; margin-top: 0; } }

.planDetail .planTopBlock.recommendation::after { content: ''; display: block; clear: both; }

.planDetail .planTopBlock.recommendation .icon { display: flex; justify-content: center; align-items: center; background: #d4b572; width: 70px; height: 70px; border-radius: 50%; position: absolute; top: -25px; right: -25px; z-index: 1; color: #fff; font-size: 1.3rem; font-weight: 500; line-height: 1.461; text-align: center; }

@media screen and (max-width: 989px) { .planDetail .planTopBlock.recommendation .icon { position: static; display: inline-block; width: auto; height: 24px; line-height: 24px; padding: 0 21px; border-radius: 12px; margin-bottom: 10px; } }

.planDetail .btnWrap { margin-bottom: 0; }

@media screen and (min-width: 990px) { .planDetail .btnWrap { justify-content: center; } }

@media screen and (max-width: 989px) { .planDetail .btnWrap { display: block; margin: 0 15px; } }

.planDetail .btnWrap li { background: none; margin: 0 10px; }

@media screen and (max-width: 989px) { .planDetail .btnWrap li { max-width: none; margin: 10px 0; padding: 0; } }

.planDetail .btnWrap .btnL { max-width: 360px; }

.planArticle { margin-top: 60px; padding-bottom: 50px; /* ::::::::::::::::::::::::::::::::: newStyle_stayplan ::::::::::::::::::::::::::::::::: */ }

@media screen and (max-width: 989px) { .planArticle { margin-top: 30px; padding-bottom: 30px; } }

.planArticle h3:not([class]) + h3:not([class]) { margin-top: -1.6em; }

@media screen and (max-width: 989px) { .planArticle .planDetailTable th, .planArticle .planDetailTable td { display: block; } }

@media screen and (max-width: 989px) { .planArticle .planDetailTable td { border-top: none; } }

@media screen and (min-width: 990px) { .planArticle .planDetailTable th { width: 15%; } }

@media screen and (max-width: 989px) { .planArticle .planDetailTable tr:not(:last-child) td { border-bottom: none; } }

.planArticle .menuTable th, .planArticle .menuTable td { border: none; background: none; padding: 4px 8px; }

@media screen and (min-width: 990px) { .planArticle .menuTable th { width: 10%; } }

.planArticle .imgList { margin-bottom: 30px; }

@media screen and (max-width: 989px) { .planArticle .imgList { display: block; }
  .planArticle .imgList li { width: 100%; }
  .planArticle .imgList li img { width: 100%; }
  .planArticle .imgList li + li { margin-top: 15px; } }

@media screen and (max-width: 989px) { .planArticle .imgList.col2 { margin-bottom: 20px; }
  .planArticle .imgList.col2 + h4 { margin-bottom: 15px; } }

.planArticle .imgList.col2 li { width: 50%; margin: 0; }

@media screen and (max-width: 989px) { .planArticle .imgList.col2 li { width: 100%; } }

.planArticle .imgList.col2 li .img { width: 100%; }

@media screen and (max-width: 989px) { .planArticle .imgList.col2 li .img { margin: 0; } }

.planArticle .imgList.col2 li .img img { width: 100%; }

.planArticle ul { font-size: 1.4rem; }

.planArticle .planBlock { margin-bottom: 20px; }

@media screen and (max-width: 989px) { .planArticle .planBlock { margin-bottom: 30px; } }

@media screen and (max-width: 989px) { .planArticle .planBlock .img { float: none !important; max-width: 100% !important; text-align: center; padding-right: 0 !important; padding-left: 0 !important; margin-bottom: 25px; } }

@media screen and (min-width: 990px) { .planArticle .planBlock:last-child .img { margin-bottom: 0; } }

.planArticle .planBlock .textArea { overflow: hidden; }

.planArticle .planBlock .textArea h4 { margin-bottom: 20px; font-size: 2rem; }

@media screen and (max-width: 989px) { .planArticle .planBlock .textArea h4 { margin-bottom: 10px; font-size: 1.7rem; } }

.planArticle .planBlock .textArea p { margin-bottom: 30px; }

.planArticle .planBlock .textArea .btnWrap { justify-content: flex-start; }

.planArticle .planBlock .textArea .btnWrap li:first-child { margin-left: 0; }

.planArticle .btnWrap { justify-content: center; margin-bottom: 50px; }

@media screen and (max-width: 989px) { .planArticle .btnWrap { display: block; margin: 0 0 20px; }
  .planArticle .btnWrap p.btnL { margin: 10px 0; } }

.planArticle .btnWrap:last-child { margin-bottom: 0; }

.planArticle .btnWrap .btnSS a, .planArticle .btnWrap .btnS a, .planArticle .btnWrap .btnM a, .planArticle .btnWrap .btnL a { box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; min-height: 40px; padding: 10px 10px; line-height: 1.5; }

.planArticle .btnWrap .btnL { margin: 0 10px; }

@media screen and (max-width: 989px) { .planArticle .btnWrap .btnL { margin: 10px 0; } }

.planArticle .btnWrap .btnL a { min-height: 60px; }

.planArticle .boxOption { display: flex; flex-direction: row-reverse; }

@media screen and (max-width: 989px) { .planArticle .boxOption { display: block; } }

.planArticle .boxOption .img { width: 300px; }

@media screen and (max-width: 989px) { .planArticle .boxOption .img { width: 100%; } }

.planArticle .boxOption .inner { box-sizing: border-box; width: calc(100% - 300px); padding: 15px 30px 15px 15px; }

@media screen and (max-width: 989px) { .planArticle .boxOption .inner { width: auto; padding: 15px 0 0; } }

.planArticle .boxOption .inner h4 { margin-bottom: 20px; }

@media screen and (max-width: 989px) { .planArticle .boxOption .inner h4 { margin-bottom: 10px; } }

.planArticle .boxOption p { margin-bottom: 0; }

.planArticle .boxOption:not(.bgGray) .img { width: 420px; margin: 0 0 40px; }

@media screen and (max-width: 989px) { .planArticle .boxOption:not(.bgGray) .img { width: 100%; margin: 0 0 20px; } }

.planArticle .boxOption:not(.bgGray) .inner { width: calc(100% - 300px); padding: 15px 30px 15px 15px; }

@media screen and (max-width: 989px) { .planArticle .boxOption:not(.bgGray) .inner { width: 100%; padding: 0 0 30px; }
  .planArticle .boxOption:not(.bgGray) .inner h3 { margin-bottom: 15px; } }

.planArticle .boxOption.reverse { flex-direction: row; }

.planArticle .boxOption.reverse .inner { padding: 0 15px 0 30px; }

@media screen and (max-width: 989px) { .planArticle .boxOption.reverse .inner { padding: 0 0 30px; } }

.planArticle .boxOption.harf { justify-content: space-between; }

.planArticle .boxOption.harf .img, .planArticle .boxOption.harf .inner { width: calc(50% - 20px); }

@media screen and (max-width: 989px) { .planArticle .boxOption.harf .img, .planArticle .boxOption.harf .inner { width: 100%; } }

.planArticle .boxOption.harf .inner { padding: 0; }

.planArticle .boxOption.harf .img span.imgCaption { display: block; width: 100%; margin: 10px 0; font-size: 1.3rem; text-align: center; }

.planArticle .boxOption.harf p { margin: 0 0 40px; }

@media screen and (max-width: 989px) { .planArticle .boxOption.harf p { margin: 0 0 30px; } }

.planArticle h2.center { text-align: center; margin: 40px 0 40px; font-size: 2.7rem; }

@media screen and (max-width: 989px) { .planArticle h2.center { margin: 30px 0 30px; font-size: 2.0rem; } }

.planArticle h2.center:first-child { margin-top: 0; }

.planArticle .imgList.kindList li .img { margin: 0 0 20px; }

.planArticle .imgList.kindList li h4 { margin: 0 0 20px; padding: 0 0 0 20px; background: url(../img/common/vector_yellow_right.svg) no-repeat 0 50%; background-size: 6px 6px; }

.planArticle .imgList.kindList li .caption { text-align: left; }

.planArticle .bgWhite { background: #fff; border: 1px solid #DDD; padding: 15px 20px; font-size: 1.4rem; margin: 0 0 40px; }

@media screen and (max-width: 989px) { .planArticle .bgWhite { padding: 15px 5%; } }

.planArticle p.img.mb30 { margin-bottom: 30px; }

.planArticle .imgList.captionList li .img { position: relative; margin: 0 0 20px;  }

@media screen and (max-width: 989px) { .planArticle .imgList.captionList li .img { min-height: inherit; } }

.planArticle .imgList.captionList li .img span.imgCaption { display: block; width: 100%; margin: 10px 0; font-size: 1.3rem; min-height: 22px; text-align: center; }

@media screen and (max-width: 989px) { .planArticle .imgList.captionList li .img span.imgCaption { min-height: inherit; } }

.planArticle .imgList.captionList li { width: 410px; }

@media screen and (max-width: 989px) { .planArticle .imgList.captionList li { width: 100%; } }

.planArticle .imgList.captionList li + li { margin-left: 60px; }

@media screen and (max-width: 989px) { .planArticle .imgList.captionList li + li { margin: 15px 0 0; } }

.planArticle .imgList.captionList li h4 { margin: 0 0 20px; min-height: 30px; }

@media screen and (max-width: 989px) { .planArticle .imgList.captionList li h4 { margin-bottom: 10px; min-height: inherit; } }

.planArticle .imgList.captionList li .caption { text-align: left; }

.planArticle .widhMidashi { position: relative; font-size: 2.0rem; color: #444444; text-align: left; font-weight: 500; }

@media screen and (max-width: 989px) { .planArticle .widhMidashi { font-size: 1.8rem; } }

.planArticle .widhMidashi01 { border-bottom: 3px solid #a8aaab; }

.planArticle .widhMidashi02 { border-left: 5px solid #a8aaab; padding: 0 0 0 10px; }

.planArticle .widhMidashi03 { padding: 0 0 0 50px; }

.planArticle .widhMidashi03 .widhMidashi03__border { display: inline-block; position: absolute; left: 0; top: 0; bottom: 0; width: 30px; height: 3px; background: #a8aaab; margin: auto; }

.planArticle .widhMidashi01.blue { border-bottom: 3px solid #638fa2; }

.planArticle .widhMidashi02.blue { border-left: 5px solid #638fa2; }

.planArticle .widhMidashi03.blue::before { background: #638fa2; }

.planArticle .widhMidashi01.brown { border-bottom: 3px solid #665852; }

.planArticle .widhMidashi02.brown { border-left: 5px solid #665852; }

.planArticle .widhMidashi03.brown::before { background: #665852; }

.planArticle .widhMidashi04 { border: 1px solid #444; padding: 7px 10px; }

@media screen and (max-width: 989px) { .planArticle .widhMidashi04 { padding: 3px 10px; } }

.planArticle .imgSlideBlock .mainList { _zoom: 1; overflow: hidden; position: relative; margin: 0 auto 30px; width: 100%; box-sizing: border-box; }

.planArticle .imgSlideBlock .mainList li { float: left; width: 540px; height: auto; margin: 0 20px; background: #FFF; position: relative; }

.planArticle .imgSlideBlock .mainList li .img { margin: 0; }

.planArticle .imgSlideBlock .mainList li .img img { width: 100%; }

.planArticle .imgSlideBlock .mainList li .img span.imgCaption { position: absolute; top: 0; left: 0; width: 100%; padding: 7px 20px; box-sizing: border-box; background: rgba(35, 24, 21, 0.7); color: #fff; font-size: 1.3rem; }

@media screen and (max-width: 989px) { .planArticle .imgSlideBlock .mainList li .img span.imgCaption { padding: 4px 20px; } }

.planArticle .imgSlideBlock .slick-dots { clear: both; padding: 30px 0 0; text-align: center; }

.planArticle .imgSlideBlock .slick-dots li { float: none; width: 5px; height: 5px; margin: 0 6px; background: none; border: 1px solid #aea799; transform: rotate(45deg); display: inline-block; text-indent: -999px; overflow: hidden; cursor: pointer; z-index: 1; }

.planArticle .imgSlideBlock .slick-dots li.slick-active { background: #aea799; }

.planArticle .imgSlideBlock .slick-prev, .planArticle .imgSlideBlock .slick-next { position: absolute; width: 30px; height: 30px; top: 190px; margin: auto; text-indent: -999px; overflow: hidden; z-index: 1; }

.planArticle .imgSlideBlock .slick-prev { background: url(../img/common/vector_pickup_left.svg) no-repeat center center; background-size: 30px 30px; left: 105px; }

.planArticle .imgSlideBlock .slick-next { background: url(../img/common/vector_pickup_right.svg) no-repeat center center; background-size: 30px 30px; right: 105px; }

@media screen and (max-width: 1180px) { .planArticle .imgSlideBlock .mainList { padding: 0; }
  .planArticle .imgSlideBlock .slick-prev, .planArticle .imgSlideBlock .slick-next { top: auto; bottom: 0; }
  .planArticle .imgSlideBlock .slick-prev { left: 0; }
  .planArticle .imgSlideBlock .slick-next { right: 0; } }

@media screen and (max-width: 989px) { .planArticle .imgSlideBlock { width: 100%; margin: 0 auto 25px; }
  .planArticle .imgSlideBlock .mainList { width: 100%; padding: 0; }
  .planArticle .imgSlideBlock .mainList li { width: 100%; height: auto; margin: 0; }
  .planArticle .imgSlideBlock .mainList li img { width: 100%; height: auto; }
  .planArticle .imgSlideBlock .mainList li .title { padding: 18px 0 0; margin: 0 5% 13px; overflow: hidden; background-position: 0px 26px; }
  .planArticle .imgSlideBlock .mainList li .info { position: relative; width: 90%; left: auto; bottom: auto; margin: 0 auto 17px; }
  .planArticle .imgSlideBlock .slick-dots { padding: 25px 70px 5px; }
  .planArticle .imgSlideBlock .slick-dots li { float: none; width: 5px; height: 5px; margin: 0 6px; background: none; border: 1px solid #aea799; transform: rotate(45deg); display: inline-block; text-indent: -999px; overflow: hidden; cursor: pointer; }
  .planArticle .imgSlideBlock .slick-dots li.slick-active { background: #aea799; } }

.planArticle > *:last-child { margin-bottom: 0; }

/* ::::::::::::::::::::::::::::::::: 汎用ページ ::::::::::::::::::::::::::::::::: */
.pageTitle { margin: 10px 0 30px; font-size: 2.7rem; font-weight: 500; }

@media screen and (max-width: 989px) { .pageTitle { margin: 0 0 20px; line-height: 1.8; font-size: 2rem; } }

.leadText { margin: 0 0 50px; }

.kv img { width: 100%; }

@media screen and (min-width: 990px) { .planArticle .table01 th { box-sizing: border-box; width: 140px; } }

.boxList .title { background: url(../img/common/vector_yellow_right.svg) no-repeat 20px center/6px auto; padding-left: 35px !important; }

.cautionBlock { padding-top: 30px; }

@media screen and (max-width: 989px) { .cautionBlock { padding-top: 20px; } }

.cautionBlock p { margin-bottom: 0; }

.sns_box_wrap { margin-top: 50px; }

@media screen and (max-width: 989px) { .sns_box_wrap { margin-top: 40px; } }

/******************************************************************
component - video
******************************************************************/
.c-video { max-width: 480px; }

.c-video--center { margin-right: auto; margin-left: auto; }

.c-video--right { margin-left: auto; }

.c-video--full { max-width: none; }

.c-video__title { display: block; text-align: left; line-height: 1.5; font-weight: bold; font-size: 1.08rem; line-height: 1.6; }

@media screen and (max-width: 599px) { .c-video__title { font-size: 1.08rem; } }

.c-video__caption { display: block; text-align: left; line-height: 1.5; }

.c-video__inner { position: relative; padding-top: 56.25%; display: block; }

.c-video__inner > * { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

.c-video__inner:not(:first-child) { margin-top: 0.5rem; }

@media screen and (max-width: 599px) { .c-video__inner:not(:first-child) { margin-top: 0.375rem; } }

.c-video__inner:not(:last-child) { margin-bottom: 0.5rem; }

@media screen and (max-width: 599px) { .c-video__inner:not(:last-child) { margin-bottom: 0.375rem; } }

.c-video__overlay { position: absolute; z-index: +1; top: 0; left: 0; width: 100%; height: 100%; }

h2.event { display: flex; justify-content: center; align-items: center; flex-direction: column; font-size: 3.8rem; line-height: 1.6; font-weight: 900; color: #222; margin: 0 0 35px; }

h2.event span.ja { font-weight: 500; font-size: 1.7rem; }

@media screen and (max-width: 989px) { .planArticle .imgList.sp-col2 { display: flex; flex-wrap: wrap; margin-right: -20px; }
  .planArticle .imgList.sp-col2 li { width: calc(50% - 20px); margin-right: 20px; }
  .planArticle .imgList.sp-col2 li + li { margin-top: 0; } }

.imgList .btnWrap { margin: 10px 0 40px 0 !important; flex-direction: column; align-items: center; }

.imgList .btnWrap li { flex-grow: 1; width: 100% !important; margin: 0 !important; max-width: none !important; }

.imgList .btnWrap li:not(:last-child) { margin-bottom: 10px !important; }

.imgList .btnWrap li a { width: 100% !important; }

.imgBlock .btnWrap { margin: 10px 0 40px 0 !important; }

.planArticle .imgList.col2 { flex-wrap: wrap; margin-right: -60px; margin-top: -40px; }

.planArticle .imgList.col2 > li { width: calc(50% - 60px); margin: 0 !important; margin-right: 60px !important; margin-top: 40px !important; }

@media screen and (max-width: 989px) { .planArticle .imgList.col2 { flex-wrap: wrap; margin-right: 0; margin-top: -40px; }
  .planArticle .imgList.col2 > li { width: 100%; margin: 0 !important; margin-right: 0 !important; margin-top: 40px !important; }
  .planArticle .imgList.col2.sp-col2 { flex-wrap: wrap; margin-right: -10px; margin-top: -20px; }
  .planArticle .imgList.col2.sp-col2 > li { width: calc(50% - 10px); margin: 0 !important; margin-right: 10px !important; margin-top: 20px !important; } }

.imgSlideBlock .caption { font-size: 1.3rem; margin-top: 6px; text-align: center; margin-bottom: 0; }

/******************************************************************
scroll-lock
******************************************************************/
body.is-scroll-lock { position: fixed; width: 100%; height: 100%; left: 0; }

html.is-locked { overflow: hidden; }

html.is-locked body { height: calc(var(--window-inner-height) - 1px); overflow: hidden; }

/******************************************************************
layout - header-fixed
******************************************************************/
.l-header-fixed { position: relative; z-index: 1000; }

.l-header-fixed[data-header-fixed="false"] .l-header-fixed__inner { position: static; }

.l-header-fixed[data-header-fixed="true"] .l-header-fixed__inner { position: fixed; top: 0; width: 100%; }

/******************************************************************
layout - header
******************************************************************/
.l-header { color: #fff; }

.l-header h1 { margin: 0; }

.l-header img { max-width: 100%; }

@media print, screen and (min-width: 990px) { .l-header__inner { display: flex; justify-content: space-between; }
  .l-header__logo { padding: 1rem 1.5rem 1rem 5.5rem; font-size: 0.9rem; display: flex; align-items: center; }
  .l-header__logo a { display: inline-block; }
  .l-header__body { display: flex; }
  .l-header__body > * { display: flex; } }

@media screen and (max-width: 989px) { .l-header__inner { display: flex; justify-content: space-between; }
  .l-header__logo { font-size: 0.9rem; padding: 0.75rem 1.125rem 0.75rem 1.875rem; display: flex; align-items: center; }
  .l-header__logo a { display: inline-block; }
  .l-header__body { display: flex; }
  .l-header__body > * { display: flex; } }

/******************************************************************
layout - nav-mega-overlay
******************************************************************/
.l-nav-mega-overlay { display: none; z-index: 999; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background-color: rgba(0, 0, 0, 0.7); }

/******************************************************************
layout - sp-nav-control
******************************************************************/
.l-sp-nav-control { backface-visibility: hidden; box-sizing: border-box; display: inline-block; text-align: center; z-index: 10000; }

@media print, screen and (min-width: 990px) { .l-sp-nav-control { padding: 18px 10px 10px 10px; min-width: 70px; min-height: 70px; transition-property: opacity; transition-duration: 0.3s; }
  .l-sp-nav-control__item { display: inline-block; top: -1px; position: relative; height: 1px; width: 34px; background-color: #fff; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before, .l-sp-nav-control__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; width: 0; height: 0; left: 0; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before { height: 1px; width: 34px; background-color: #fff; width: 34px; bottom: 10px; }
  .l-sp-nav-control__item::after { height: 1px; width: 34px; background-color: #fff; width: 34px; bottom: -10px; } }

@media screen and (max-width: 989px) { .l-sp-nav-control { padding: 8px 10px 10px 10px; min-width: 50px; min-height: 50px; transition-property: opacity; transition-duration: 0.3s; }
  .l-sp-nav-control__item { display: inline-block; top: -1px; position: relative; height: 1px; width: 24px; background-color: #fff; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before, .l-sp-nav-control__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; width: 0; height: 0; left: 0; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before { height: 1px; width: 24px; background-color: #fff; width: 24px; bottom: 8px; }
  .l-sp-nav-control__item::after { height: 1px; width: 24px; background-color: #fff; width: 24px; bottom: -8px; } }

.l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item { background-color: transparent; }

.l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::before { bottom: 0; transform: rotate(-45deg); }

.l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::after { bottom: 0; transform: rotate(45deg); }

.l-sp-nav-control__text { display: block; font-size: 10px; color: #fff; }

@media print, screen and (min-width: 990px) { .l-sp-nav-control:hover { text-decoration: none; opacity: .6; transform: translate3d(0); } }

.l-sp-nav-control--black .l-sp-nav-control__item { background-color: #000; }

.l-sp-nav-control--black .l-sp-nav-control__item::before, .l-sp-nav-control--black .l-sp-nav-control__item::after { background-color: #000; }

/******************************************************************
layout - sp-nav
******************************************************************/
.l-sp-nav { transform: translateX(100%); opacity: 0; transition-property: transform, opacity; transition-duration: 0.4s; z-index: 1000; position: fixed; width: 35%; min-width: 310px; height: 100vh; height: 100dvh; box-sizing: border-box; text-align: right; display: flex; flex-direction: column; justify-content: center; padding: 50px 2%; right: 0; background-color: #333333; color: #ffffff; }

.l-sp-nav[aria-expanded="true"] { transform: translateX(0); opacity: 1; }

@media screen and (max-width: 989px) { .l-sp-nav { padding: 50px 3%; } }

.l-sp-nav__logo { padding: 1.0em 1.2em 10vh 1.2em; }

.l-sp-nav__logo img { width: 100%; max-width: 360px; }

.l-sp-nav__nav { padding-right: 15px; scrollbar-width: thin; scrollbar-color: rgba(0, 0, 0, 0.4) transparent; }

.l-sp-nav__nav::-webkit-scrollbar { width: 5px; background: transparent; }

.l-sp-nav__nav::-webkit-scrollbar:horizontal { height: 5px; background: transparent; }

.l-sp-nav__nav::-webkit-scrollbar-thumb { background: #fff; border-radius: 2px; }

.l-sp-nav__nav::-webkit-scrollbar-thumb:horizontal { background: #fff; border-radius: 2px; }

.l-sp-nav__nav.is-scroll { overflow-y: scroll; }

.l-sp-nav__nav > li > a { position: relative; padding-right: 11px; }

.l-sp-nav__nav > li > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; right: 0; transform: translate(-3px, 0.8em) rotate(45deg); transform-origin: top right; border-top: 1px solid #333333; border-right: 1px solid #333333; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.l-sp-nav__nav > li > a::after { top: 1.0em; }

.l-sp-nav__nav > li > button { background-color: transparent; width: 100%; text-align: right; position: relative; }

.l-sp-nav__nav > li > button::before, .l-sp-nav__nav > li > button::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }

.l-sp-nav__nav > li > button::before { border-top: 1px solid #333333; width: 14px; height: 0; top: 0; bottom: 0; right: 0; }

.l-sp-nav__nav > li > button::after { border-left: 1px solid #333333; width: 0; height: 14px; top: 0; bottom: 0; right: 6px; transition-property: all; transition-duration: 0.3s; }

.l-sp-nav__nav > li > button::before { top: 1.8em; bottom: auto; }

.l-sp-nav__nav > li > button::after { top: calc(1.8em - 7px); bottom: auto; }

.l-sp-nav__nav > li[aria-expanded="true"] > button::after { height: 0; }

.l-sp-nav__nav > li > button, .l-sp-nav__nav > li > a { display: block; color: #fff; font-size: 15px; padding: 1.0em 1.8em 1.0em 1.2em; }

@media screen and (max-width: 989px) { .l-sp-nav__nav > li > button, .l-sp-nav__nav > li > a { padding: .8em 1.8em .8em 1.2em; } }

.l-sp-nav__nav > li > button:hover, .l-sp-nav__nav > li > a:hover { color: #fff; opacity: .7; }

.l-sp-nav__nav > li > ul { display: none; }

.l-sp-nav__nav > li > ul li { margin-right: 2.0em; }

.l-sp-nav__nav > li > ul li a { display: block; color: #fff; font-size: 13px; padding: .5em 1.2em; }

.l-sp-nav__nav > li > ul li a:hover { color: #fff; opacity: .7; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__logo { transition-delay: 0.4s; opacity: 1; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li { opacity: 1; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(1) { transition-delay: 0.5s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(2) { transition-delay: 0.6s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(3) { transition-delay: 0.7s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(4) { transition-delay: 0.8s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(5) { transition-delay: 0.9s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(6) { transition-delay: 1.0s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(7) { transition-delay: 1.1s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(8) { transition-delay: 1.2s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(9) { transition-delay: 1.3s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(10) { transition-delay: 1.4s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(11) { transition-delay: 1.5s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(12) { transition-delay: 1.6s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(13) { transition-delay: 1.7s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(14) { transition-delay: 1.8s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(15) { transition-delay: 1.9s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(16) { transition-delay: 2.0s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(17) { transition-delay: 2.1s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(18) { transition-delay: 2.2s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(19) { transition-delay: 2.3s; }

.l-sp-nav[aria-expanded="true"] .l-sp-nav__nav li:nth-child(20) { transition-delay: 2.4s; }

.l-sp-nav__logo, .l-sp-nav__nav li { transition-property: opacity; transition-duration: 0.6s; transition-delay: 0; opacity: 0; }

/******************************************************************
layout - language
******************************************************************/
.l-language { display: none; z-index: 1000; position: absolute; box-sizing: border-box; letter-spacing: 1px; right: 70px; background-color: #333333; color: #ffffff; }

@media screen and (max-width: 989px) { .l-language { right: 0; width: 100%; } }

.l-language ul li:not(:first-child) { border-top: 1px solid rgba(255, 255, 255, 0.3); }

.l-language ul a { display: block; color: #fff; font-size: 14px; padding: 1.0em 1.2em; }

.l-language ul a:hover { color: #fff; opacity: .7; }

/******************************************************************
layout - language-btn
******************************************************************/
.l-language-btn { display: flex; align-items: center; text-align: center; color: #fff; font-size: 12px; opacity: .8; padding: 1.8em; letter-spacing: 1px; }

.l-language-btn:hover { color: #fff; opacity: .6; }

@media screen and (max-width: 989px) { .l-language-btn { padding: 1.0em; font-size: 10px; } }

/******************************************************************
layout - sns
******************************************************************/
.l-sns { padding: 20px 20px; }

@media screen and (max-width: 989px) { .l-sns { padding: 20px 5px; } }

.l-sns ul { display: flex; justify-content: flex-end; margin-right: -20px; }

@media screen and (max-width: 989px) { .l-sns ul { justify-content: center; margin-right: -15px; } }

.l-sns li { margin-right: 20px; }

@media screen and (max-width: 989px) { .l-sns li { margin-right: 15px; } }

.l-sns img { height: 24px; vertical-align: bottom; }

/******************************************************************
layout - footer-mega
******************************************************************/
.l-footer-mega__inner { max-width: 960px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 60px; padding-bottom: 60px; }

@media screen and (max-width: 989px) { .l-footer-mega__inner { padding: 20px; } }

@media print, screen and (min-width: 990px) { .l-footer-mega__inner2 { display: flex; flex-wrap: wrap; margin-top: -40px; margin-right: -40px; } }

@media print, screen and (min-width: 990px) and (max-width: 1160px) { .l-footer-mega__inner2 { margin-top: -3.44828vw; margin-right: -3.44828vw; } }

@media print, screen and (min-width: 990px) { .l-footer-mega__item { width: calc((100%/5) - 40px); margin-top: 40px; margin-right: 40px; } }

@media print, screen and (min-width: 990px) and (max-width: 1160px) { .l-footer-mega__item { width: calc((100%/5) - 3.44828vw); margin-top: 3.44828vw; margin-right: 3.44828vw; } }

@media print, screen and (min-width: 990px) { .l-footer-mega__item > *:not(:last-child) { margin-bottom: 40px; } }

/******************************************************************
layout - footer-navs2
******************************************************************/
.l-footer-navs2 { line-height: 1.5; text-align: left; font-size: 1.4rem; }

.l-footer-navs2 a { color: inherit; }

.l-footer-navs2 a:hover { color: inherit; opacity: 1; }

@media print, screen and (min-width: 990px) { .l-footer-navs2 > *:not(:last-child) { margin-bottom: 10px; }
  .l-footer-navs2__link, .l-footer-navs2__title { font-weight: bold; font-size: 1.4rem; }
  .l-footer-navs2__link a:hover, .l-footer-navs2__title a:hover { text-decoration: underline; }
  .l-footer-navs2__body { font-size: 1.3rem; display: block !important; }
  .l-footer-navs2__body > *:not(:last-child) { margin-bottom: 12px; }
  .l-footer-navs2__item { position: relative; padding-left: 20px; }
  .l-footer-navs2__item::before { content: ""; position: absolute; width: 10px; border-top: 1px solid #CCC; left: 0; top: 10px; }
  .l-footer-navs2__item a:hover { text-decoration: underline; } }

@media screen and (max-width: 989px) { .l-footer-navs2 { border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
  .l-footer-navs2__link + .l-footer-navs2__link { border-top: 1px solid rgba(255, 255, 255, 0.2); }
  .l-footer-navs2__link { font-size: 1.4rem; font-weight: normal; font-size: 14px; }
  .l-footer-navs2__link a { display: block; position: relative; padding-right: 26px; padding: 20px 36px 20px 0; }
  .l-footer-navs2__link a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-18px, 4px) rotate(45deg); transform-origin: top right; border-top: 1px solid #fff; border-right: 1px solid #fff; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-footer-navs2__title { font-size: 1.4rem; font-weight: normal; font-size: 14px; }
  .l-footer-navs2__title a { display: block; position: relative; padding: 20px 36px 20px 0; }
  .l-footer-navs2__title a::before, .l-footer-navs2__title a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .l-footer-navs2__title a::before { border-top: 1px solid #fff; width: 14px; height: 0; top: 0; bottom: 0; right: 0; }
  .l-footer-navs2__title a::after { border-left: 1px solid #fff; width: 0; height: 14px; top: 0; bottom: 0; right: 6px; transition-property: all; transition-duration: 0.3s; }
  .l-footer-navs2__title a::after { right: 20px; }
  .l-footer-navs2__title a::before { right: 14px; }
  [aria-expanded="true"] .l-footer-navs2__title a::after { height: 0; }
  .l-footer-navs2__body { display: none; padding: 0 0 20px 20px; }
  .l-footer-navs2__body > *:not(:last-child) { margin-bottom: 10px; }
  .l-footer-navs2__item { position: relative; padding-left: 20px; }
  .l-footer-navs2__item::before { content: ""; position: absolute; width: 10px; border-top: 1px solid #CCC; left: 0; top: 10px; }
  .l-footer-navs2__item a:hover { text-decoration: underline; } }

/******************************************************************
component - 100vw
******************************************************************/
.c-100vw { width: 100vw; margin: 0 calc(50% - 50vw) 50px; }

@media screen and (max-width: 989px) { .c-100vw { margin-bottom: 20px; } }

.c-100vw > img { width: 100%; }

.c-100vw__inner { padding: 40px; }

@media screen and (max-width: 989px) { .c-100vw__inner { padding: 30px 5%; } }

/******************************************************************
component - news-row2
******************************************************************/
.c-news-row2 a { color: inherit; text-decoration: none; transition-property: opacity; transition-duration: 0.3s; }

.c-news-row2 a:hover { text-decoration: none; color: inherit; opacity: .7; }

@media print, screen and (min-width: 990px) { .c-news-row2 { margin-bottom: 40px; display: table; width: 100%; border-top: 1px solid #DDD; }
  .c-news-row2__item { display: table-row-group; }
  .c-news-row2__item > * { display: table-row; }
  .c-news-row2__date { display: table-cell; vertical-align: top; white-space: nowrap; width: 1%; border-bottom: 1px solid #DDD; padding: 1.4rem; }
  .c-news-row2__body { display: table-cell; vertical-align: top; border-bottom: 1px solid #DDD; padding: 1.4rem; } }

@media screen and (max-width: 989px) { .c-news-row2 { margin-bottom: 30px; border-top: 1px solid #DDD; }
  .c-news-row2__item > * { display: block; }
  .c-news-row2__date { display: block; padding: 1.05rem 1.05rem 0 1.05rem; }
  .c-news-row2__body { display: block; border-bottom: 1px solid #DDD; padding: 0 1.05rem 1.05rem 1.05rem; } }

/******************************************************************
component - Midashi
******************************************************************/
.widhMidashi02-center { text-align: center !important; }

.widhMidashi02-center > span { display: inline-block; text-align: left; border-left: 5px solid #a8aaab; padding: 0 0 0 10px; }

.widhMidashi03-center { text-align: center !important; }

.widhMidashi03-center > span { position: relative; display: inline-block; text-align: left; padding: 0 0 0 50px; }

.widhMidashi03-center .widhMidashi03-center__border { display: inline-block; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; width: 30px; height: 3px; background-color: #a8aaab; }

.kv-slick { /******************************************************************
project - carousel-slick
******************************************************************/ }

.kv-slick .slick-slider { box-sizing: border-box; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.kv-slick .slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }

.kv-slick .slick-list.dragging { cursor: pointer; cursor: hand; }

.kv-slick .slick-slider .slick-track, .kv-slick .slick-slider .slick-list { transform: translate3d(0, 0, 0); }

.kv-slick .slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }

.kv-slick .slick-track:before, .kv-slick .slick-track:after { content: ""; display: table; }

.kv-slick .slick-track:after { clear: both; }

.kv-slick .slick-loading .slick-track { visibility: hidden; }

.kv-slick .slick-slide { float: left; height: 100%; min-height: 1px; display: none; }

.kv-slick .slick-slide.slick-loading img { display: none; }

.kv-slick .slick-slide.dragging img { pointer-events: none; }

.kv-slick .slick-initialized .slick-slide { display: block; }

.kv-slick .slick-loading .slick-slide { visibility: hidden; }

.kv-slick .slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.kv-slick .slick-arrow.slick-hidden { display: none; }

.kv-slick .slick-slider { display: none; }

.kv-slick .slick-slider.slick-initialized { display: block; }

.kv-slick__inner { display: none; position: relative; }

.kv-slick__inner.slick-initialized { display: block; }

.kv-slick .slick-slide { line-height: 0; }

.kv-slick .slick-slide img { width: 100%; }

.kv-slick .slick-slide a { display: block; outline: 0; }

.kv-slick .slick-dots { position: absolute; left: 50%; transform: translate(-50%, 0); display: flex; justify-content: center; bottom: 12px; height: 12px; }

@media screen and (max-width: 989px) { .kv-slick .slick-dots { bottom: 8px; height: 8px; } }

.kv-slick .slick-dots li { margin: 0 8px; }

@media screen and (max-width: 989px) { .kv-slick .slick-dots li { margin: 0 6px; } }

.kv-slick .slick-dots li button { display: block; outline: none; transition-property: background; transition-duration: 0.3s; overflow: hidden; text-indent: -999px; background: rgba(255, 255, 255, 0.2); width: 30px; height: 3px; }

.kv-slick .slick-dots li.slick-active button { background: #638fa2; }

.kv-slick .slick-initialized .slick-slide > * { opacity: 0; transform: scale(1.08); transition: all 1.8s ease; }

.kv-slick .slick-initialized .slick-slide.slick-current > * { opacity: 1; transform: scale(1); }

.mb-minus20 { margin-top: -20px !important; }

.mb-10 { height: 10px !important; }

.mb-20 { height: 20px !important; }

.mb-30 { height: 30px !important; }

/******************************************************************
utility - display-off
******************************************************************/
.u-display-off { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; padding: 0; clip: rect(0, 0, 0, 0); }

@media screen and (max-width: 989px) { .u-sp-display-off { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; padding: 0; clip: rect(0, 0, 0, 0); } }

/******************************************************************
utility - text-align
******************************************************************/
.u-center { text-align: center !important; }

.u-right { text-align: right !important; }

.u-left { text-align: left !important; }

@media screen and (max-width: 989px) { .u-sp-center { text-align: center !important; }
  .u-sp-right { text-align: right !important; }
  .u-sp-left { text-align: left !important; } }
