@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700");
/* ====================================================

    ┏───────────────────────┓
    │   Table Of Contents   │
    ┗───────────────────────┛

    -----
    1. General
       1-1. Reset
       1-2. Base
       1-3. Utility
       1-4. Slick
       1-5. Animation
    2. Parts
       3-1. Heading
       3-2. Link
       3-3. Button
    3. Block
       2-1. Header
       2-2. Footer
       2-3. Breadcrumb
       2-4. Contact
       2-5. Pagetop
       2-6. Container

==================================================== */
/* ====================================

    1. General

==================================== */
/*
  1-1. Reset
==================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  border: 0;
}

body {
  line-height: 1;
}

ul {
  list-style: none;
}

ol {
  list-style-type: none;
}

/*
ol > li {
  counter-increment: cnt;
    margin-left: 3em;
    text-indent: -2.5em;
}
ol > li:before {
  content: "（"counter(cnt) "）";
}
*/

ol > li > ul > li {
    text-indent: 0;
    margin-left: 0;
}

.dai3sya_bot_list {
    margin-left: 3em;
    list-style: circle;
}


blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

img {
  vertical-align: bottom;
    max-width: 100%;
}
select{   appearance: none;
   -webkit-appearance: none;
   -moz-appearance: none;
}
/*
  1-2. Base
==================================== */
* {
          box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

@media screen and (max-width: 959px) {
  html {
    font-size: calc(100vw / 37.5);
  }
}

body {
  color: #333;
  font-family: -apple-system, BlinkMacSystemFont, "Helvsetica Neue", "游ゴシック体", "Yu Gothic", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.85714;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, body {
	font-family: "メイリオ", Meiryo, sans-serif;
    font-weight: 400;
  }
  *::-ms-backdrop, input, button, select, textarea {
	font-family: "メイリオ", Meiryo, sans-serif !important;
    font-weight: 400;
  }
}

@media screen and (max-width: 959px) {
  body {
    -webkit-text-size-adjust: 100%;
  }
}

a {
  color: #333;
  text-decoration: none;
  outline: none;
}

.object-fit-img {
  width: 100%;
  height: 100%;
  font-family: "object-fit: cover;";

  -o-object-fit: cover;
     object-fit: cover;
}

.object-fit-img-contain {
  font-family: "object-fit: contain;";

  -o-object-fit: contain;
     object-fit: contain;
}

/*
  1-3. Utility
==================================== */
.is__md {
  display: none !important;
}

@media screen and (max-width: 959px) {
  .is__md {
    display: block !important;
  }
}

.is__md-flex {
  display: none !important;
}

@media screen and (max-width: 959px) {
  .is__md-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.is__md-inline {
  display: none !important;
}

@media screen and (max-width: 959px) {
  .is__md-inline {
    display: inline !important;
  }
}

.is__lg {
  display: block !important;
}

@media screen and (max-width: 959px) {
  .is__lg {
    display: none !important;
  }
}

.is__lg-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

@media screen and (max-width: 959px) {
  .is__lg-flex {
    display: none !important;
  }
}

.is__lg-inline {
  display: inline !important;
}

@media screen and (max-width: 959px) {
  .is__lg-inline {
    display: none !important;
  }
}

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

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-tiny {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.5;
}

.text-small {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2;
}

@media screen and (max-width: 959px) {
  .text-small {
    font-size: 10px;
    font-size: 1rem;
  }
}

.text-medium {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.75;
}

.text-large {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.66667;
}

.text-huge {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
}

.text-big {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.5;
}

@media screen and (max-width: 959px) {
  .text-big {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.text-primary {
  color: #003f99;
}

.text-secondary {
  color: #e54139;
}

.text-muted {
  color: #999;
}

.text-em {
  font-weight: bold;
}

.text-sup {
  font-size: 10px;
  font-size: 1rem;
  vertical-align: super;
}

.text-ur {
  color: #7b1451;
}

.text-kosha {
  color: #008577;
}

.text-tokuyu {
  color: #ba0000;
}

.text-note {
  color: #666;
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 959px) {
  .text-note {
    line-height: 1.5;
  }
}

[class^="icn-"].icn-light {
  fill: #fff;
}

[class^="icn-"].icn-muted {
  fill: #999;
}

[class^="icn-"].icn-mirror {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.mt-0 {
  margin-top: 0 !important;
}

@media screen and (max-width: 959px) {
  .mt-0 {
    margin-top: 0vw !important;
  }
}

.mr-0 {
  margin-right: 0 !important;
}

@media screen and (max-width: 959px) {
  .mr-0 {
    margin-right: 0vw !important;
  }
}

.mb-0 {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 959px) {
  .mb-0 {
    margin-bottom: 0vw !important;
  }
}

.ml-0 {
  margin-left: 0 !important;
}

@media screen and (max-width: 959px) {
  .ml-0 {
    margin-left: 0vw !important;
  }
}

.mt-5 {
  margin-top: 5px !important;
}

@media screen and (max-width: 959px) {
  .mt-5 {
    margin-top: .66667vw !important;
  }
}

.mr-5 {
  margin-right: 5px !important;
}

@media screen and (max-width: 959px) {
  .mr-5 {
    margin-right: .66667vw !important;
  }
}

.mb-5 {
  margin-bottom: 5px !important;
}

@media screen and (max-width: 959px) {
  .mb-5 {
    margin-bottom: .66667vw !important;
  }
}

.ml-5 {
  margin-left: 5px !important;
}

@media screen and (max-width: 959px) {
  .ml-5 {
    margin-left: .66667vw !important;
  }
}

.mt-10 {
  margin-top: 10px !important;
}

@media screen and (max-width: 959px) {
  .mt-10 {
    margin-top: 1.33333vw !important;
  }
}

.mr-10 {
  margin-right: 10px !important;
}

@media screen and (max-width: 959px) {
  .mr-10 {
    margin-right: 1.33333vw !important;
  }
}

.mb-10 {
  margin-bottom: 10px !important;
}

@media screen and (max-width: 959px) {
  .mb-10 {
    margin-bottom: 1.33333vw !important;
  }
}

.ml-10 {
  margin-left: 10px !important;
}

@media screen and (max-width: 959px) {
  .ml-10 {
    margin-left: 1.33333vw !important;
  }
}

.mt-15 {
  margin-top: 15px !important;
}

@media screen and (max-width: 959px) {
  .mt-15 {
    margin-top: 2vw !important;
  }
}

.mr-15 {
  margin-right: 15px !important;
}

@media screen and (max-width: 959px) {
  .mr-15 {
    margin-right: 2vw !important;
  }
}

.mb-15 {
  margin-bottom: 15px !important;
}

@media screen and (max-width: 959px) {
  .mb-15 {
    margin-bottom: 2vw !important;
  }
}

.ml-15 {
  margin-left: 15px !important;
}

@media screen and (max-width: 959px) {
  .ml-15 {
    margin-left: 2vw !important;
  }
}

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

@media screen and (max-width: 959px) {
  .mt-20 {
    margin-top: 2.66667vw !important;
  }
}

.mr-20 {
  margin-right: 20px !important;
}

@media screen and (max-width: 959px) {
  .mr-20 {
    margin-right: 2.66667vw !important;
  }
}

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

@media screen and (max-width: 959px) {
  .mb-20 {
    margin-bottom: 2.66667vw !important;
  }
}

.ml-20 {
  margin-left: 20px !important;
}

@media screen and (max-width: 959px) {
  .ml-20 {
    margin-left: 2.66667vw !important;
  }
}

.mt-25 {
  margin-top: 25px !important;
}

@media screen and (max-width: 959px) {
  .mt-25 {
    margin-top: 3.33333vw !important;
  }
}

.mr-25 {
  margin-right: 25px !important;
}

@media screen and (max-width: 959px) {
  .mr-25 {
    margin-right: 3.33333vw !important;
  }
}

.mb-25 {
  margin-bottom: 25px !important;
}

@media screen and (max-width: 959px) {
  .mb-25 {
    margin-bottom: 3.33333vw !important;
  }
}

.ml-25 {
  margin-left: 25px !important;
}

@media screen and (max-width: 959px) {
  .ml-25 {
    margin-left: 3.33333vw !important;
  }
}

.mt-30 {
  margin-top: 30px !important;
}

@media screen and (max-width: 959px) {
  .mt-30 {
    margin-top: 4vw !important;
  }
}

.mr-30 {
  margin-right: 30px !important;
}

@media screen and (max-width: 959px) {
  .mr-30 {
    margin-right: 4vw !important;
  }
}

.mb-30 {
  margin-bottom: 30px !important;
}

@media screen and (max-width: 959px) {
  .mb-30 {
    margin-bottom: 4vw !important;
  }
}

.ml-30 {
  margin-left: 30px !important;
}

@media screen and (max-width: 959px) {
  .ml-30 {
    margin-left: 4vw !important;
  }
}

.mt-35 {
  margin-top: 35px !important;
}

@media screen and (max-width: 959px) {
  .mt-35 {
    margin-top: 4.66667vw !important;
  }
}

.mr-35 {
  margin-right: 35px !important;
}

@media screen and (max-width: 959px) {
  .mr-35 {
    margin-right: 4.66667vw !important;
  }
}

.mb-35 {
  margin-bottom: 35px !important;
}

@media screen and (max-width: 959px) {
  .mb-35 {
    margin-bottom: 4.66667vw !important;
  }
}

.ml-35 {
  margin-left: 35px !important;
}

@media screen and (max-width: 959px) {
  .ml-35 {
    margin-left: 4.66667vw !important;
  }
}

.mt-40 {
  margin-top: 40px !important;
}

@media screen and (max-width: 959px) {
  .mt-40 {
    margin-top: 5.33333vw !important;
  }
}

.mr-40 {
  margin-right: 40px !important;
}

@media screen and (max-width: 959px) {
  .mr-40 {
    margin-right: 5.33333vw !important;
  }
}

.mb-40 {
  margin-bottom: 40px !important;
}

@media screen and (max-width: 959px) {
  .mb-40 {
    margin-bottom: 5.33333vw !important;
  }
}

.ml-40 {
  margin-left: 40px !important;
}

@media screen and (max-width: 959px) {
  .ml-40 {
    margin-left: 5.33333vw !important;
  }
}

.mt-45 {
  margin-top: 45px !important;
}

@media screen and (max-width: 959px) {
  .mt-45 {
    margin-top: 6vw !important;
  }
}

.mr-45 {
  margin-right: 45px !important;
}

@media screen and (max-width: 959px) {
  .mr-45 {
    margin-right: 6vw !important;
  }
}

.mb-45 {
  margin-bottom: 45px !important;
}

@media screen and (max-width: 959px) {
  .mb-45 {
    margin-bottom: 6vw !important;
  }
}

.ml-45 {
  margin-left: 45px !important;
}

@media screen and (max-width: 959px) {
  .ml-45 {
    margin-left: 6vw !important;
  }
}

.mt-50 {
  margin-top: 50px !important;
}

@media screen and (max-width: 959px) {
  .mt-50 {
    margin-top: 6.66667vw !important;
  }
}

.mr-50 {
  margin-right: 50px !important;
}

@media screen and (max-width: 959px) {
  .mr-50 {
    margin-right: 6.66667vw !important;
  }
}

.mb-50 {
  margin-bottom: 50px !important;
}

@media screen and (max-width: 959px) {
  .mb-50 {
    margin-bottom: 6.66667vw !important;
  }
}

.ml-50 {
  margin-left: 50px !important;
}

@media screen and (max-width: 959px) {
  .ml-50 {
    margin-left: 6.66667vw !important;
  }
}

.mt-55 {
  margin-top: 55px !important;
}

@media screen and (max-width: 959px) {
  .mt-55 {
    margin-top: 7.33333vw !important;
  }
}

.mr-55 {
  margin-right: 55px !important;
}

@media screen and (max-width: 959px) {
  .mr-55 {
    margin-right: 7.33333vw !important;
  }
}

.mb-55 {
  margin-bottom: 55px !important;
}

@media screen and (max-width: 959px) {
  .mb-55 {
    margin-bottom: 7.33333vw !important;
  }
}

.ml-55 {
  margin-left: 55px !important;
}

@media screen and (max-width: 959px) {
  .ml-55 {
    margin-left: 7.33333vw !important;
  }
}

.mt-60 {
  margin-top: 60px !important;
}

@media screen and (max-width: 959px) {
  .mt-60 {
    margin-top: 8vw !important;
  }
}

.mr-60 {
  margin-right: 60px !important;
}

@media screen and (max-width: 959px) {
  .mr-60 {
    margin-right: 8vw !important;
  }
}

.mb-60 {
  margin-bottom: 60px !important;
}

@media screen and (max-width: 959px) {
  .mb-60 {
    margin-bottom: 8vw !important;
  }
}

.ml-60 {
  margin-left: 60px !important;
}

@media screen and (max-width: 959px) {
  .ml-60 {
    margin-left: 8vw !important;
  }
}

.mt-65 {
  margin-top: 65px !important;
}

@media screen and (max-width: 959px) {
  .mt-65 {
    margin-top: 8.66667vw !important;
  }
}

.mr-65 {
  margin-right: 65px !important;
}

@media screen and (max-width: 959px) {
  .mr-65 {
    margin-right: 8.66667vw !important;
  }
}

.mb-65 {
  margin-bottom: 65px !important;
}

@media screen and (max-width: 959px) {
  .mb-65 {
    margin-bottom: 8.66667vw !important;
  }
}

.ml-65 {
  margin-left: 65px !important;
}

@media screen and (max-width: 959px) {
  .ml-65 {
    margin-left: 8.66667vw !important;
  }
}

.mt-70 {
  margin-top: 70px !important;
}

@media screen and (max-width: 959px) {
  .mt-70 {
    margin-top: 9.33333vw !important;
  }
}

.mr-70 {
  margin-right: 70px !important;
}

@media screen and (max-width: 959px) {
  .mr-70 {
    margin-right: 9.33333vw !important;
  }
}

.mb-70 {
  margin-bottom: 70px !important;
}

@media screen and (max-width: 959px) {
  .mb-70 {
    margin-bottom: 9.33333vw !important;
  }
}

.ml-70 {
  margin-left: 70px !important;
}

@media screen and (max-width: 959px) {
  .ml-70 {
    margin-left: 9.33333vw !important;
  }
}

.mt-75 {
  margin-top: 75px !important;
}

@media screen and (max-width: 959px) {
  .mt-75 {
    margin-top: 10vw !important;
  }
}

.mr-75 {
  margin-right: 75px !important;
}

@media screen and (max-width: 959px) {
  .mr-75 {
    margin-right: 10vw !important;
  }
}

.mb-75 {
  margin-bottom: 75px !important;
}

@media screen and (max-width: 959px) {
  .mb-75 {
    margin-bottom: 10vw !important;
  }
}

.ml-75 {
  margin-left: 75px !important;
}

@media screen and (max-width: 959px) {
  .ml-75 {
    margin-left: 10vw !important;
  }
}

.pt-0 {
  padding-top: 0 !important;
}

@media screen and (max-width: 959px) {
  .pt-0 {
    padding-top: 0vw !important;
  }
}

.pr-0 {
  padding-right: 0 !important;
}

@media screen and (max-width: 959px) {
  .pr-0 {
    padding-right: 0vw !important;
  }
}

.pb-0 {
  padding-bottom: 0 !important;
}

@media screen and (max-width: 959px) {
  .pb-0 {
    padding-bottom: 0vw !important;
  }
}

.pl-0 {
  padding-left: 0 !important;
}

@media screen and (max-width: 959px) {
  .pl-0 {
    padding-left: 0vw !important;
  }
}

.pt-5 {
  padding-top: 5px !important;
}

@media screen and (max-width: 959px) {
  .pt-5 {
    padding-top: .66667vw !important;
  }
}

.pr-5 {
  padding-right: 5px !important;
}

@media screen and (max-width: 959px) {
  .pr-5 {
    padding-right: .66667vw !important;
  }
}

.pb-5 {
  padding-bottom: 5px !important;
}

@media screen and (max-width: 959px) {
  .pb-5 {
    padding-bottom: .66667vw !important;
  }
}

.pl-5 {
  padding-left: 5px !important;
}

@media screen and (max-width: 959px) {
  .pl-5 {
    padding-left: .66667vw !important;
  }
}

.pt-10 {
  padding-top: 10px !important;
}

@media screen and (max-width: 959px) {
  .pt-10 {
    padding-top: 1.33333vw !important;
  }
}

.pr-10 {
  padding-right: 10px !important;
}

@media screen and (max-width: 959px) {
  .pr-10 {
    padding-right: 1.33333vw !important;
  }
}

.pb-10 {
  padding-bottom: 10px !important;
}

@media screen and (max-width: 959px) {
  .pb-10 {
    padding-bottom: 1.33333vw !important;
  }
}

.pl-10 {
  padding-left: 10px !important;
}

@media screen and (max-width: 959px) {
  .pl-10 {
    padding-left: 1.33333vw !important;
  }
}

.pt-15 {
  padding-top: 15px !important;
}

@media screen and (max-width: 959px) {
  .pt-15 {
    padding-top: 2vw !important;
  }
}

.pr-15 {
  padding-right: 15px !important;
}

@media screen and (max-width: 959px) {
  .pr-15 {
    padding-right: 2vw !important;
  }
}

.pb-15 {
  padding-bottom: 15px !important;
}

@media screen and (max-width: 959px) {
  .pb-15 {
    padding-bottom: 2vw !important;
  }
}

.pl-15 {
  padding-left: 15px !important;
}

@media screen and (max-width: 959px) {
  .pl-15 {
    padding-left: 2vw !important;
  }
}

.pt-20 {
  padding-top: 20px !important;
}

@media screen and (max-width: 959px) {
  .pt-20 {
    padding-top: 2.66667vw !important;
  }
}

.pr-20 {
  padding-right: 20px !important;
}

@media screen and (max-width: 959px) {
  .pr-20 {
    padding-right: 2.66667vw !important;
  }
}

.pb-20 {
  padding-bottom: 20px !important;
}

@media screen and (max-width: 959px) {
  .pb-20 {
    padding-bottom: 2.66667vw !important;
  }
}

.pl-20 {
  padding-left: 20px !important;
}

@media screen and (max-width: 959px) {
  .pl-20 {
    padding-left: 2.66667vw !important;
  }
}

.pt-25 {
  padding-top: 25px !important;
}

@media screen and (max-width: 959px) {
  .pt-25 {
    padding-top: 3.33333vw !important;
  }
}

.pr-25 {
  padding-right: 25px !important;
}

@media screen and (max-width: 959px) {
  .pr-25 {
    padding-right: 3.33333vw !important;
  }
}

.pb-25 {
  padding-bottom: 25px !important;
}

@media screen and (max-width: 959px) {
  .pb-25 {
    padding-bottom: 3.33333vw !important;
  }
}

.pl-25 {
  padding-left: 25px !important;
}

@media screen and (max-width: 959px) {
  .pl-25 {
    padding-left: 3.33333vw !important;
  }
}

.pt-30 {
  padding-top: 30px !important;
}

@media screen and (max-width: 959px) {
  .pt-30 {
    padding-top: 4vw !important;
  }
}

.pr-30 {
  padding-right: 30px !important;
}

@media screen and (max-width: 959px) {
  .pr-30 {
    padding-right: 4vw !important;
  }
}

.pb-30 {
  padding-bottom: 30px !important;
}

@media screen and (max-width: 959px) {
  .pb-30 {
    padding-bottom: 4vw !important;
  }
}

.pl-30 {
  padding-left: 30px !important;
}

@media screen and (max-width: 959px) {
  .pl-30 {
    padding-left: 4vw !important;
  }
}

.pt-35 {
  padding-top: 35px !important;
}

@media screen and (max-width: 959px) {
  .pt-35 {
    padding-top: 4.66667vw !important;
  }
}

.pr-35 {
  padding-right: 35px !important;
}

@media screen and (max-width: 959px) {
  .pr-35 {
    padding-right: 4.66667vw !important;
  }
}

.pb-35 {
  padding-bottom: 35px !important;
}

@media screen and (max-width: 959px) {
  .pb-35 {
    padding-bottom: 4.66667vw !important;
  }
}

.pl-35 {
  padding-left: 35px !important;
}

@media screen and (max-width: 959px) {
  .pl-35 {
    padding-left: 4.66667vw !important;
  }
}

.pt-40 {
  padding-top: 40px !important;
}

@media screen and (max-width: 959px) {
  .pt-40 {
    padding-top: 5.33333vw !important;
  }
}

.pr-40 {
  padding-right: 40px !important;
}

@media screen and (max-width: 959px) {
  .pr-40 {
    padding-right: 5.33333vw !important;
  }
}

.pb-40 {
  padding-bottom: 40px !important;
}

@media screen and (max-width: 959px) {
  .pb-40 {
    padding-bottom: 5.33333vw !important;
  }
}

.pl-40 {
  padding-left: 40px !important;
}

@media screen and (max-width: 959px) {
  .pl-40 {
    padding-left: 5.33333vw !important;
  }
}

.pt-45 {
  padding-top: 45px !important;
}

@media screen and (max-width: 959px) {
  .pt-45 {
    padding-top: 6vw !important;
  }
}

.pr-45 {
  padding-right: 45px !important;
}

@media screen and (max-width: 959px) {
  .pr-45 {
    padding-right: 6vw !important;
  }
}

.pb-45 {
  padding-bottom: 45px !important;
}

@media screen and (max-width: 959px) {
  .pb-45 {
    padding-bottom: 6vw !important;
  }
}

.pl-45 {
  padding-left: 45px !important;
}

@media screen and (max-width: 959px) {
  .pl-45 {
    padding-left: 6vw !important;
  }
}

.pt-50 {
  padding-top: 50px !important;
}

@media screen and (max-width: 959px) {
  .pt-50 {
    padding-top: 6.66667vw !important;
  }
}

.pr-50 {
  padding-right: 50px !important;
}

@media screen and (max-width: 959px) {
  .pr-50 {
    padding-right: 6.66667vw !important;
  }
}

.pb-50 {
  padding-bottom: 50px !important;
}

@media screen and (max-width: 959px) {
  .pb-50 {
    padding-bottom: 6.66667vw !important;
  }
}

.pl-50 {
  padding-left: 50px !important;
}

@media screen and (max-width: 959px) {
  .pl-50 {
    padding-left: 6.66667vw !important;
  }
}

.pt-55 {
  padding-top: 55px !important;
}

@media screen and (max-width: 959px) {
  .pt-55 {
    padding-top: 7.33333vw !important;
  }
}

.pr-55 {
  padding-right: 55px !important;
}

@media screen and (max-width: 959px) {
  .pr-55 {
    padding-right: 7.33333vw !important;
  }
}

.pb-55 {
  padding-bottom: 55px !important;
}

@media screen and (max-width: 959px) {
  .pb-55 {
    padding-bottom: 7.33333vw !important;
  }
}

.pl-55 {
  padding-left: 55px !important;
}

@media screen and (max-width: 959px) {
  .pl-55 {
    padding-left: 7.33333vw !important;
  }
}

.pt-60 {
  padding-top: 60px !important;
}

@media screen and (max-width: 959px) {
  .pt-60 {
    padding-top: 8vw !important;
  }
}

.pr-60 {
  padding-right: 60px !important;
}

@media screen and (max-width: 959px) {
  .pr-60 {
    padding-right: 8vw !important;
  }
}

.pb-60 {
  padding-bottom: 60px !important;
}

@media screen and (max-width: 959px) {
  .pb-60 {
    padding-bottom: 8vw !important;
  }
}

.pl-60 {
  padding-left: 60px !important;
}

@media screen and (max-width: 959px) {
  .pl-60 {
    padding-left: 8vw !important;
  }
}

.pt-65 {
  padding-top: 65px !important;
}

@media screen and (max-width: 959px) {
  .pt-65 {
    padding-top: 8.66667vw !important;
  }
}

.pr-65 {
  padding-right: 65px !important;
}

@media screen and (max-width: 959px) {
  .pr-65 {
    padding-right: 8.66667vw !important;
  }
}

.pb-65 {
  padding-bottom: 65px !important;
}

@media screen and (max-width: 959px) {
  .pb-65 {
    padding-bottom: 8.66667vw !important;
  }
}

.pl-65 {
  padding-left: 65px !important;
}

@media screen and (max-width: 959px) {
  .pl-65 {
    padding-left: 8.66667vw !important;
  }
}

.pt-70 {
  padding-top: 70px !important;
}

@media screen and (max-width: 959px) {
  .pt-70 {
    padding-top: 9.33333vw !important;
  }
}

.pr-70 {
  padding-right: 70px !important;
}

@media screen and (max-width: 959px) {
  .pr-70 {
    padding-right: 9.33333vw !important;
  }
}

.pb-70 {
  padding-bottom: 70px !important;
}

@media screen and (max-width: 959px) {
  .pb-70 {
    padding-bottom: 9.33333vw !important;
  }
}

.pl-70 {
  padding-left: 70px !important;
}

@media screen and (max-width: 959px) {
  .pl-70 {
    padding-left: 9.33333vw !important;
  }
}

.pt-75 {
  padding-top: 75px !important;
}

@media screen and (max-width: 959px) {
  .pt-75 {
    padding-top: 10vw !important;
  }
}

.pr-75 {
  padding-right: 75px !important;
}

@media screen and (max-width: 959px) {
  .pr-75 {
    padding-right: 10vw !important;
  }
}

.pb-75 {
  padding-bottom: 75px !important;
}

@media screen and (max-width: 959px) {
  .pb-75 {
    padding-bottom: 10vw !important;
  }
}

.pl-75 {
  padding-left: 75px !important;
}

@media screen and (max-width: 959px) {
  .pl-75 {
    padding-left: 10vw !important;
  }
}

/*
  1-4. Slick
==================================== */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
          box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;

  -webkit-touch-callout: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

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

.slick-list:focus {
  outline: none;
}

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

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

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

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

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

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

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

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

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

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

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

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

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

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

/*
  1-5. Perfect Scrollbar
==================================== */
/*
 * Container style
 */
.ps {
  overflow: hidden !important;

  overflow-anchor: none;
  -ms-overflow-style: none;
      touch-action: auto;
  -ms-touch-action: auto;
}

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0;
  display: none;
  height: 15px;
  opacity: 0;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
          transition: background-color .2s linear, opacity .2s linear;
}

.ps__rail-y {
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 10px;
  width: 6px;
  background-color: #b5b5b5;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
          transition: background-color .2s linear, opacity .2s linear;
}

.ps:hover > .ps__rail-x, .ps:hover > .ps__rail-y, .ps--focus > .ps__rail-x, .ps--focus > .ps__rail-y, .ps--scrolling-x > .ps__rail-x, .ps--scrolling-y > .ps__rail-y {
  opacity: 1;
}

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  height: 6px;
  border-radius: 6px;
  background-color: #aaa;
  -webkit-transition: background-color .2s linear, height .2s ease-in-out;
          transition: background-color .2s linear, height .2s ease-in-out;
}

.ps__thumb-y {
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'right' for ps__thumb-y */
  right: 0;
  width: 6px;
  background-color: #f5a100;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
          transition: background-color .2s linear, width .2s ease-in-out;
}

.ps__rail-x:hover > .ps__thumb-x, .ps__rail-x:focus > .ps__thumb-x, .ps__rail-x.ps--clicking .ps__thumb-x {
  height: 11px;
  background-color: #999;
}

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

/* ====================================

    2. Parts

==================================== */
/*
  3-1. Heading
==================================== */
.heading-primary {
  position: relative;
  margin-bottom: 17px;
  padding-bottom: 12px;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  letter-spacing: .08em;
}

@media screen and (max-width: 959px) {
  .heading-primary {
    margin-bottom: 3.73333vw;
    padding-bottom: 2.26667vw;
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.heading-primary:before {
  position: absolute;
  bottom: 0;
  left: calc(50% - 25px);
  content: "";
  width: 50px;
  height: 4px;
  background-color: #d02e2c;
}

.heading-primary.-light {
  color: #fff;
}

.heading-primary.-light:before {
  background-color: #fff;
}

.heading-secondary {
  margin-bottom: 30px;
  padding-bottom: 10px;
  font-size: 24px;
  font-size: 2.4rem;
  border-bottom: 3px solid #d02e2c;
}

@media screen and (max-width: 959px) {
  .heading-secondary {
    margin-bottom: 4vw;
    padding-bottom: 1.33333vw;
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.heading-secondary.-slim {
  margin-bottom: 20px;
  padding-bottom: 2px;
  font-size: 20px;
  font-size: 2rem;
  border-bottom-width: 2px;
}

@media screen and (max-width: 959px) {
  .heading-secondary.-slim {
    margin-bottom: 5.33333vw;
    padding-bottom: .66667vw;
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.heading-secondary.-ur {
  border-bottom-color: #7b1451;
}

.heading-secondary.-tokuyu {
  border-bottom-color: #ba0000;
}

.heading-secondary.-kosha {
  border-bottom-color: #008577;
}

.heading-tertiary {
  position: relative;
  margin-bottom: 20px;
  padding-left: 10px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .heading-tertiary {
    margin-bottom: 4.66667vw;
    padding-left: 2.66667vw;
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.heading-tertiary:before {
  position: absolute;
  top: calc(50% - 12px);
  left: 0;
  content: "";
  display: block;
  width: 4px;
  height: 24px;
}

@media screen and (max-width: 959px) {
  .heading-tertiary:before {
    top: calc(50% - 2.8vw);
    height: 5.6vw;
  }
}

.heading-tertiary.-primary:before {
  background-color: #d02e2c;
}

.heading-tertiary.-ur:before {
  background-color: #7b1451;
}

.heading-tertiary.-tokuyu:before {
  background-color: #ba0000;
}

.heading-tertiary.-kosha:before {
  background-color: #008577;
}

/*
  3-2. Button
==================================== */
.button-primary {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  border-radius: 6px;
  background-color: #d02e2c;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, .2);
          box-shadow: 0 2px 0 rgba(0, 0, 0, .2);

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .button-primary {
    height: 7.2vw;
  }
}

.button-primary:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 50%;
  left: 0;
  content: "";
  background-color: rgba(255, 255, 255, .1);
}

@media screen and (min-width: 960px) {
  .button-primary:hover {
    position: relative;
    top: 2px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.button-primary.-success {
  background-color: #07913a;
}

.button-primary.-danger {
  background-color: #a00402;
}

.button-primary.-muted {
  background-color: #888;
}

.button-primary.-fine {
  background-color: #ff7200;
}

.button-primary.-ur {
  background-color: #7b1451;
}

.button-primary.-tokuyu {
  background-color: #ba0000;
}

.button-primary.-kosha {
  background-color: #008577;
}

.button-primary.-jkk {
  background-color: #00adbd;
}

.button-primary.-arrow:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.button-primary.-arrow2:after {
    position: absolute;
    top: 50%;
    left: 20px;
    content: "";
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(135deg);
}

@media screen and (max-width: 959px) {
  .button-primary.-arrow:after {
    right: 2vw;
    width: 1.33333vw;
    height: 1.33333vw;
    margin-top: -.66667vw;
  }
}

.button-primary.-mini {
  height: 30px;
  font-size: 12px;
  font-size: 1.2rem;
}

.button-primary.-mini:after {
  right: 9px;
  width: 6px;
  height: 6px;
}

.button-primary > [class^="icon-"] {
  margin-right: 10px;
  fill: #fff;
}

/*
  3-3. Hover Effect
==================================== */
@media screen and (min-width: 960px) {
  .hover-op {
    text-align: center;
    display: block;
    -webkit-transition: all .5s ease;
            transition: all .5s ease;
  }
  .hover-op:hover {
    opacity: .7;
  }
}

@media screen and (min-width: 960px) {
  .hover-zoom {
    overflow: hidden;
  }
  .hover-zoom img {
    -webkit-transition: all .4s linear;
            transition: all .4s linear;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .hover-zoom:hover img {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
}

@media screen and (min-width: 960px) {
  .hover-unsco:hover {
    text-decoration: underline;
  }
}

/*
  3-4. Form
==================================== */
input, button, select, textarea {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  border: 0;
  border-radius: 0;
}

input:focus, button:focus, select:focus, textarea:focus {
  outline: none;
}

button {
  line-height: 1;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #444;
}

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

.form-custom-pulldown {
  position: relative;
  width: 190px;
  height: 30px;
}

@media screen and (max-width: 959px) {
  .form-custom-pulldown {
    width: 37.33333vw;
    height: 8vw;
  }
}

.form-custom-pulldown:before {
  position: absolute;
  top: 1px;
  right: 1px;
  content: "";
  width: 28px;
  height: 28px;
  background-color: #a0a0a0;
  pointer-events: none;
}

@media screen and (max-width: 959px) {
  .form-custom-pulldown:before {
    width: 7.46667vw;
    height: 7.46667vw;
  }
}

.form-custom-pulldown:after {
  position: absolute;
  top: 50%;
  right: 11px;
  content: "";
  width: 7px;
  height: 7px;
  margin-top: -6px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  pointer-events: none;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media screen and (max-width: 959px) {
  .form-custom-pulldown:after {
    right: 2.93333vw;
    width: 1.86667vw;
    height: 1.86667vw;
    margin-top: -vw(7);
  }
}

.form-custom-pulldown select {
  width: 100%;
  height: 100%;
  padding-right: 40px;
  padding-left: 10px;
  color: #515151;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #ccc;
  background-color: #fff;
  cursor: pointer;
}

.form-custom-check {
  position: relative;
}

.form-custom-check label {
  position: relative;
  padding-left: 35px;
}

@media screen and (max-width: 959px) {
  .form-custom-check label {
    padding-left: 9.33333vw;
  }
}

.form-custom-check label:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  border: 1px solid #ccc;
  background: #fff;
  -webkit-transition: background-color .4s ease;
          transition: background-color .4s ease;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 959px) {
  .form-custom-check label:before {
    width: 6.4vw;
    height: 6.4vw;
  }
}

.form-custom-check label:after {
  position: absolute;
  top: 50%;
  left: 8px;
  content: "";
  display: block;
  width: 6px;
  height: 12px;
  margin-top: -9px;
  border-right: 4px solid #d02e2c;
  border-bottom: 4px solid #d02e2c;
  -webkit-transition: -webkit-transform .1s ease-out;
          transition: -webkit-transform .1s ease-out;
          transition:         transform .1s ease-out;
          transition:         transform .1s ease-out, -webkit-transform .1s ease-out;
  -webkit-transform: rotate(45deg) scale(0);
          transform: rotate(45deg) scale(0);
}

@media screen and (max-width: 959px) {
  .form-custom-check label:after {
    left: 2.13333vw;
    width: 1.6vw;
    height: 3.2vw;
    margin-top: -2.4vw;
  }
}

.form-custom-check input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.form-custom-check input[type="checkbox"]:checked ~ label:after {
  -webkit-transform: rotate(45deg) scale(1);
          transform: rotate(45deg) scale(1);
}

.form-custom-check input[type="checkbox"]:checked ~ label:before {
  background-color: #fcebeb;
}

.form-custom-radio {
  position: relative;
}

.form-custom-radio label {
  position: relative;
  padding-left: 33px;
}

@media screen and (max-width: 959px) {
  .form-custom-radio label {
    padding-left: 7.2vw;
  }
}

.form-custom-radio label:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 959px) {
  .form-custom-radio label:before {
    width: 4.8vw;
    height: 4.8vw;
  }
}

.form-custom-radio label:after {
  position: absolute;
  top: 50%;
  left: 7px;
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #d02e2c;
  opacity: 0;
  -webkit-transition: all .2s ease-out;
          transition: all .2s ease-out;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 959px) {
  .form-custom-radio label:after {
    left: 1.33333vw;
    width: 2.66667vw;
    height: 2.66667vw;
  }
}

.form-custom-radio input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.form-custom-radio input[type="radio"]:checked ~ label:before {
  background-color: #fcebeb;
}

.form-custom-radio input[type="radio"]:checked ~ label:after {
  opacity: 1;
}

/* ====================================

    3. Block

==================================== */
/*
  2-1. Header
==================================== */
.header {
  height: 70px;
}

@media screen and (max-width: 959px) {
  .header {
    height: 16vw;
  }
}

.header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 1000px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 959px) {
  .header-inner {
    width: auto;
  }
}

.header-logo {
  margin-right: 50px;
}

@media screen and (max-width: 959px) {
  .header-logo {
    width: 67.73333vw;
    margin-right: 0;
    padding-left: 2.66667vw;
  }
}

.header-logo .copy {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .header-logo .copy {
    font-size: 10px;
    font-size: 1rem;
  }
}

.header-logo .link {
  display: block;
  width: 310px;
  height: 29px;
}

.header-logo .image {
  width: 100%;
}

@media screen and (max-width: 959px) {
  .header-logo .image {
    width: 54.66667vw;
  }
}

.header-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  padding-right:70px;
}

.header-tel .area {
    display: inline-block;
    margin-right: 5px;
    padding: 5px 0;
    color: #d02e2c;
    font-weight: bold;
    line-height: 1;
    background-color: #fcebeb;
    width: 5em;
    text-align: center;
}

.header-tel .number {
  margin-right: 40px;
  color: #3d3d3d;
  font-family: "Roboto", sans-serif;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 400;
  letter-spacing: -.05em;
  line-height: 1.2em
}

.header-mail {
  width: 230px;
  margin-right: 0;
  margin-left: auto;
  padding-right: 0;
  padding-left: 0;
  font-size: 16px;
  font-size: 1.6rem;
}

.header-mail .icon-pc {
  width: 30px;
  height: 26px;
}

.header-kind {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: center;
  width: 16vw;
  height: 100%;
  font-size: 10px;
  font-size: 1rem;
  border-left: 1px solid #ccc;

  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

.header-kind .label {
  display: inline-block;
}

.header-kind [class^=icon-] {
  margin-bottom: 2vw;
}

.header-kind.-consult {
  color: #07913a;
}

.header-kind.-consult .icon-mail {
  width: 7.33333vw;
  height: 5.33333vw;
  fill: #07913a;
}

.header-kind.-favorite {
  position: relative;
  color: #d02e2c;
}

.header-kind.-favorite .icon-star {
  width: 7.46667vw;
  height: 7.2vw;
  fill: #d02e2c;
}

.header-kind.-favorite .count {
  position: absolute;
  top: 6.93333vw;
  right: 1.33333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 4vw;
  height: 4vw;
  color: #666;
  border: 1px solid #d02e2c;
  border-radius: 50%;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

/*
  2-2. Global Nav
==================================== */
.gnav {
  width: 100%;
  height: 45px;
  background-color: #a00402;
}

@media screen and (max-width: 959px) {
  .gnav {
    height: 12.53333vw;
  }
}

.gnav-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  width: 1000px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 959px) {
  .gnav-inner {
    width: auto;
  }
}

.gnav-inner > .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 154px;
  color: #fff;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .gnav-inner > .item {
    position: relative;
    width: calc(100% / 4);
    padding-bottom: 2.4vw;
    font-size: 12px;
    font-size: 1.2rem;
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
  }
  .gnav-inner > .item:first-of-type, .gnav-inner > .item:nth-of-type(3), .gnav-inner > .item:nth-of-type(4) {
    display: none;
  }
  .gnav-inner > .item:before {
    position: absolute;
    bottom: 2.93333vw;
    left: calc(50% - .8vw);
    content: "";
    width: 1.6vw;
    height: 1.6vw;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #fff;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
}

@media screen and (min-width: 960px) {
  .gnav-inner > .item:hover {
    color: #333;
    background-color: #fcebeb;
  }
}

.gnav-inner > .item.-owner {
      flex: 1;
  width: auto;
  margin-top: -7px;
  color: #a00402;
  line-height: 1.28571;
  border: 2px solid #a00402;
  border-radius: 6px 6px 0 0;
  background-color: #fcebeb;

  -webkit-box-flex: 1;
  -ms-flex: 1;
}

@media screen and (max-width: 959px) {
  .gnav-inner > .item.-owner {
    display: none;
  }
}

.gnav-inner > .item.-owner:hover {
  color: #fff;
  border-color: #fff;
  background-color: #a00402;
}

@media screen and (max-width: 959px) {
  .gnav-inner > .item.js-is__open {
    color: #d02e2c;
    border-bottom: 1px solid #aaa;
    background-color: #fcebeb;
  }
  .gnav-inner > .item.js-is__open:before {
    border-color: #d02e2c;
  }
}

@media screen and (min-width: 960px) {
  .gnav-list {
    display: none !important;
  }
}

@media screen and (max-width: 959px) {
  .gnav-list {
    position: absolute;
    z-index: 10;
    top: 12.53333vw;
    display: none;
    width: 34.66667vw;
    background-color: #fff;
  }
  .gnav-list > .item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    height: 12.4vw;
    padding-right: 4vw;
    padding-left: 4vw;
    color: #666;
    font-size: 12px;
    font-size: 1.2rem;
    border-bottom: 1px solid #dadada;
  }
  .gnav-list > .item:last-of-type {
    border-bottom: none;
  }
  .gnav-list > .item:after {
    position: absolute;
    top: calc(50% - .8vw);
    right: 2.66667vw;
    content: "";
    width: 1.33333vw;
    height: 1.33333vw;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #a00402;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .gnav-list[data-toggle="plan"] {
    left: calc(100% / 4);
  }
}

/*
  2-3. Store
==================================== */
.store {
  margin-top: 60px;
  padding-top: 40px;
  padding-bottom: 60px;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/top/store-bg_1.jpg) no-repeat left top;
  background-size: cover;
}

@media screen and (max-width: 959px) {
  .store {
    margin-top: 0;
    padding-top: 8vw;
    padding-bottom: 10.66667vw;
  }
}

.store-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  width: 1000px;
  margin-right: auto;
  margin-left: auto;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .store-list {
    display: block;
    width: auto;
    margin-right: 2.66667vw;
    margin-left: 2.66667vw;
  }
}

.store-list-item {
    width: 244px;
    min-height: 170px;
    padding: 8px;
    background-color: #fff;
}

@media screen and (max-width: 959px) {
  .store-list-item {
    width: 100%;
    min-height: initial;
    margin-bottom: 2.66667vw;
    padding: 4vw;
  }
}

.store-list-item:last-of-type {
  margin-bottom: 0;
}

.store-call {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  height: 60px;
  margin-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
  color: #ba0000;
  border-radius: 8px;
  background-color: #eee;
}

@media screen and (max-width: 959px) {
  .store-call {
    height: 18.26667vw;
    margin-bottom: 4vw;
    padding-right: 4vw;
    padding-left: 4vw;
  }
}

.store-call-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin-right: 5px;
    border-radius: 50%;
    background-color: #ba0000;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .store-call-icon {
    width: 12vw;
    height: 12vw;
  }
}

.store-call-icon .icon-tel {
  width: 20px;
  height: 20px;
  fill: #eee;
}

@media screen and (max-width: 959px) {
  .store-call-icon .icon-tel {
    width: 6.8vw;
    height: 6.8vw;
  }
}

.store-tel-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  line-height: 1;
}

.store-tel .area {
  font-size: 18px;
  font-size: 1.7rem;
}

@media screen and (max-width: 959px) {
  .store-tel .area {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
  }
}

.store-tel .free {
  display: inline-block;
  width: 66px;
  height: 21px;
  margin-left: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 19px;
  border: 1px solid #ba0000;
  border-radius: 4px;
  background-color: #fff;
}

@media screen and (max-width: 959px) {
  .store-tel .free {
    width: 15.46667vw;
    height: 5.06667vw;
    margin-left: 1.33333vw;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: calc(5.06667vw - 2px);
  }
}

.store-tel .number {
  font-family: "Roboto", sans-serif;
  font-size: 36px;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .store-tel .number {
    font-family: "Roboto", sans-serif;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
  }
  .store-tel .number > a {
    color: #ba0000;
  }
}

.store-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
}

.store-detail .ph {
  margin-right: 10px;
}

@media screen and (max-width: 959px) {
  .store-detail .ph {
    width: 24vw;
    height: 24vw;
    margin-right: 2.66667vw;
    overflow: hidden;
  }
}

@media screen and (max-width: 959px) {
  .store-detail .ph.-yokohama img {
    width: 200%;
    margin-left: -14vw;
  }
}

@media screen and (max-width: 959px) {
  .store-detail .ph.-kawasaki img {
    width: 100%;
  }
}

.store-info .name {
  margin-bottom: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .store-info .name {
    margin-bottom: 1.33333vw;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 960px) {
  .store-info .name:hover {
    text-decoration: underline;
  }
}

.store-info .address {
  line-height: 1.5;
    font-size: 0.9em;
}

@media screen and (max-width: 959px) {
  .store-info .address {
    line-height: 1.42857;
  }
}

.store-info-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px;
}

@media screen and (max-width: 959px) {
  .store-info-time {
    margin-top: .9em;
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.store-info-time .label {
  width: 74px;
  height: 28px;
  margin-right: 10px;
  text-align: center;
  line-height: 28px;
  background-color: #eee;
}

@media screen and (max-width: 959px) {
  .store-info-time .label {
    width: 17.33333vw;
    height: 6.13333vw;
    margin-right: 1.33333vw;
    line-height: 6.13333vw;
  }
}

/*
  2-3. Footer
==================================== */
.footer {
  position: relative;
  padding-top: 30px;
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .footer {
    padding-top: 0;
  }
}

.footer-inner {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 959px) {
  .footer-inner {
    width: auto;
  }
}

.footer-link {
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 959px) {
  .footer-link {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.footer-link .title {
  position: relative;
  margin-bottom: 5px;
  padding-left: 15px;
  color: #ba0000;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .footer-link .title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    width: 100%;
    height: 12vw;
    margin-bottom: 0;
    padding-right: 10.66667vw;
    padding-left: 4vw;
    color: #fff;
    border-bottom: 1px solid #d99b9a;
    background-color: #a00402;
  }
}

.footer-link .title:before {
  position: absolute;
  top: calc(50% - 4px);
  left: 0;
  content: "";
  width: 6px;
  height: 6px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #ba0000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 959px) {
  .footer-link .title:before {
    top: 50%;
    right: 4vw;
    left: auto;
    width: 4vw;
    height: 1px;
    border-width: 0 0 0 0;
    background-color: #fff;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@media screen and (max-width: 959px) {
  .footer-link .title:after {
    position: absolute;
    top: 50%;
    right: 4vw;
    content: "";
    width: 4vw;
    height: 1px;
    background-color: #fff;
    opacity: 1;
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
}

@media screen and (max-width: 959px) {
  .footer-link .title.js-is__open:after {
    opacity: 0;
    -webkit-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
}

@media screen and (min-width: 960px) {
  .footer-link-toggle {
    display: block !important;
  }
}

@media screen and (max-width: 959px) {
  .footer-link-toggle {
    display: none;
  }
}

.footer-link-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e0e0e0;
}

@media screen and (max-width: 959px) {
  .footer-link-list {
    position: relative;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
    background-color: #f6f6f6;
  }
}

@media screen and (max-width: 959px) {
  .footer-link-list:after {
    position: absolute;
    right: 0;
    bottom: 0;
    content: "";
    display: block;
    width: calc(100% / 3);
    height: 0;
    border-top: 1px solid #ccc;
  }
}

@media screen and (max-width: 959px) {
  .footer-link-list.-full .item {
    width: 100%;
  }
}

.footer-link-list .item {
  position: relative;
}

@media screen and (max-width: 959px) {
  .footer-link-list .item {
    width: calc(100% / 3);
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
}

.footer-link-list .item:nth-of-type(3n) {
  border-right: none;
}

.footer-link-list .item:before {
  position: absolute;
  top: calc(50% - 6px);
  right: 0;
  content: "";
  display: block;
  width: 1px;
  height: 13px;
  background-color: #333;
}

@media screen and (max-width: 959px) {
  .footer-link-list .item:before {
    display: none;
  }
}

.footer-link-list .item:last-of-type:before {
  display: none;
}

.footer-link-list .link {
  position: relative;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  padding-right: 6px;
  padding-left: 6px;
}

@media screen and (max-width: 959px) {
  .footer-link-list .link {
    padding: 1.6vw 4vw;
    display: block;
  }
  .footer-link-list .link:before {
    position: absolute;
    top: calc(50% - .93333vw);
    right: 4vw;
    content: "";
    width: 1.6vw;
    height: 1.6vw;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #333;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

.footer-link-list .link.-blank {
  margin-right: 6px;
  padding-right: 15px;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/icon-blank.svg) no-repeat right center;
  background-size: 10px 10px;
}

@media screen and (max-width: 959px) {
  .footer-link-list .link.-blank {
    margin-right: 0;
    background-position: calc(100vw - 5.33333vw) center;
    background-size: 2.66667vw 2.66667vw;
  }
}

.footer-link-list .link.-blank:before {
  display: none;
}

@media screen and (min-width: 960px) {
  .footer-link-list .link:hover {
    text-decoration: underline;
  }
}

.footer-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  margin-top: 30px;
  margin-bottom: 30px;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .footer-sub {
    display: block;
    margin: 0 2.66667vw 4vw;
  }
}

.footer-sub .item {
  position: relative;
  margin-right: 7px;
  padding-right: 7px;
}

@media screen and (max-width: 959px) {
  .footer-sub .item {
    padding: 0;
    line-height: 1;
    border-bottom: 1px solid #ccc;
  }
  .footer-sub .item a {
      padding: 3.33333vw 4vw 3.33333vw 2.66667vw;
      display: block;
  }
}

.footer-sub .item:before {
  position: absolute;
  top: calc(50% - 7px);
  right: 0;
  content: "";
  width: 1px;
  height: 14px;
  background-color: #333;
}

@media screen and (max-width: 959px) {
  .footer-sub .item:before {
    display: none;
  }
}

@media screen and (max-width: 959px) {
  .footer-sub .item:after {
    position: absolute;
    top: calc(50% - .93333vw);
    right: 4vw;
    content: "";
    width: 1.6vw;
    height: 1.6vw;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #333;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

.footer-sub .item:last-of-type:before {
  display: none;
}

@media screen and (max-width: 959px) {
  .footer-logo {
    width: 58.66667vw;
    margin-right: auto;
    margin-left: auto;
  }
  .footer-logo .copy {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
  }
  .footer-logo .link {
    display: block;
    width: 58.66667vw;
  }
  .footer-logo .image {
    width: 100%;
  }
}

.footer-bar {
  height: 55px;
  background-color: #555151;
}

@media screen and (max-width: 959px) {
  .footer-bar {
    height: 13.33333vw;
    margin-top: 4vw;
  }
}

.footer-bar > .footer-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  height: 100%;
}

.footer-bar .royal .logo {
  width: 229px;
  height: 21px;
  fill: #fff;
}

.footer-bar .copyright {
  margin-right: auto;
  margin-left: 100px;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 959px) {
  .footer-bar .copyright {
    margin-right: auto;
    margin-left: auto;
    font-size: 10px;
    font-size: 1rem;
    text-align: center;
  }
}

/*
  2-4. Pagetop
==================================== */
.pagetop {
  position: fixed;
  right: 50px;
  bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-direction: column;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 74px;
  height: 74px;
  text-align: center;
  border: 3px solid #ba0000;
  border-radius: 50%;
  background-color: #ba0000;
  -webkit-transition: background-color .3s ease;
          transition: background-color .3s ease;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
}

.pagetop.stop {
  position: absolute;
  bottom: 95px;
}

@media screen and (max-width: 959px) {
  .pagetop {
    display: none;
  }
}

.pagetop .icon-home {
  width: 23px;
  height: 21px;
  fill: #fff;
  -webkit-transition: fill .3s ease;
          transition: fill .3s ease;
}

.pagetop-text {
  margin-bottom: 4px;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.16667;
  -webkit-transition: color .3s ease;
          transition: color .3s ease;
}

.pagetop-text .en {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
}

.pagetop:hover {
  background-color: #fcebeb;
}

.pagetop:hover .pagetop-text {
  color: #ba0000;
}

.pagetop:hover .icon-home {
  fill: #ba0000;
}

/*
  2-5. Overlay
==================================== */
.overlay {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .3);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity .3s ease;
          transition: opacity .3s ease;
}

.overlay.js-is__visible {
  opacity: 1;
}

/*
  2-6. Modal
==================================== */
.modal {
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity .4s ease-out, -webkit-transform .4s ease-out;
          transition: opacity .4s ease-out, -webkit-transform .4s ease-out;
          transition: opacity .4s ease-out, transform .4s ease-out;
          transition: opacity .4s ease-out, transform .4s ease-out, -webkit-transform .4s ease-out;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
}

.modal.js-is__visible {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/*
  2-7. Breadcrumb
==================================== */
.bread {
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .bread {
    border-bottom: 1px solid #ccc;
    background-color: #fff;
  }
}

.bread-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: block;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 1000px;
  height: 40px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 959px) {
  .bread-list {
    display: block;
    width: auto;
    height: 9.33333vw;
    padding-right: 2.66667vw;
    padding-left: 2.66667vw;
    line-height: 9.33333vw;
    white-space: nowrap;
    overflow-x: scroll;
  }
}

.bread-list-item {
  position: relative;
  margin-right: 10px;
  padding-right: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  display: inline;
}

@media screen and (max-width: 959px) {
  .bread-list-item {
    display: inline-block;
    margin-right: 3.33333vw;
    padding-right: 3.33333vw;
    font-size: 10px;
    font-size: 1rem;
  }
}

.bread-list-item:before {
  position: absolute;
  top: calc(50% - 4px);
  right: 0;
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #333;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 959px) {
  .bread-list-item:before {
    top: calc(50% - .8vw);
    width: 1.33333vw;
    height: 1.33333vw;
  }
}

.bread-list-item:last-of-type:before {
  display: none;
}

.bread-list-item .link {
  text-decoration: underline;
}

@media screen and (min-width: 960px) {
  .bread-list-item .link:hover {
    text-decoration: none;
  }
}

/*
  2-8. Hero
==================================== */
.hero {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  height: 180px;
  background: no-repeat;
  background-color: #999;
  background-position: left top;
  background-size: cover;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .hero {
    height: 24vw;
    min-height: 90px;
  }
}

.hero > .heading-primary {
  margin-bottom: 0;
  font-size: 30px;
  font-size: 3rem;
    text-shadow: #fff 2px 0px 0px, #fff -2px 0px 0px, #fff 0px -2px 0px, #fff 0px 2px 0px, #fff 2px 2px 0px, #fff -2px 2px 0px, #fff 2px -2px 0px, #fff -2px -2px 0px, #fff 1px 2px 0px, #fff -1px 2px 0px, #fff 1px -2px 0px, #fff -1px -2px 0px, #fff 2px 1px 0px, #fff -2px 1px 0px, #fff 2px -1px 0px, #fff -2px -1px 0px, #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
}

@media screen and (max-width: 959px) {
  .hero > .heading-primary {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.hero.-ur > .heading-primary:before {
  background-color: #7b1451;
}

/*
  2-8. Container
==================================== */
.container {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 35px;
}

@media screen and (max-width: 959px) {
  .container {
    width: auto;
    padding-top: 8vw;
  }
}

.container.-around {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-between;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .container.-around {
    display: block;
  }
}

.container > .content {
  width: 705px;
}

@media screen and (max-width: 959px) {
  .container > .content {
    width: auto;
    margin-right: 2.66667vw;
    margin-left: 2.66667vw;
    padding-bottom: 13.33333vw;
  }
}

.container > .sidebar {
  width: 255px;
}

@media screen and (max-width: 959px) {
  .container > .sidebar {
    width: auto;
  }
}

.parent {
  margin-top: 70px;
}

@media screen and (max-width: 959px) {
  .parent {
    margin-top: 9.33333vw;
  }
}

.lower {
  margin-top: 45px;
}

@media screen and (max-width: 959px) {
  .lower {
    margin-top: 5.33333vw;
  }
}

/*
  2-8. Sidebar
==================================== */
.sidebar-title {
  height: 46px;
  font-weight: bold;
  text-align: center;
  line-height: 46px;
  background-color: #e0e0e0;
}

.sidebar-title.-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: space-between;
  margin-top: 15px;
  padding-right: 10px;
  padding-left: 20px;
  text-align: left;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

.sidebar-title.-button .button-primary {
  width: 70px;
  height: 30px;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
}

.sidebar-title.-button .button-primary.-arrow:after {
  right: 7px;
  width: 6px;
}

.sidebar-title.-relation {
  margin-top: 15px;
  color: #fff;
  background-color: #666;
}

.sidebar-title.-relation > .icon-blank {
  width: 14px;
  height: 14px;
  fill: #fff;
}

.sidebar-box {
  padding: 15px;
  border: 1px solid #e0e0e0;
}

.sidebar-box.-banner {
  margin-bottom: 6px;
  padding: 7px;
}

.sidebar-box.-check {
  margin-bottom: 20px;
}

.sidebar-box.-relation {
  background-color: #eee;
}

.sidebar-banners {
  margin-top: -10px;
}

.sidebar-banners .item {
  margin-top: 10px;
}

.sidebar-banners .item.-intro {
  margin-top: 6px;
  margin-left: -2px;
}

.sidebar-check-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-direction: column;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 100%;
  height: 90px;
  margin-bottom: 5px;
  text-align: center;
  border: 1px solid transparent;
  background-color: #fff;
  background-repeat: repeat;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
}

.sidebar-check-item:before {
  position: absolute;
  top: calc(50% - 12px);
  right: -1px;
  content: "";
  width: 25px;
  height: 25px;
}

.sidebar-check-item:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 8px;
  content: "";
  width: 8px;
  height: 8px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sidebar-check-item .type {
  width: 156px;
  height: 42px;
  margin-bottom: 8px;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 42px;
}

.sidebar-check-item .text {
  color: #3d3d3d;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 700;
}

.sidebar-check-item.-ur {
  border-color: #7b1451;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-ur.png);
}

.sidebar-check-item.-ur:before {
  background-color: #7b1451;
}

.sidebar-check-item.-ur .type {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  background-color: #7b1451;
}

.sidebar-check-item.-kosha {
  border-color: #008577;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-kosha.png);
}

.sidebar-check-item.-kosha:before {
  background-color: #008577;
}

.sidebar-check-item.-kosha .type {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  background-color: #008577;
}

.sidebar-check-item.-tokuyu {
  border-color: #ba0000;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-tokuyu.png);
}

.sidebar-check-item.-tokuyu:before {
  background-color: #ba0000;
}

.sidebar-check-item.-tokuyu .type {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  background-color: #ba0000;
}




.sidebar-check-item.-jkk {
  border-color: #4ec6d1;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-kosha.png);
}

.sidebar-check-item.-jkk:before {
  background-color: #4ec6d1;
}

.sidebar-check-item.-jkk .type {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  background-color: #4ec6d1;
}



.sidebar-check-link {
  position: relative;
  display: inline-block;
  min-height: 16px;
  margin-bottom: 15px;
  padding-left: 20px;
  text-decoration: underline;
  line-height: 1;
}

.sidebar-check-link:before {
  position: absolute;
  top: calc(50% - 8px);
  left: 0;
  content: "";
  width: 16px;
  height: 16px;
}

.sidebar-check-link:after {
  position: absolute;
  top: calc(50% - 3px);
  left: 4px;
  content: "";
  width: 4px;
  height: 4px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sidebar-check-link:last-of-type {
  margin-bottom: 0;
}

.sidebar-check-link:hover {
  text-decoration: none;
}

.sidebar-check-link.-ur:before {
  background-color: #7b1451;
}

.sidebar-check-link.-kosha:before {
  background-color: #008577;
}

.sidebar-check-link.-tokuyu:before {
  background-color: #ba0000;
}

.sidebar-notice-item {
  margin-bottom: 18px;
  padding-bottom: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  border-bottom: 1px solid #ccc;
}

.sidebar-notice-item:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.sidebar-notice .date {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  margin-bottom: 5px;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
}

.sidebar-notice .date.-new:after {
  content: "NEW";
  display: inline-block;
  width: 48px;
  height: 20px;
  margin-left: 10px;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 300;
  text-align: center;
  line-height: 20px;
  letter-spacing: .04em;
  background-color: #ff7200;
}

.sidebar-notice .title {
  position: relative;
  display: inline-block;
  padding-left: 13px;
  line-height: 1.5;
}

.sidebar-notice .title:hover {
  text-decoration: underline;
}

.sidebar-notice .title:before {
  position: absolute;
  top: .4em;
  left: 0;
  content: "";
  width: 6px;
  height: 6px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #a00402;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sidebar-relations {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  height: 70px;
  margin-top: 8px;
  padding-right: 30px;
  padding-left: 50px;
  font-size: 16px;
  font-size: 1.6rem;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 18px center;
}

.sidebar-relations:before {
  position: absolute;
  top: calc(50% - 12px);
  right: -1px;
  content: "";
  width: 20px;
  height: 20px;
  background-color: #666;
}

.sidebar-relations:after {
  position: absolute;
  top: calc(50% - 5px);
  right: 8px;
  content: "";
  width: 6px;
  height: 6px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sidebar-relations.-buy {
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/icon-home.svg);
  background-position: 16px center;
  background-size: 28px 23px;
}

.sidebar-relations.-old {
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/icon-old.svg);
  background-size: 23px 29px;
}

.sidebar-relations.-re {
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/icon-tool.svg);
  background-size: 23px 25px;
}

.sidebar-relations.-foot {
  height: 70px;
  padding-left: 20px;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png);
  background-repeat: repeat;
}

.sidebar-relations.-foot:before {
  background-color: #f08229;
}

.sidebar-submenu {
  /* margin-bottom: -13.33333vw; */
  padding: 8vw 6.66667vw;
  background-color: #ddd;
}

.sidebar-submenu .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 100%;
  height: 16vw;
  margin-bottom: 2.66667vw;
  padding-right: 8vw;
  padding-left: 5.33333vw;
  font-size: 17px;
  font-size: 1.7rem;
  background-color: #fff;
}

.sidebar-submenu .item:last-of-type {
  margin-bottom: 0;
}

.sidebar-submenu .item:before {
  position: absolute;
  top: calc(50% - 2.66667vw);
  right: 0;
  content: "";
  width: 5.33333vw;
  height: 5.33333vw;
  background-color: #666;
}

.sidebar-submenu .item:after {
  position: absolute;
  top: calc(50% - 1.06667vw);
  right: 1.86667vw;
  content: "";
  width: 1.6vw;
  height: 1.6vw;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sidebar-submenu [class^="icon-"] {
  margin-right: 2.66667vw;
}

.sidebar-submenu .icon-building {
  width: 7.86667vw;
}

.sidebar-submenu .icon-staff {
  width: 7.73333vw;
}

.sidebar-submenu .icon-award {
  width: 7.06667vw;
}

.sidebar-submenu .icon-presents {
  width: 7.46667vw;
}

/*
  2-7. Kind Button
==================================== */
.kind-button {
  position: fixed;
  z-index: 99;
  top: 60px;
  right: 0;
  opacity: 1;
  -webkit-transition: opacity .4s ease-out;
          transition: opacity .4s ease-out;
}

@media screen and (max-width: 959px) {
  .kind-button {
    display: none;
  }
}

.kind-button.js-is__hide {
  opacity: 0;
  pointer-events: none;
}

.kind-button-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-direction: column;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 100px;
  height: 78px;
  color: #fff;
  border-width: 3px;
  border-style: solid;
  border-right-width: 0;
  border-radius: 8px 0 0 8px;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, .2);
          box-shadow: 0 2px 0 rgba(0, 0, 0, .2);

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
}

.kind-button-item [class^=icon-] {
  fill: #fff;
}

.kind-button-item:hover {
  position: relative;
  top: 2px;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.kind-button-item:hover .favorite-total-count .icon-star {
  fill: #d02e2c;
}

.kind-button-item:hover .favorite-total-count .number {
  color: #fff;
}

.kind-button-item .label {
  margin-top: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}

.kind-button-item.-contact {
  margin-bottom: 15px;
  border-color: #ff7200;
  background-color: #ff7200;
}

.kind-button-item.-contact .icon-mail {
  width: 31px;
  height: 24px;
}

.kind-button-item.-favorite {
  border-color: #d02e2c;
  background-color: #d02e2c;
}

.kind-button-item.-anchor {
    background: #555151;
    border-color: #555151;
    margin-top: 15px;
    text-align: center;
    text-align: center;
    height: 55px;
}
.kind-button-item.-anchor .label {
margin: 0;
}

.kind-button-item.-favorite .total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
}

.kind-button-item.-favorite .total .unit {
  margin-left: -.2em;
  font-size: 12px;
  font-size: 1.2rem;
}

.kind-button-item.-favorite .total-count {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 45px;
  height: 43px;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

.kind-button-item.-favorite .total-count .icon-star {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 45px;
  height: 43px;
  fill: #fff;
}

.kind-button-item.-favorite .total-count .number {
  position: relative;
  z-index: 9;
  margin-top: .2em;
  color: #d02e2c;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
}

/*
  2-8. Property Slider
==================================== */
.property-slider {
  position: relative;
}

.property-slider .draggable {
  width: 100%;
}

.property-slider-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  width: 860px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 959px) {
  .property-slider-list {
    width: auto;
  }
}

.property-slider-item {
  position: relative;
  width: 206px;
  margin-right: 5px;
  margin-left: 5px;
  background: #fff;
  outline: none;
}

@media screen and (max-width: 959px) {
  .property-slider-item {
    width: 64vw;
    margin-right: 2.66667vw;
    margin-left: 2.66667vw;
    opacity: .4;
    -webkit-transition: opacity .4s ease-out;
            transition: opacity .4s ease-out;
  }
}

.property-slider-item .tag {
  position: absolute;
  z-index: 1;
  top: 7px;
  left: 7px;
  min-width: 40px;
  height: 18px;
  padding-right: 8px;
  padding-left: 8px;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  text-align: center;
  line-height: 18px;
}

@media screen and (max-width: 959px) {
  .property-slider-item .tag {
    /* top: 4.66667vw; */
    /* left: 4vw; */
    min-width: 12vw;
    height: 4.8vw;
    padding-right: 1.06667vw;
    padding-left: 1.06667vw;
    line-height: 4.8vw;
  }
}

.property-slider-item .tag.-ur {
  background-color: #7b1451;
}

.property-slider-item .tag.-kosha {
  background-color: #008577;
}

.property-slider-item .tag.-yokohama {
  background-color: #4ec6d1;
}

.property-slider-item .tag.-kawasaki {
  background-color: #ae77d1;
}

.property-slider-item .tag.-ja {
  background-color: #07913a;
}

.property-slider-item .tag.-minkan {
  background-color: #f05b5b;
}

.property-slider-item .tag.-tokuyu {
  background-color: #ba0000;
}

.property-slider-item .tag.-kochintai {
  background-color: #f49b29;
}

.property-slider-item .tag.-hozen {
  background-color: #5fb1ea;
}
.property-slider-item .tag.-our {
  background-color: #ba0000;
}
.property-slider-item .ph {
  position: relative;
  height: 0;
  padding-top: 75.2%;
}

.property-slider-item .ph img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 959px) {
  .property-slider-item.slick-center {
    opacity: 1;
  }
}

.property-slider-item-detail {
  padding: 15px;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail {
    padding: 4vw;
  }
}

.property-slider-item-detail .name {
  margin-bottom: 0;
  font-size: 16px;
  font-size: 1.6rem;
  text-overflow: ellipsis;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .name {
    margin-bottom: 2vw;
    font-weight: bold;
  }
}

.property-slider-item-detail .cost {
  margin-top: 10px;
  margin-bottom: 10px;
  line-height: 1;
  letter-spacing: -1px;
  white-space: nowrap;
  overflow: hidden;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .cost {
    margin-top: 2vw;
    margin-bottom: 2vw;
  }
}

.property-slider-item-detail .catch {
  color: #d02e2c;
}

.property-slider-item-detail .strong {
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
}

.property-slider-item-detail .area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .area {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.property-slider-item-detail .area p {
  width: calc(100% - 21px);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.property-slider-item-detail .area .icon-check {
  width: 16px;
  height: 16px;
  margin-right: 5px;
  fill: #ffafaf;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .area .icon-check {
    width: 4vw;
    height: 4vw;
    margin-right: 1.33333vw;
  }
}

.property-slider-item-detail .walk {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .walk {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.property-slider-item-detail .walk p {
  width: calc(100% - 21px);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.property-slider-item-detail .walk .icon-train {
  width: 13px;
  height: 18px;
  margin-right: 5px;
  margin-left: 1px;
  fill: #ffafaf;
}

@media screen and (max-width: 959px) {
  .property-slider-item-detail .walk .icon-train {
    width: 3.2vw;
    height: 4.53333vw;
    margin-right: 1.46667vw;
    margin-left: .4vw;
  }
}

.property-slider-arrow {
  position: absolute;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  border: 2px solid #d02e2c;
  border-radius: 50%;
  background-color: #d02e2c;
  cursor: pointer;
  -webkit-transition: background-color .3s ease;
          transition: background-color .3s ease;
}

@media screen and (max-width: 959px) {
  .property-slider-arrow {
    z-index: 9;
    top: calc(50% - 5.33333vw);
    width: 10.66667vw;
    height: 10.66667vw;
  }
}

@media screen and (min-width: 960px) {
  .property-slider-arrow:hover {
    background-color: #fcebeb;
  }
}

.property-slider-arrow:before {
  position: absolute;
  top: calc(50% - 5px);
  content: "";
  -webkit-transition: border-color .3s ease;
          transition: border-color .3s ease;
}

.property-slider-arrow.-prev {
  left: 0;
}

@media screen and (max-width: 959px) {
  .property-slider-arrow.-prev {
    left: 9.33333vw;
  }
}

@media screen and (min-width: 960px) {
  .property-slider-arrow.-prev:hover:before {
    border-color: #d02e2c;
  }
}

.property-slider-arrow.-prev:before {
  left: calc(50% - 4px);
  width: 10px;
  height: 10px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.property-slider-arrow.-next {
  right: 0;
}

@media screen and (max-width: 959px) {
  .property-slider-arrow.-next {
    right: 9.33333vw;
  }
}

@media screen and (min-width: 960px) {
  .property-slider-arrow.-next:hover:before {
    border-color: #d02e2c;
  }
}

.property-slider-arrow.-next:before {
  right: calc(50% - 4px);
  width: 10px;
  height: 10px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.property-slider-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 30px;
  margin-left: -20px;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

.property-slider-dots > li {
  width: 12px;
  height: 12px;
  margin-left: 20px;
  border-radius: 50%;
  background-color: #ccc;
  -webkit-transition: background-color .3s ease;
          transition: background-color .3s ease;
}

@media screen and (max-width: 959px) {
  .property-slider-dots > li {
    width: 1.86667vw;
    height: 1.86667vw;
  }
}

.property-slider-dots > li:hover, .property-slider-dots > li.slick-active {
  background-color: #d02e2c;
}

.property-slider-dots > li button {
  opacity: 0;
}
@media screen and (min-width: 960px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}


table.ur_table {
border:1px solid #ccc;
background:#fff;
width:100%;
border-collapse: collapse;
}

table.ur_table th {
border:1px solid #ccc;
background:#e5ebee;
padding:5px;
text-align:center;
	vertical-align: middle;
}

table.ur_table td {
border:1px solid #ccc;
padding:5px;
	vertical-align: middle;
}

/*よくある質問*/
.faqList .acTriger {
    font-size: 1.2em;
    font-weight: bold;
}
.faqList dd {
    font-size: 1.1em;
    margin-left: 1em;
}
.faqList .qa {
    font-weight: bold;
    color: #d02e2c;
    margin-right: 0.5em;
}
.faqList > li {
  border-bottom: dotted #ccc 1px;
  padding: 10px 35px 10px 10px;
}
.acTriger {
  cursor: pointer;
  position: relative;
}
.acTriger::before, .acTriger::after {
  width: 15px;
  content: '';
  display: block;
  height: 2px;
  background: #d02e2c;
  position: absolute;
  margin-top: -1px;
  top: 50%;
  right: -20px;
  transform: rotate(0);
  z-index: 1;
}
.acTriger::after {
  transform: rotate(90deg);
}
.acTriger.active::after {
  display: none;
  transform: rotate(-45deg);
}
.faqList .store-call .-detail {
  -webkit-box-shadow: none;
  box-shadow: none;
  margin: none!important;
  padding: none!important;
}
.faqList .store-call {
  height: auto!important;
  margin: none!important;
  padding: none!important;
}

 /* CVボタン追加用 */
.soudan_cv {
    position: fixed;
    overflow: hidden;
    z-index: 10000;
    right: 20px;
    bottom:20px;
    padding: 7px;
}
@media screen and (max-width: 640px) {
.soudan_cv {
    right: 0;
    bottom: 0;
}
}
.soudan_cv .box {
    border: 4px solid #fff;
    box-shadow: 1px 2px 7px 0px rgba(0,0,0,0.6);
    border-radius: 6px;
}
.soudan_cv .round_btn {
  display: block;
  position: relative;
  width: 30px;
  height: 30px;
  border: 2px solid #333; /* 枠の調整 */
  border-radius: 50%;  /* 丸みの度合い */
  background: #fff; /* ボタンの背景色 */
}
.soudan_cv .round_btn::before, .round_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 13px;
  background: #333;
}
.soudan_cv .round_btn::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
.soudan_cv .round_btn::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}

.soudan_cv .round_btn:hover {
    cursor: pinter;
}
.soudan_cv .round_btn {
    position: absolute;
    right: 0;
    top: 0;
}
/* checkbox 非表示 */
.soudan_cv .checkbox {
    display: none;
}
.soudan_cv #close:checked ~ .round_btn {
    display: none;
}
.soudan_cv #close:checked ~ .box {
    display: none;
}