@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap&subset=japanese");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

/*
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,700&display=swap&subset=japanese');
$g-mincho: 'Noto Serif JP', $serif, serif;
$noto-mincho: 'Noto Serif JP', serif;
*/
/* media quary */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  position: relative;
  font-size: 62.5%;
}

body {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  min-height: 100vh;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, YuGothic, "Noto Sans CJK JP", "Original Yu Gothic", "Yu Gothic", sans-serif, sans-serif;
  font-size: 1.4rem;
  -webkit-font-smoothing: antialiased;
  color: #000000;
  border-top: 0.1rem solid #fff;
  counter-reset: count-number;
}

@media screen and (min-width: 769px) {
  body {
    min-width: 120rem;
  }
}

@media all and (-ms-high-contrast: none) {
  body {
    font-family: Meiryo;
  }
}

p {
  line-height: 1.7;
}

a {
  text-decoration: none;
  color: #3d3e3e;
  transition: 0.4s;
}

a:hover {
  text-decoration: underline;
  color: #000000;
}

a:hover img {
  opacity: 0.7;
}

img {
  max-width: 100%;
  height: auto;
  transition: 0.4s;
  -webkit-backface-visibility: hidden;
}

.l-container {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .l-container {
    padding-left: 5vmin;
    padding-right: 5vmin;
  }
}

@media screen and (min-width: 769px) {
  .l-container {
    width: 120rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

.l-wrapper {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .l-wrapper {
    padding-left: 5vmin;
    padding-right: 5vmin;
  }
}

@media screen and (min-width: 769px) {
  .l-wrapper {
    width: 90rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 768px) {
  .l-main {
    margin-top: 11.8rem;
  }
}

/* for link position
-------------------------------*/
.anchor {
  display: block;
  padding-top: 7.2rem;
}

@media screen and (min-width: 769px) {
  .anchor {
    margin-top: -3rem;
  }
}

/* for sentence
-------------------------------*/
.text-align-center {
  text-align: center;
}

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

.br::before {
  content: "\A";
  white-space: pre;
}

@media screen and (min-width: 769px) {
  .br__pc::before {
    content: "\A";
    white-space: pre;
  }
}

@media screen and (max-width: 768px) {
  .br__sp::before {
    content: "\A";
    white-space: pre;
  }
}

@media screen and (min-width: 769px) {
  .tel__sp {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: #000000;
  }
}

@media screen and (max-width: 768px) {
  .tel__sp {
    text-decoration: underline;
  }
}

/* fonts
-------------------------------*/
/* font-size */
.fs10 {
  font-size: 10px;
}

.fs11 {
  font-size: 11px;
}

.fs12 {
  font-size: 12px;
}

.fs13 {
  font-size: 13px;
}

.fs14 {
  font-size: 14px;
}

.fs15 {
  font-size: 15px;
}

.fs16 {
  font-size: 16px;
}

.fs17 {
  font-size: 17px;
}

.fs18 {
  font-size: 18px;
}

.fs19 {
  font-size: 19px;
}

.fs20 {
  font-size: 20px;
}

.fs21 {
  font-size: 21px;
}

.fs22 {
  font-size: 22px;
}

.fs23 {
  font-size: 23px;
}

.fs24 {
  font-size: 24px;
}

.fs25 {
  font-size: 25px;
}

.fs26 {
  font-size: 26px;
}

.fs27 {
  font-size: 27px;
}

.fs28 {
  font-size: 28px;
}

.fs29 {
  font-size: 29px;
}

.fs30 {
  font-size: 30px;
}

.fs31 {
  font-size: 31px;
}

.fs32 {
  font-size: 32px;
}

.fs33 {
  font-size: 33px;
}

.fs34 {
  font-size: 34px;
}

.fs35 {
  font-size: 35px;
}

.fs36 {
  font-size: 36px;
}

.fs37 {
  font-size: 37px;
}

.fs38 {
  font-size: 38px;
}

.fs39 {
  font-size: 39px;
}

.fs40 {
  font-size: 40px;
}

.fs41 {
  font-size: 41px;
}

.fs42 {
  font-size: 42px;
}

.fs43 {
  font-size: 43px;
}

.fs44 {
  font-size: 44px;
}

.fs45 {
  font-size: 45px;
}

.fs46 {
  font-size: 46px;
}

.fs47 {
  font-size: 47px;
}

.fs48 {
  font-size: 48px;
}

.fs49 {
  font-size: 49px;
}

.fs50 {
  font-size: 50px;
}

.fs51 {
  font-size: 51px;
}

.fs52 {
  font-size: 52px;
}

.fs53 {
  font-size: 53px;
}

.fs54 {
  font-size: 54px;
}

.fs55 {
  font-size: 55px;
}

.fs56 {
  font-size: 56px;
}

.fs57 {
  font-size: 57px;
}

.fs58 {
  font-size: 58px;
}

.fs59 {
  font-size: 59px;
}

.fs60 {
  font-size: 60px;
}

/* font-weight */
.normal {
  font-weight: normal;
}

.bold {
  font-weight: bold;
}

/* font-style */
.italic {
  font-style: italic;
}

/* color */
.black {
  color: #000000;
}

.grey {
  color: #3d3e3e;
}

.palegrey {
  color: #f0f0f0;
}

.white {
  color: #fff;
}

.red {
  color: #c91818;
}

.primary {
  color: #000000;
}

.secondary {
  color: #d7be19;
}

.intermediate {
  color: #cb9400;
}

.accent01 {
  color: #267bcc;
}

.accent02 {
  color: #8f9ba0;
}

.accent03 {
  color: #f7f7f7;
}

.mincho {
  font-family: Georgia, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.gothic {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, YuGothic, "Noto Sans CJK JP", "Original Yu Gothic", "Yu Gothic", sans-serif, sans-serif;
}

/* show only  SP/PC
-------------------------------*/
@media screen and (min-width: 769px) {
  .spOnly {
    display: none !important;
  }
}

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

.nodisplay {
  display: none !important;
}

.replace {
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}

.notes {
  margin-left: 1em;
  text-indent: -1em;
}

.footer {
  text-align: center;
  background-color: #f0f0f0;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media screen and (min-width: 769px) {
  .footer {
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
  }
}

@media screen and (max-width: 768px) {
  .footer {
    margin-bottom: 15.13514%;
  }
}

@media screen and (max-width: 768px) {
  .footer-contact {
    margin-bottom: 0;
  }
}

.footer__logoHolder {
  padding-bottom: 1.4rem;
}

.footer__text {
  font-size: 1.2rem;
  padding-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  .footer__text {
    padding-bottom: 4rem;
  }
}

.footer__sns {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: center;
      justify-content: center;
  padding-bottom: 3rem;
}

@media screen and (min-width: 769px) {
  .footer__sns {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .footer__sns {
    padding-bottom: 6.6rem;
  }
}

.footer__sns__link {
  padding: 0 2rem;
}

@media screen and (min-width: 769px) {
  .footer__sns__link {
    padding: 0 4.6rem;
  }
}

.footer__nav {
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .footer__nav {
    padding-bottom: 6.6rem;
  }
}

.footer__nav__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .footer__nav__inner {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .footer__nav__inner {
    font-size: 1.3rem;
    font-weight: 700;
  }
}

@media screen and (max-width: 768px) {
  .footer__nav__item {
    margin-bottom: 3rem;
  }
}

.footer__nav__item-02 {
  font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
  .footer__nav__item-02 {
    margin-bottom: 3rem;
  }
}

@media screen and (min-width: 769px) {
  .footer__nav__item-02 {
    display: inline-block;
  }
  .footer__nav__item-02:not(:last-child):after {
    content: "|";
    display: inline-block;
    padding: 4rem 2rem;
  }
}

.footer__credit {
  font-size: 1.2rem;
}

.header {
  text-align: center;
}

@media all and (-ms-high-contrast: none) {
  .header {
    max-height: 201px;
  }
}

@media screen and (max-width: 768px) {
  .header {
    width: 100%;
    position: fixed;
    background-color: #fff;
    z-index: 5;
    top: 0;
    box-shadow: 1px 1px 6px rgba(200, 200, 200, 0.6);
    height: 7rem;
  }
}

@media screen and (min-width: 769px) {
  .header {
    padding-top: 4rem;
  }
}

@media screen and (max-width: 768px) {
  .header__logo {
    width: 100%;
    margin: 0.5rem auto 0;
    padding: 0.5rem 0;
  }
}

@media screen and (max-width: 768px) {
  .header__logo img {
    width: 12rem;
  }
}

@media screen and (min-width: 769px) {
  .header__navContainer {
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .header__toggle {
    position: absolute;
    right: 2rem;
    top: 2.2rem;
  }
}

.header__nav {
  padding-top: 4rem;
}

.header__nav__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.header__nav__item-has-children {
  position: relative;
}

.header__nav__item > .header__nav__link {
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.header__nav__item > .header__nav__link::after {
  position: absolute;
  left: 25%;
  content: "";
  width: 50%;
  height: 0.3rem;
  background: #d7be19;
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
  bottom: 0.3rem;
}

.header__nav__item > .header__nav__link:hover::after {
  bottom: 0.6rem;
  opacity: 1;
  visibility: visible;
}

.header__nav__link {
  display: block;
  text-align: center;
  line-height: 1.71429;
  font-size: 1.4rem;
  color: #000000;
}

@media screen and (min-width: 769px) {
  .header__nav__link {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 1.5rem;
  }
}

.header__nav__link:hover {
  text-decoration: none;
}

.header__nav__link-current {
  color: #d7be19;
}

.header__nav__submenu {
  position: absolute;
  top: 3.3rem;
  left: -3rem;
  margin: auto;
  z-index: 6;
  width: 22rem;
  background-color: #fff;
  padding-top: 1.8rem;
  display: none;
}

.header__nav__sublink {
  line-height: 1.3;
  display: block;
  padding: 0 1rem 1.8rem;
}

.header__nav__sublink:hover {
  color: #d7be19;
  text-decoration: none;
}

.header__subnav {
  position: fixed;
  width: 100%;
  background-color: #f0f0f0;
  color: #3d3e3e;
}

.header__subnav__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.header__subnav__item {
  font-size: 1.1rem;
  font-weight: 700;
  padding-bottom: 2vw;
  padding-left: 0.1rem;
  padding-right: 0.1rem;
  -ms-flex: 1;
      flex: 1;
  max-height: 5.7rem;
}

.header__subnav__item img {
  max-width: 3.3rem;
}

.header__subnav__item:not(:last-child) {
  border-right: 1px solid #fff;
}

nav.globalMenuSp {
  position: fixed;
  z-index: 2;
  top: 0;
  right: -80%;
  height: 100%;
  overflow: auto;
  background: #f0f0f0;
  color: #000;
  text-align: center;
  -webkit-transform: translateX(0%);
      -ms-transform: translateX(0%);
          transform: translateX(0%);
  transition: all 0.6s;
  width: 80%;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 13rem;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp li {
  font-size: 1.1em;
  list-style-type: none;
  padding: 0;
  width: 100%;
  border-bottom: 1px dotted #3d3e3e;
}

nav.globalMenuSp li a {
  display: block;
  color: #000;
  padding: 1.6em 0.5em;
}

nav.globalMenuSp.active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}

.overflowHidden {
  overflow: hidden;
}

.navToggle {
  display: block;
  position: fixed;
  right: 1.5rem;
  top: 1.2rem;
  width: 42px;
  height: 51px;
  cursor: pointer;
  z-index: 3;
  text-align: center;
}

.navToggle span {
  display: block;
  position: absolute;
  width: 30px;
  border-bottom: solid 3px #000000;
  transition: 0.35s ease-in-out;
  left: 6px;
}

.navToggle span:nth-child(1) {
  top: 9px;
}

.navToggle span:nth-child(2) {
  top: 18px;
}

.navToggle span:nth-child(3) {
  top: 27px;
}

.navToggle span:nth-child(4) {
  border: none;
  color: #000000;
  font-size: 9px;
  font-weight: bold;
  top: 34px;
}

.navToggle.active span:nth-child(1) {
  top: 18px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
}

.navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}

.page__header__inner {
  padding-top: 2.5rem;
  padding-bottom: 0.5rem;
}

@media screen and (min-width: 769px) {
  .page__header__inner {
    padding-top: 5rem;
    padding-bottom: 3rem;
  }
}

.page__header__heading {
  text-align: center;
  line-height: 1.5;
  font-size: 2.2rem;
  word-wrap: break-word;
}

@media screen and (min-width: 769px) {
  .page__header__heading {
    font-size: 3.2rem;
  }
}

.page__intro {
  text-align: center;
}

.page__intro__text {
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .page__intro__text {
    line-height: 2;
  }
}

.page__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .page__container {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.formTable {
  margin-top: 4rem;
  text-align: left;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .formTable {
    margin-top: 8rem;
  }
}

@media screen and (max-width: 768px) {
  .formTable {
    border-bottom: 1px solid #c9c9c9;
  }
}

.formTable th,
.formTable td {
  border: 1px solid #c9c9c9;
  padding: 1rem;
  line-height: 1.7rem;
}

@media screen and (max-width: 768px) {
  .formTable th,
  .formTable td {
    display: block;
    border-bottom: 0;
  }
}

.formTable th {
  background-color: #f0f0f0;
}

#formWrap {
  text-align: center;
}

.error_messe {
  margin-top: 2rem;
}

.error_messe__wrapper {
  color: #c91818;
  margin-top: 3rem;
}

@media screen and (max-width: 768px) {
  .error_messe__wrapper {
    text-align: left;
  }
}

@media screen and (min-width: 769px) {
  .error_messe__wrapper {
    margin-top: 6rem;
  }
}

@media screen and (min-width: 769px) {
  .form__area__table {
    width: 70rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.form__area__table th,
.form__area__table td {
  line-height: 1.7;
  vertical-align: top;
}

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

@media screen and (min-width: 769px) {
  .form__area__table th,
  .form__area__table td {
    padding: 1.5rem 1rem;
  }
}

.form__area__table th {
  text-align: left;
}

@media screen and (min-width: 769px) {
  .form__area__table th {
    white-space: nowrap;
  }
}

@media screen and (max-width: 768px) {
  .form__area__table th {
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .form__area__table td {
    margin-bottom: 2rem;
  }
}

.form__area__table textarea {
  width: 100%;
}

.form__area input,
.form__area select {
  font-size: inherit;
  font-family: inherit;
}

.form__area textarea {
  font-size: inherit;
  font-family: inherit;
}

.form__area__required {
  color: #d7be19;
}

.form__area__btnHolder {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 769px) {
  .form__area__btnHolder {
    margin-top: 8rem;
  }
}

.form__area__btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border-radius: unset;
  cursor: pointer;
  font-family: inherit;
  font-size: 1.4rem;
  color: #000;
}

@media screen and (max-width: 768px) {
  .form__area__btn {
    width: 100%;
  }
}

@media screen and (min-width: 769px) {
  .form__area__btn {
    font-size: 1.6rem;
    padding-left: 6rem;
    padding-right: 6rem;
  }
}

.form__area__btn-back {
  font-weight: 400;
}

.form__area__btn-submit {
  background-color: #fbf7db;
}

@media screen and (max-width: 768px) {
  .form__area__btn-submit {
    margin-top: 3rem;
  }
}

.about__section__title {
  text-align: center;
  border-bottom: 2px dotted #000000;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .about__section__title {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
  }
}

.about__section01__photo {
  margin-top: 2rem;
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .about__section01__photo {
    padding-bottom: 2rem;
  }
}

.about__section02 {
  margin-top: 5rem;
}

@media screen and (min-width: 769px) {
  .about__section02 {
    margin-top: 10rem;
  }
}

.about__section03 {
  margin-top: 2.4rem;
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .about__section03 {
    margin-top: 10rem;
    padding-bottom: 12rem;
  }
}

.about__table {
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  .about__table__contents {
    padding-left: 2rem;
  }
}

.about__table__link01 {
  color: #d7be19;
}

@media screen and (min-width: 769px) {
  .about__table__link01 {
    padding-left: 1.6rem;
  }
}

.about__table__fax {
  padding-left: 2rem;
}

@media screen and (min-width: 769px) {
  .about__table__fax {
    padding-left: 7rem;
  }
}

.about__table01__heading {
  text-align: left;
  white-space: nowrap;
}

@media screen and (min-width: 769px) {
  .about__table01__heading {
    width: 20rem;
  }
}

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

.about__table01__contents {
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .about__table01__contents {
    line-height: 2;
    padding-bottom: 4rem;
  }
}

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

.about__table02__heading {
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media screen and (min-width: 769px) {
  .about__table02__heading {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .about__table02__heading {
    min-width: 50rem;
    -ms-flex-align: center;
        align-items: center;
  }
}

@media screen and (max-width: 768px) {
  .about__table02__photo {
    padding-right: 1rem;
    width: 50%;
  }
}

@media screen and (min-width: 769px) {
  .about__table02__photo {
    margin-top: 3rem;
    margin-bottom: 3rem;
    padding-right: 2rem;
  }
}

.about__table02__title {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .about__table02__title {
    -ms-flex: 1;
        flex: 1;
  }
}

.about__table02__contents {
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .about__table02__contents {
    padding-bottom: 3rem;
    display: block;
  }
}

.about__table03__heading {
  vertical-align: top;
}

@media screen and (max-width: 768px) {
  .about__table03__heading {
    max-width: 11.3rem;
  }
}

@media screen and (min-width: 769px) {
  .about__table03__heading {
    vertical-align: middle;
  }
}

.about__table03__contents {
  vertical-align: top;
}

@media screen and (max-width: 768px) {
  .about__table03__contents {
    padding-bottom: 3rem;
  }
}

@media screen and (min-width: 769px) {
  .about__table03__contents {
    vertical-align: middle;
    padding-left: 25rem;
  }
}

.about__table03__text {
  margin-bottom: 1em;
}

@media screen and (max-width: 768px) {
  .about__table03__photo {
    padding-right: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .about__table03__photo {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}

.archive__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .archive__container {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.archive__post__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .archive__post__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .archive__post__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.archive__post__item {
  list-style: none;
  text-align: left;
  min-height: 1%;
}

@media screen and (max-width: 768px) {
  .archive__post__item {
    padding-bottom: 2rem;
    margin-bottom: 3rem;
    border-bottom: 1px dashed #c9c9c9;
  }
}

@media screen and (min-width: 769px) {
  .archive__post__item {
    width: 100%;
    max-width: 37.6rem;
    padding-bottom: 7rem;
  }
}

.archive__post__icon-tag {
  color: #d7be19;
  margin-left: 1rem;
}

.archive__post__category__link {
  color: #d7be19;
  margin-right: 1rem;
  font-size: 1.2rem;
}

.archive__post__link {
  color: #000000;
}

.archive__post__link:hover img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

.archive__post__imgHolder {
  overflow: hidden;
  margin-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .archive__post__imgHolder {
    height: 22.6rem;
  }
}

.archive__post__imgHolder img {
  width: 100%;
  max-height: 22.6rem;
  object-fit: contain;
}

.archive__post__unit {
  line-height: 1.5;
  margin-top: 0.5rem;
}

.archive__post__heading {
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.class-selection__section {
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .class-selection__section {
    padding-bottom: 5rem;
  }
}

.class-selection__section__list {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 3rem;
}

@media screen and (min-width: 769px) {
  .class-selection__section__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .class-selection__section__list {
    margin-top: 6rem;
  }
}

.class-selection__section__item {
  margin-bottom: 5rem;
}

@media screen and (min-width: 769px) {
  .class-selection__section__item {
    margin-bottom: 10rem;
  }
}

.class-selection__section__item:hover img {
  box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.3);
}

.class-selection__section__link {
  color: #d7be19;
  font-weight: 700;
}

.music__point,
.city__point,
.joy__point,
.pet__point,
.japanese__point,
.hacouri__point {
  padding-top: 2.5rem;
}

@media screen and (min-width: 769px) {
  .music__point,
  .city__point,
  .joy__point,
  .pet__point,
  .japanese__point,
  .hacouri__point {
    padding-top: 5rem;
  }
}

.music__point__list,
.city__point__list,
.joy__point__list,
.pet__point__list,
.japanese__point__list,
.hacouri__point__list {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media screen and (min-width: 769px) {
  .music__point__list,
  .city__point__list,
  .joy__point__list,
  .pet__point__list,
  .japanese__point__list,
  .hacouri__point__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .music__point__list,
  .city__point__list,
  .joy__point__list,
  .pet__point__list,
  .japanese__point__list,
  .hacouri__point__list {
    width: 100rem;
    margin-left: auto;
    margin-right: auto;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}

.music__point__item,
.city__point__item,
.joy__point__item,
.pet__point__item,
.japanese__point__item,
.hacouri__point__item {
  font-weight: 700;
  font-size: 1.6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}

@media screen and (min-width: 769px) {
  .music__point__item,
  .city__point__item,
  .joy__point__item,
  .pet__point__item,
  .japanese__point__item,
  .hacouri__point__item {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .music__point__item,
  .city__point__item,
  .joy__point__item,
  .pet__point__item,
  .japanese__point__item,
  .hacouri__point__item {
    margin-bottom: 1.5rem;
  }
}

@media screen and (min-width: 769px) {
  .music__point__item,
  .city__point__item,
  .joy__point__item,
  .pet__point__item,
  .japanese__point__item,
  .hacouri__point__item {
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    position: relative;
    width: 30.2rem;
    min-height: 12.5rem;
    border: 1px solid #313131;
    padding: 1rem 2rem;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .music__point__icon,
  .city__point__icon,
  .joy__point__icon,
  .pet__point__icon,
  .japanese__point__icon,
  .hacouri__point__icon {
    max-width: 11vw;
    margin-right: 4vw;
  }
}

@media screen and (min-width: 769px) {
  .music__point__icon,
  .city__point__icon,
  .joy__point__icon,
  .pet__point__icon,
  .japanese__point__icon,
  .hacouri__point__icon {
    position: absolute;
    left: 0;
    right: 0;
    top: -3rem;
  }
}

.music__point__text,
.city__point__text,
.joy__point__text,
.pet__point__text,
.japanese__point__text,
.hacouri__point__text {
  -ms-flex: 1;
      flex: 1;
}

@media screen and (min-width: 769px) {
  .music__point__bn,
  .city__point__bn,
  .joy__point__bn,
  .pet__point__bn,
  .japanese__point__bn,
  .hacouri__point__bn {
    margin: 6rem 0 5rem;
  }
}

.music__point__column,
.city__point__column,
.joy__point__column,
.pet__point__column,
.japanese__point__column,
.hacouri__point__column {
  padding-top: 1rem;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .music__room__text,
  .city__room__text,
  .joy__room__text,
  .pet__room__text,
  .japanese__room__text,
  .hacouri__room__text {
    width: 48rem;
    line-height: 2;
  }
}

@media screen and (min-width: 769px) {
  .music__room__dotpc,
  .city__room__dotpc,
  .joy__room__dotpc,
  .pet__room__dotpc,
  .japanese__room__dotpc,
  .hacouri__room__dotpc {
    border-bottom: 2px dotted #000000;
  }
}

@media screen and (max-width: 768px) {
  .music__room__dotsp,
  .city__room__dotsp,
  .joy__room__dotsp,
  .pet__room__dotsp,
  .japanese__room__dotsp,
  .hacouri__room__dotsp {
    padding-bottom: 2rem;
    border-bottom: 2px dotted #000000;
  }
}

@media screen and (min-width: 769px) {
  .music__room__info,
  .city__room__info,
  .joy__room__info,
  .pet__room__info,
  .japanese__room__info,
  .hacouri__room__info {
    width: 50rem;
    padding-bottom: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .music__room__info,
  .city__room__info,
  .joy__room__info,
  .pet__room__info,
  .japanese__room__info,
  .hacouri__room__info {
    margin-bottom: 1rem;
  }
}

.music__room__title1,
.city__room__title1,
.joy__room__title1,
.pet__room__title1,
.japanese__room__title1,
.hacouri__room__title1 {
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .music__room__title1,
  .city__room__title1,
  .joy__room__title1,
  .pet__room__title1,
  .japanese__room__title1,
  .hacouri__room__title1 {
    padding-bottom: 2rem;
  }
}

.music__room__title2,
.city__room__title2,
.joy__room__title2,
.pet__room__title2,
.japanese__room__title2,
.hacouri__room__title2 {
  font-weight: bold;
  line-height: 1.5;
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .music__room__title2,
  .city__room__title2,
  .joy__room__title2,
  .pet__room__title2,
  .japanese__room__title2,
  .hacouri__room__title2 {
    font-size: 1.6rem;
    padding-top: 1rem;
  }
}

.music__room__role,
.city__room__role,
.joy__room__role,
.pet__room__role,
.japanese__room__role,
.hacouri__room__role {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media screen and (min-width: 769px) {
  .music__room__role,
  .city__room__role,
  .joy__room__role,
  .pet__room__role,
  .japanese__room__role,
  .hacouri__room__role {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .music__room__role,
  .city__room__role,
  .joy__room__role,
  .pet__room__role,
  .japanese__room__role,
  .hacouri__room__role {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .music__room__role,
  .city__room__role,
  .joy__room__role,
  .pet__room__role,
  .japanese__room__role,
  .hacouri__room__role {
    margin-bottom: 2rem;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}

.music__room__tano-sumu,
.city__room__tano-sumu,
.joy__room__tano-sumu,
.pet__room__tano-sumu,
.japanese__room__tano-sumu,
.hacouri__room__tano-sumu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}

@media screen and (min-width: 769px) {
  .music__room__tano-sumu,
  .city__room__tano-sumu,
  .joy__room__tano-sumu,
  .pet__room__tano-sumu,
  .japanese__room__tano-sumu,
  .hacouri__room__tano-sumu {
    margin-top: 2rem;
    padding-right: 5rem;
  }
}

.music__room__tano-sumu__link,
.city__room__tano-sumu__link,
.joy__room__tano-sumu__link,
.pet__room__tano-sumu__link,
.japanese__room__tano-sumu__link,
.hacouri__room__tano-sumu__link {
  color: #d7be19;
  font-weight: 700;
  padding-left: 0.3rem;
}

.music__contact,
.city__contact,
.joy__contact,
.pet__contact,
.japanese__contact,
.hacouri__contact {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .music__contact,
  .city__contact,
  .joy__contact,
  .pet__contact,
  .japanese__contact,
  .hacouri__contact {
    margin: 2rem auto 7.5rem;
  }
}

@media screen and (min-width: 769px) {
  .music__contact,
  .city__contact,
  .joy__contact,
  .pet__contact,
  .japanese__contact,
  .hacouri__contact {
    margin: 6rem auto 15rem;
  }
}

.music__contact__text,
.city__contact__text,
.joy__contact__text,
.pet__contact__text,
.japanese__contact__text,
.hacouri__contact__text {
  font-weight: 700;
  font-size: 1.6rem;
  text-align: center;
  padding-bottom: 1.5rem;
}

.music__contact__mail,
.city__contact__mail,
.joy__contact__mail,
.pet__contact__mail,
.japanese__contact__mail,
.hacouri__contact__mail {
  font-weight: 400;
  font-size: 1.4rem;
  display: block;
  margin-top: 0.5rem;
}

@media screen and (min-width: 769px) {
  .music__contact__mail,
  .city__contact__mail,
  .joy__contact__mail,
  .pet__contact__mail,
  .japanese__contact__mail,
  .hacouri__contact__mail {
    margin-top: 1rem;
  }
}

.contact__wrapper {
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .contact__wrapper {
    padding-bottom: 15rem;
  }
}

@media screen and (max-width: 768px) {
  .contact__intro {
    margin-top: 1rem;
  }
}

.contact__intro__link {
  color: #d7be19;
  font-weight: 700;
  font-size: 2rem;
  position: relative;
  top: 3px;
}

.contact__intro__text a {
  color: #d7be19;
}

.contact__intro__campaign {
  text-align: center;
  margin-bottom: 2rem;
}

@media screen and (max-width: 768px) {
  .contact__intro__campaign {
    margin-bottom: 2rem;
  }
}

.contact__form input[type="radio"],
.contact__form input[type="checkbox"] {
  position: relative;
  top: -2px;
  margin-right: 3px;
}

.contact__form__input {
  width: 100%;
  margin-bottom: 1rem;
}

.contact__form__input-02 {
  width: 8em;
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .contact__form__radio {
    display: block;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .contact__form__radio {
    margin-right: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .contact__form__checkbox {
    display: block;
    margin-bottom: 2.3rem;
  }
}

@media screen and (min-width: 769px) {
  .contact__form__checkbox {
    margin-right: 2.3rem;
  }
}

@media screen and (min-width: 769px) {
  .diary__kv__image {
    object-fit: cover;
    height: 35.5rem;
  }
}

.diary__container {
  margin-top: 3rem;
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .diary__container {
    margin-top: 7rem;
    padding-bottom: 7rem;
  }
}

@media screen and (min-width: 769px) {
  .diary__wrapper__primary {
    width: 79rem;
  }
}

@media screen and (min-width: 769px) {
  .diary__wrapper__secondary {
    width: 32.4rem;
  }
}

@media screen and (max-width: 768px) {
  .diary__front__heading {
    width: 30vw;
    margin-left: auto;
    margin-right: auto;
  }
}

.diary__sidebar__wrapper {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px dashed #c9c9c9;
}

.diary__sidebar__post {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  line-height: 1.3;
}

@media screen and (min-width: 769px) {
  .diary__sidebar__post {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.diary__sidebar__thumbnail {
  margin-right: 1rem;
}

@media screen and (max-width: 768px) {
  .diary__sidebar__thumbnail {
    width: 40%;
  }
}

@media screen and (min-width: 769px) {
  .diary__sidebar__thumbnail {
    width: 13.6rem;
  }
}

.diary__sidebar__thumbnail img {
  width: 100%;
  max-height: 8.2rem;
  object-fit: contain;
}

.diary__sidebar__post {
  -ms-flex: 1;
      flex: 1;
}

.flow__point__heading {
  text-align: center;
  padding: 4rem 0 3rem;
}

@media screen and (min-width: 769px) {
  .flow__point__heading {
    padding: 8rem 0 7rem;
  }
}

.flow__point__wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .flow__point__wrapper {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .flow__point__contents {
    margin-bottom: 3rem;
  }
}

@media screen and (min-width: 769px) {
  .flow__point__contents {
    width: 37rem;
  }
}

.flow__point__title {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.75;
  padding-left: 9rem;
  margin-bottom: 1.4rem;
}

.flow__point__title-01 {
  background: url(../images/common/icon/icon_point01.png) no-repeat 0 6px;
  background-size: 6.8rem auto;
}

.flow__point__title-02 {
  background: url(../images/common/icon/icon_point02.png) no-repeat 0 6px;
  background-size: 6.8rem auto;
}

.flow__point__title-03 {
  background: url(../images/common/icon/icon_point03.png) no-repeat 0 6px;
  background-size: 6.8rem auto;
}

.flow__point__photo {
  padding-bottom: 2rem;
  border-bottom: 2px dotted #000000;
  margin-bottom: 1.2rem;
}

@media screen and (min-width: 769px) {
  .flow__point__text {
    line-height: 2;
  }
}

.flow__step {
  padding-bottom: 4.5rem;
}

@media screen and (min-width: 769px) {
  .flow__step {
    padding-bottom: 15rem;
  }
}

.flow__step__heading {
  text-align: center;
  padding: 1rem 0 3rem;
}

@media screen and (min-width: 769px) {
  .flow__step__heading {
    padding: 8rem 0 7rem;
  }
}

.flow__step__contents {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
}

@media screen and (min-width: 769px) {
  .flow__step__contents {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.flow__step__item-01 {
  position: relative;
}

@media screen and (max-width: 768px) {
  .flow__step__item-01 {
    width: 20%;
    margin-right: 4%;
  }
}

@media screen and (min-width: 769px) {
  .flow__step__item-01 {
    margin-right: 4rem;
    margin-bottom: 6rem;
  }
}

.flow__step__item-01:after {
  content: "";
  position: absolute;
  display: block;
  bottom: -6rem;
  left: 2.3rem;
  width: 0.2rem;
  height: 6rem;
  border-left: 2px dashed #8f9ba0;
}

@media screen and (max-width: 768px) {
  .flow__step__item-01:after {
    left: 50%;
    bottom: 0;
    height: 100%;
    z-index: -1;
    border-width: 1px;
  }
}

@media screen and (max-width: 768px) {
  .flow__step__item-01-end {
    width: 20%;
    margin-right: 4%;
  }
}

@media screen and (min-width: 769px) {
  .flow__step__item-01-end {
    margin-right: 4rem;
  }
}

.flow__step__item-02 {
  -ms-flex: 1;
      flex: 1;
}

@media screen and (max-width: 768px) {
  .flow__step__item-02 {
    margin-bottom: 3rem;
  }
}

@media screen and (min-width: 769px) {
  .flow__step__text p {
    line-height: 2;
  }
}

.flow__link__list {
  list-style: none;
  margin-top: 0.5rem;
}

.flow__link__item {
  font-weight: 700;
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  .flow__link__item {
    line-height: 2;
  }
}

.flow__link__item:before {
  position: relative;
  display: inline-block;
  padding-right: 1rem;
  padding-left: 0.5rem;
  font-family: "fontello";
  content: "\e802";
}

.flow__link__item a {
  color: #d7be19;
  padding-right: 0.5rem;
}

.free-plan__intro__text {
  text-align: center;
  padding-bottom: 3rem;
  font-weight: 700;
}

.free-plan__myhome {
  text-align: center;
  margin: 6rem auto 10rem;
}

@media screen and (max-width: 768px) {
  .free-plan__myhome {
    margin: 2rem auto;
  }
}

.free-plan__myhome__title {
  margin-bottom: 1.4rem;
}

@media screen and (max-width: 768px) {
  .free-plan__myhome__title {
    margin-bottom: 0rem;
  }
}

.free-plan__myhome__text {
  padding: 1rem 5% 2rem;
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  .free-plan__myhome__text {
    line-height: 2;
    padding: 2rem 0 4rem;
  }
}

.free-plan__point {
  margin-bottom: 5.5rem;
}

@media screen and (min-width: 769px) {
  .free-plan__point {
    margin-bottom: 15rem;
  }
}

.free-plan__point__heading {
  text-align: center;
  padding: 4rem 0 3rem;
}

@media screen and (min-width: 769px) {
  .free-plan__point__heading {
    margin: 0 auto 8rem;
  }
}

.free-plan__point__wrapper {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .free-plan__point__wrapper {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .free-plan__point__contents {
    margin-bottom: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .free-plan__point__contents {
    width: 55rem;
  }
}

.free-plan__point__title {
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.75;
  margin-bottom: 1.4rem;
  -ms-flex-align: center;
      align-items: center;
}

.free-plan__point__icon {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .free-plan__point__icon {
    max-width: 11vw;
    margin-right: 4vw;
    display: inline-block;
    vertical-align: middle;
  }
}

@media screen and (min-width: 769px) {
  .free-plan__point__icon {
    margin-right: 2rem;
  }
}

.free-plan__point__photo {
  padding-bottom: 3.7rem;
}

@media screen and (max-width: 768px) {
  .free-plan__point__photo {
    padding-bottom: 1.2rem;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .free-plan__point__text {
    line-height: 2;
  }
}

.privacy__inner {
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .privacy__inner {
    padding-bottom: 15rem;
  }
}

.privacy__description {
  line-height: 1.6;
  margin-top: 2rem;
}

.privacy__box__heading {
  margin-bottom: 2rem;
  line-height: 1.27778;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 3rem;
}

@media screen and (min-width: 769px) {
  .privacy__box__heading {
    margin-top: 5rem;
  }
}

.privacy__box__text {
  line-height: 1.6;
}

.privacy__box__list {
  padding-left: 2rem;
}

.simulation__wrapper {
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .simulation__wrapper {
    padding-bottom: 15rem;
  }
}

@media screen and (max-width: 768px) {
  .simulation__intro {
    margin-top: 1rem;
  }
}

.simulation__intro__text {
  font-size: 1.2rem;
}

.simulation__form input[type="radio"],
.simulation__form input[type="checkbox"] {
  position: relative;
  top: -2px;
  margin-right: 6px;
  vertical-align: middle;
}

.simulation__form textarea {
  width: 100%;
  margin-top: 1.2rem;
}

@media screen and (min-width: 769px) {
  .simulation__form textarea {
    width: 43rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.simulation__form__title {
  text-align: center;
  margin-bottom: 1.2rem;
  margin-top: 4rem;
}

@media screen and (min-width: 769px) {
  .simulation__form__title {
    margin-top: 8rem;
  }
}

.simulation__form__title:before {
  display: block;
  font-size: 1.6rem;
  margin-bottom: 0.3rem;
}

@media screen and (min-width: 769px) {
  .simulation__form__title:before {
    margin-bottom: 0.6rem;
  }
}

.simulation__form__title:after {
  content: "";
  display: block;
  padding-bottom: 1.2rem;
  border-bottom: 2px dotted #000000;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .simulation__form__title:after {
    width: 43rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.simulation__form__title-01:before {
  content: "Question1";
}

.simulation__form__title-02:before {
  content: "Question2";
}

.simulation__form__title-03:before {
  content: "Question3";
}

.simulation__form__title-04:before {
  content: "Question4";
}

.simulation__form__title-05:before {
  content: "Question5";
}

.simulation__form__title-06:before {
  content: "Question6";
}

.simulation__form__title-07:before {
  content: "Question7";
}

.simulation__form__title-08:before {
  content: "Question8";
}

.simulation__form__title-09:before {
  content: "Question9";
}

.simulation__form__title-10:before {
  content: "Question10";
}

.simulation__form__title-11:before {
  content: "Question11";
}

@media screen and (min-width: 769px) {
  .simulation__form__textHolder {
    width: 43rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.simulation__form__text {
  font-weight: 700;
  margin-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .simulation__form__text {
    font-size: 1.6rem;
  }
}

.simulation__form__text-small {
  font-size: 1.4rem;
  font-weight: 400;
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .simulation__form__text-02 {
    margin-top: 1rem;
  }
}

.simulation__form__text label {
  display: inline-block;
  margin-bottom: 2.3rem;
}

@media screen and (min-width: 769px) {
  .simulation__form__text label {
    margin-bottom: 2rem;
  }
}

.simulation__form__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (min-width: 769px) {
  .simulation__form__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.simulation__form__input {
  width: 100%;
  font-size: 1.8rem;
}

/**********************************
 single
**********************************/
.single__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .single__container {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.single__post__heading {
  visibility: hidden;
  margin-bottom: 3rem;
}

@media screen and (max-width: 768px) {
  .single__post__heading {
    padding-top: 1.8rem;
  }
}

.single__post__thumbnail {
  margin-bottom: 3rem;
}

.single__post__thumbnail img {
  display: block;
  margin: 0 auto;
}

.single__post__content {
  margin-bottom: 4rem;
  word-break: break-all;
  line-height: 1.6;
  font-size: 1.4rem;
}

@media screen and (min-width: 769px) {
  .single__post__content {
    font-size: 1.8rem;
    margin-bottom: 8rem;
  }
}

.single__post__content h1,
.single__post__content h2,
.single__post__content h3,
.single__post__content h4,
.single__post__content h5,
.single__post__content h6 {
  margin: 2rem 0 2rem;
}

.single__post__content h1 {
  line-height: 1.3;
  font-size: 4rem;
  color: #000000;
}

.single__post__content h2 {
  line-height: 1.3;
  font-size: 3rem;
  color: #000000;
}

.single__post__content h3 {
  line-height: 1.26429;
  font-size: 2.8rem;
  color: #000000;
}

.single__post__content h4 {
  line-height: 1.3;
  font-size: 2.6rem;
}

.single__post__content h5 {
  line-height: 1.3;
  font-size: 2.4rem;
}

.single__post__content h6 {
  line-height: 1.3;
  font-size: 2rem;
}

.single__post__content figure {
  max-width: 100%;
}

.single__post__content img {
  display: block;
  max-width: 100%;
  height: auto;
}

.single__post__content p:not(:first-child) {
  margin-top: 1em;
}

.single__post__content p:not(:last-child) {
  margin-bottom: 1em;
}

.single__post__content a {
  text-decoration: underline;
}

.single__post__content pre {
  border: solid 0.1rem #c9c9c9;
  padding: 2rem;
  overflow: auto;
}

.single__post__content ul,
.single__post__content ol {
  margin-left: 2em;
  margin-top: 1em;
  margin-bottom: 1em;
}

.single__post__content ul:not([class]) {
  list-style-type: disc;
}

.single__post__content ol:not([class]) {
  list-style-type: decimal;
}

.single__post__content dl dt {
  border-bottom: dotted 0.1rem #000000;
}

.single__post__content dl dt:not(:first-child) {
  margin-top: 3rem;
}

.single__post__content dl dd {
  margin-top: 1.5rem;
}

.single__post__content table {
  margin: 3rem 0;
  border: solid 0.1rem #c9c9c9;
}

.single__post__content table th,
.single__post__content table td {
  padding: 0.5rem 1rem;
  border: solid 0.1rem #c9c9c9;
}

.single__post__content blockquote:not([class="twitter-tweet"]) {
  position: relative;
  padding: 3rem 3rem;
  font-size: 0.9em;
  background-color: #e3e3e3;
  border-radius: 0.6rem;
}

.single__post__content q::before {
  content: '"';
}

.single__post__content q::after {
  content: '"';
}

.single__post__content cite {
  font-style: italic;
}

.single__post__content .size-thumbnail,
.single__post__content .size-medium {
  margin-right: 10px;
}

.single__post__content img.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5rem;
}

.single__post__content img.alignright {
  display: inline;
  float: right;
  margin-left: 1.5rem;
}

.single__post__content img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5rem;
}

@media screen and (min-width: 769px) {
  .single__post__meta {
    display: -ms-flexbox;
    display: flex;
  }
}

.single__post__date {
  padding-right: 1rem;
}

.single__post__category {
  line-height: 1.7;
}

@media screen and (max-width: 768px) {
  .single__post__category {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .single__post__category {
    padding-left: 1rem;
    border-left: solid 0.1rem #000000;
  }
}

.single__post__category__list {
  list-style: none;
}

.single__post__category__item {
  display: inline-block;
}

.single__post__category__item:not(:first-child) {
  margin-left: 1rem;
}

@media screen and (max-width: 768px) {
  .single__post__tags {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .single__post__tags {
    padding-left: 1rem;
    margin-left: 1rem;
    border-left: solid 0.1rem #000000;
  }
}

.single cite, .single figcaption, .single .wp-caption-text, .single .post-meta, .single .entry-content .wp-block-archives li, .single .entry-content .wp-block-categories li, .single .entry-content .wp-block-latest-posts li, .single .wp-block-latest-comments__comment-date, .single .wp-block-latest-posts__post-date, .single .wp-block-embed figcaption, .single .wp-block-image figcaption, .single .wp-block-pullquote cite, .single .comment-metadata, .single .comment-respond .comment-notes, .single .comment-respond .logged-in-as, .single .pagination .dots, .single .entry-content hr:not(.has-background), .single hr.styled-separator, .single :root .has-secondary-color {
  color: #898b8b;
}

.single .wp-block-table.is-style-stripes table {
  border-collapse: inherit;
}

.single .aligncenter {
  margin-left: auto;
  margin-right: auto;
}

.single .alignleft {
  float: left;
  margin: 0.3rem 2rem 2rem 2rem;
}

.single .alignright {
  float: right;
}

.single .alignleft, .single .alignright {
  max-width: 50%;
}

.single hr {
  background-color: #d1d1d1;
  border: 0;
  height: 1px;
  margin: 0 0 1.75em;
}

.single .wp-block-separator {
  margin-left: auto;
  margin-right: auto;
  max-width: 30%;
}

.single .wp-block-separator.is-style-wide {
  max-width: 100%;
}

.single .wp-block-button__link {
  text-decoration: none;
}

.single .blocks-gallery-grid ul,
.single .wp-block-gallery ul {
  list-style: none;
  margin-left: 0;
}

.wp-block-algori-pdf-viewer-block-algori-pdf-viewer-iframe {
  width: 100% !important;
}

.sumai__role__heading {
  text-align: center;
}

.sumai__role__image {
  text-align: center;
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .sumai__role__image {
    margin-top: 3rem;
  }
}

.sumai__role__intro {
  text-align: center;
  padding-top: 2rem;
}

.sumai__role__contents {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (min-width: 769px) {
  .sumai__role__contents {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .sumai__role__contents {
    margin-top: 6rem;
  }
}

.sumai__role__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
}

@media screen and (min-width: 769px) {
  .sumai__role__item {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .sumai__role__item {
    margin-top: 2rem;
  }
}

.sumai__role__icon {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .sumai__role__icon {
    -ms-flex: 1;
        flex: 1;
    margin-right: 4%;
  }
}

@media screen and (min-width: 769px) {
  .sumai__role__icon {
    width: 15rem;
  }
}

@media screen and (max-width: 768px) {
  .sumai__role__textHolder {
    -ms-flex: 4;
        flex: 4;
  }
}

@media screen and (min-width: 769px) {
  .sumai__role__textHolder {
    width: 39rem;
  }
}

.sumai__role__text {
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .sumai__role__text {
    margin-top: 2rem;
    line-height: 2;
  }
}

.sumai__about {
  margin-top: 2.5rem;
}

@media screen and (min-width: 769px) {
  .sumai__about {
    margin-top: 5rem;
  }
}

.sumai__about__wrapper {
  background-color: #f7f7f7;
  text-align: center;
  padding: 2.5rem;
  margin-bottom: 5rem;
}

@media screen and (min-width: 769px) {
  .sumai__about__wrapper {
    padding: 5rem;
    margin-bottom: 10rem;
  }
}

.sumai__about__intro {
  margin-top: 1.5rem;
}

@media screen and (min-width: 769px) {
  .sumai__about__intro {
    font-size: 1.6rem;
    margin-top: 3rem;
  }
}

.sumai__about__contents {
  list-style: none;
  margin-top: 3rem;
}

@media screen and (min-width: 769px) {
  .sumai__about__contents {
    margin-top: 8rem;
  }
}

.sumai__about__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (min-width: 769px) {
  .sumai__about__item {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .sumai__about__item-02 {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
}

@media screen and (max-width: 768px) {
  .sumai__about__title {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .sumai__about__title {
    line-height: 2;
  }
}

@media screen and (min-width: 769px) {
  .sumai__about__textHolder {
    width: 54rem;
  }
}

.sumai__about__text {
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .sumai__about__text {
    line-height: 2;
    margin-top: 2rem;
  }
}

.sumai__service {
  margin-top: 4rem;
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .sumai__service {
    padding-bottom: 15rem;
    margin-top: 10rem;
  }
}

.sumai__service__heading {
  text-align: center;
  padding-bottom: 3rem;
}

@media screen and (min-width: 769px) {
  .sumai__service__heading {
    padding-bottom: 7rem;
  }
}

.sumai__service__contents {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  .sumai__service__contents {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .sumai__service__contents {
    padding-bottom: 4rem;
  }
}

@media screen and (max-width: 768px) {
  .sumai__service__logo {
    width: 40vw;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 768px) {
  .sumai__service__item-02 {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .sumai__service__item-02 {
    width: 45rem;
  }
}

.sumai__service__list {
  list-style: disc inside;
  font-weight: 700;
  line-height: 2;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
}

@media screen and (min-width: 769px) {
  .sumai__service__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .sumai__service__list {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

@media screen and (min-width: 769px) {
  .sumai__service__list {
    font-size: 1.6rem;
  }
}

.sumai__service__list li {
  width: 10em;
}

.sumai__service__text {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.sumai__service__btnHolder {
  text-align: center;
}

.top__kv {
  position: relative;
  width: 100%;
  height: 48rem;
}

@media screen and (max-width: 768px) {
  .top__kv {
    height: 50vw;
  }
}

.top__kv span {
  display: block;
  width: 100%;
  height: 48rem;
}

@media screen and (max-width: 768px) {
  .top__kv span {
    height: 50vw;
  }
}

.top__kv__01 {
  background: url(../images/top/top_kv01.jpg) center top no-repeat;
  background-size: cover;
}

.top__kv__02 {
  background: url(../images/top/top_kv02.jpg) center top no-repeat;
  background-size: cover;
}

.top__kv__03 {
  background: url(../images/top/top_kv03.jpg) center top no-repeat;
  background-size: cover;
}

.top__kv__04 {
  background: url(../images/top/top_kv04.jpg) center top no-repeat;
  background-size: cover;
}

.top__heading01 {
  font-weight: 500;
  line-height: 1.5;
  font-size: 2.2rem;
}

@media screen and (min-width: 769px) {
  .top__heading01 {
    font-size: 3.2rem;
  }
}

.top__heading02 {
  padding-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .top__heading02 {
    padding-bottom: 2rem;
  }
}

.top__lead {
  line-height: 1.5;
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  .top__btn, .music__contact__btn,
  .city__contact__btn,
  .joy__contact__btn,
  .pet__contact__btn,
  .japanese__contact__btn,
  .hacouri__contact__btn, .sumai__service__btn {
    min-width: 70%;
  }
}

@media screen and (min-width: 769px) {
  .top__btn, .music__contact__btn,
  .city__contact__btn,
  .joy__contact__btn,
  .pet__contact__btn,
  .japanese__contact__btn,
  .hacouri__contact__btn, .sumai__service__btn {
    width: 33rem;
  }
}

.top__sumai {
  text-align: center;
  padding-top: 2.8rem;
  width: 100%;
  position: relative;
}

@media screen and (min-width: 769px) {
  .top__sumai__textHolder {
    padding-top: 4rem;
    width: 86.8rem;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 768px) {
  .top__sumai__textHolder {
    padding-left: 5vmin;
    padding-right: 5vmin;
  }
}

.top__sumai__intro {
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .top__sumai__intro {
    padding-top: 2rem;
    padding-bottom: 4.6rem;
  }
}

.top__sumai__text {
  padding-top: 2rem;
}

@media screen and (min-width: 769px) {
  .top__sumai__text {
    line-height: 2.28;
  }
}

.top__sumai__wrapper {
  background: url(../images/top/top_jisseki_bg.jpg) center top no-repeat;
}

@media screen and (max-width: 768px) {
  .top__sumai__wrapper {
    background: url(../images/top/top_jisseki_bg_sp.jpg) left top no-repeat;
    background-size: contain;
    padding-top: 11%;
    padding-bottom: 15%;
  }
}

@media screen and (min-width: 769px) {
  .top__sumai__wrapper {
    min-height: 42rem;
  }
}

.top__sumai__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  list-style: none;
}

@media screen and (min-width: 769px) {
  .top__sumai__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .top__sumai__list {
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media screen and (min-width: 769px) {
  .top__sumai__list {
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding-top: 7rem;
    width: 86.8rem;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 768px) {
  .top__sumai__item {
    width: 46%;
    margin-top: 2.6rem;
  }
  .top__sumai__item img {
    width: 38vw;
  }
}

.top__sumai__btnHolder {
  margin-top: 1.4rem;
}

@media screen and (min-width: 769px) {
  .top__sumai__btnHolder {
    position: absolute;
    bottom: 4rem;
    left: 0;
    right: 0;
    margin: auto;
  }
}

@media screen and (max-width: 768px) {
  .top__sumai__btn {
    width: 90%;
  }
}

.top__selection {
  text-align: center;
  width: 100%;
  padding-top: 7rem;
}

@media screen and (max-width: 768px) {
  .top__selection {
    padding-left: 5vmin;
    padding-right: 5vmin;
  }
}

@media screen and (min-width: 769px) {
  .top__selection {
    padding-top: 10rem;
    width: 93rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.top__selection__intro {
  padding-top: 2rem;
}

@media screen and (min-width: 769px) {
  .top__selection__intro {
    padding-top: 4rem;
  }
}

.top__selection__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  padding-top: 2.5rem;
  padding-bottom: 0.5rem;
}

@media screen and (min-width: 769px) {
  .top__selection__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .top__selection__list {
    padding-top: 5rem;
    padding-bottom: 1rem;
  }
}

.top__selection__item {
  padding-bottom: 2rem;
}

@media screen and (max-width: 768px) {
  .top__selection__item {
    width: 48%;
  }
}

@media screen and (min-width: 769px) {
  .top__selection__item {
    padding-bottom: 4rem;
  }
}

.top__selection__text {
  text-align: left;
}

@media screen and (max-width: 768px) {
  .top__selection__text {
    font-size: 1.2rem;
  }
}

@media screen and (min-width: 769px) {
  .top__selection__text {
    width: 215px;
    margin-left: auto;
    margin-right: auto;
  }
}

.top__selection__btnHolder {
  margin-top: 2rem;
}

@media screen and (min-width: 769px) {
  .top__selection__btnHolder {
    margin-top: 6rem;
  }
}

.top__works {
  text-align: center;
  padding-top: 7rem;
}

@media screen and (min-width: 769px) {
  .top__works {
    padding-top: 10rem;
  }
}

.top__works__intro {
  padding-top: 2rem;
}

@media screen and (min-width: 769px) {
  .top__works__intro {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.top__works__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .top__works__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .top__works__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.top__works__item {
  list-style: none;
  text-align: left;
  min-height: 1%;
}

@media screen and (max-width: 768px) {
  .top__works__item {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .top__works__item {
    max-width: 31.6rem;
    padding-bottom: 5rem;
  }
}

.top__works__link {
  color: #000000;
}

.top__works__link:hover img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

.top__works__imgHolder {
  overflow: hidden;
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .top__works__thumbnail {
    width: 100%;
  }
}

.top__works__tag {
  font-weight: 700;
  font-size: 1.2rem;
  display: inline-block;
  background-color: #d7be19;
  padding: 0.5em;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.top__works__tag-name {
  margin-right: 1rem;
}

.top__works__unit {
  line-height: 1.5;
  margin-top: 0.5rem;
}

.top__works__heading {
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.top__diary {
  text-align: center;
  padding-top: 7rem;
}

@media screen and (min-width: 769px) {
  .top__diary {
    padding-top: 10rem;
  }
}

.top__diary__wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  text-align: left;
}

@media screen and (min-width: 769px) {
  .top__diary__wrapper {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (max-width: 768px) {
  .top__diary__imgHolder {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .top__diary__textHolder {
    width: 56rem;
  }
}

.top__diary__text {
  margin-bottom: 1rem;
}

.top__diary__date {
  margin-right: 1rem;
}

.top__diary__link {
  color: #d7be19;
}

.top__diary__list {
  list-style-type: none;
}

.top__diary__item {
  display: inline-block;
  margin-right: 1rem;
  margin-top: 1rem;
  line-height: 1.7;
}

.top__diary__icon-tag {
  color: #d7be19;
}

.top__freeplan {
  text-align: center;
  padding-top: 7rem;
}

@media screen and (min-width: 769px) {
  .top__freeplan {
    padding-top: 10rem;
  }
}

.top__freeplan__intro {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  .top__freeplan__intro {
    padding-top: 3.4rem;
    padding-bottom: 3.4rem;
  }
}

.top__freeplan__imgHolder {
  padding-top: 3rem;
}

.top__simulation {
  text-align: center;
  background: url(../images/top/top_simulation_bg.jpg) center top no-repeat;
  margin-top: 7rem;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media screen and (max-width: 768px) {
  .top__simulation {
    background: url(../images/top/top_simulation_bg_sp.jpg) center center no-repeat;
    background-size: contain;
    margin-top: 5rem;
  }
}

@media screen and (min-width: 769px) {
  .top__simulation {
    margin-top: 10rem;
    padding-top: 7rem;
    padding-bottom: 5rem;
    min-height: 54rem;
  }
}

.top__simulation__intro {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  .top__simulation__intro {
    padding-top: 4rem;
    padding-bottom: 6rem;
  }
}

@media screen and (max-width: 768px) {
  .top__simulation__intro {
    text-shadow: 1px 0 4px rgba(255, 255, 255, 0.8), 0 1px 4px rgba(255, 255, 255, 0.4), -1px 0 4px rgba(255, 255, 255, 0.8), 0 -1px 4px rgba(255, 255, 255, 0.8);
  }
}

.top__sns__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  list-style: none;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

@media screen and (min-width: 769px) {
  .top__sns__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .top__sns__list {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}

@media screen and (min-width: 769px) {
  .top__sns__item {
    width: 50rem;
  }
}

.top__sns__title {
  position: relative;
  font-weight: 700;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-bottom: 2px dotted #000000;
  padding: 1.2rem 0.3rem;
}

@media screen and (min-width: 769px) {
  .top__sns__title {
    font-size: 1.6rem;
  }
}

.top__sns__title:before {
  content: "";
  width: 0.9rem;
  height: 0.9rem;
  background-color: #000000;
  display: inline-block;
  margin-right: 0.8rem;
}

.top__sns__title-fb:after, .top__sns__title-insta:after {
  position: absolute;
  top: 1rem;
  right: 1.6rem;
  display: block;
  content: "";
  width: 3rem;
  height: 3rem;
}

.top__sns__title-fb {
  margin-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .top__sns__title-fb {
    margin-bottom: 2rem;
  }
}

.top__sns__title-fb:after {
  background: url(../images/common/logo/logo_facebook.png) no-repeat;
  background-size: contain;
}

.top__sns__title-insta {
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .top__sns__title-insta {
    margin-top: 2.5rem;
  }
}

@media screen and (min-width: 769px) {
  .top__sns__title-insta {
    margin-bottom: 3rem;
  }
}

.top__sns__title-insta:after {
  background: url(../images/common/logo/logo_instagram.png) no-repeat;
  background-size: contain;
}

.top__sns__title-blog {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .top__sns__title-blog {
    margin-top: 2.5rem;
  }
}

@media screen and (min-width: 769px) {
  .top__sns__title-blog {
    margin-top: 3.8rem;
    margin-bottom: 3rem;
  }
}

.top__campaign {
  text-align: center;
  margin-top: 10rem;
}

@media screen and (max-width: 768px) {
  .top__campaign {
    margin-top: 5rem;
  }
}

#top__kv__slider {
  opacity: 0;
  transition: 0.3s;
}

.works__wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .works__wrapper {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .works__wrapper {
    margin-top: 6rem;
    margin-bottom: 7rem;
  }
}

@media screen and (max-width: 768px) {
  .works__wrapper {
    margin-top: 3rem;
    margin-bottom: 5.5rem;
  }
}

.works__link {
  display: block;
}

@media screen and (min-width: 769px) {
  .works__link {
    width: 52.8rem;
    margin-bottom: 4em;
  }
}

@media screen and (max-width: 768px) {
  .works__link {
    margin-bottom: 2rem;
  }
}

.works__link:hover {
  text-decoration: none;
  box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.3);
}

.works__box {
  list-style: none;
  padding: 1em;
}

.works__box__textarea {
  margin-top: 1em;
  border-left: thick solid;
  border-width: 0.4em;
}

.works__box__textarea__tag__list {
  font-size: 1.2rem;
  font-weight: 700;
  display: inline-block;
  background-color: #d7be19;
  padding: 0.5em;
  margin: 0em 0em 0.5em 1em;
}

.works__box__title {
  margin-left: 0.6em;
  line-height: 1.5;
  font-size: 1.6rem;
  font-weight: 700;
}

.worksDetail__wrapper {
  padding-bottom: 7.5rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__wrapper {
    padding-bottom: 15rem;
  }
}

.worksDetail__intro__heading {
  text-align: center;
  padding-bottom: 2rem;
}

@media screen and (max-width: 768px) {
  .worksDetail__intro__heading {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__intro__heading {
    padding-bottom: 3.5rem;
  }
}

.worksDetail__intro__list {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  border-bottom: 2px dotted #000000;
  padding-top: 2rem;
  padding-bottom: 2rem;
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  .worksDetail__intro__list {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__intro__list {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.worksDetail__intro__title {
  font-weight: 700;
  margin-right: 0.6rem;
  width: 6em;
}

@media screen and (max-width: 768px) {
  .worksDetail__intro__title {
    display: inline-block;
  }
}

.worksDetail__deai, .worksDetail__story, .worksDetail__hitokoto, .worksDetail__point, .worksDetail__form {
  margin-top: 3rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__deai, .worksDetail__story, .worksDetail__hitokoto, .worksDetail__point, .worksDetail__form {
    margin-top: 6rem;
  }
}

.worksDetail__deai__heading, .worksDetail__story__heading, .worksDetail__point__heading {
  position: relative;
  margin-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__deai__heading, .worksDetail__story__heading, .worksDetail__point__heading {
    padding-left: 9rem;
    margin-bottom: 4rem;
  }
}

.worksDetail__deai__heading:before, .worksDetail__story__heading:before, .worksDetail__point__heading:before {
  content: "";
  background: url(../images/common/icon/icon_house_classliving.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 5rem;
  height: 4rem;
  position: relative;
  top: 1rem;
}

@media screen and (max-width: 768px) {
  .worksDetail__deai__heading:before, .worksDetail__story__heading:before, .worksDetail__point__heading:before {
    margin-right: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__deai__heading:before, .worksDetail__story__heading:before, .worksDetail__point__heading:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 7.2rem;
    height: 5.2rem;
  }
}

.worksDetail__deai__contents, .worksDetail__story__contents {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .worksDetail__deai__contents, .worksDetail__story__contents {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__deai__item, .worksDetail__story__item {
    width: 57rem;
  }
}

.worksDetail__deai__item p, .worksDetail__story__item p {
  margin-top: 1.2rem;
}

@media screen and (max-width: 768px) {
  .worksDetail__deai__image, .worksDetail__story__image, .worksDetail__point__image {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__story__contents {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
}

.worksDetail__to {
  margin-top: 3rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__to {
    margin-top: 6rem;
  }
}

.worksDetail__to__heading, .worksDetail__hitokoto__heading, .worksDetail__form__heading {
  border-bottom: 2px dotted #000000;
  padding-bottom: 1.2rem;
}

.worksDetail__to__textHolder p {
  margin-top: 1.2rem;
}

.worksDetail__hitokoto__textHolder p {
  margin-top: 1.2rem;
}

.worksDetail__hitokoto__title {
  margin-top: 1.2rem;
  line-height: 1.3;
}

.worksDetail__point {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .worksDetail__point {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media screen and (min-width: 769px) {
  .worksDetail__point__heading:before {
    top: -1.5rem;
  }
}

.worksDetail__point__list {
  list-style: none;
}

.worksDetail__point__item {
  line-height: 1.3;
  margin-top: 1.2rem;
  text-indent: -2.6rem;
  margin-left: 2.6rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__point__item {
    line-height: 1.7;
  }
}

.worksDetail__point__item:before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-color: #d7be19;
  border-radius: 50%;
  margin-right: 1.6rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__point__image {
    width: 660px;
  }
}

.worksDetail__point__image2 {
  padding-top: 0.6rem;
}

@media screen and (min-width: 769px) {
  .worksDetail__point__image2 {
    padding-top: 1rem;
  }
}

.worksDetail__form__text {
  margin-top: 1.2rem;
}

.worksDetail__form__table {
  margin-top: 1.2rem;
}

.bannerspace {
  position: fixed;
  z-index: 6;
}

.bannerspace p {
  line-height: 1;
}

@media screen and (min-width: 769px) {
  .bannerspace {
    bottom: 0.5rem;
    right: 0;
  }
}

@media screen and (max-width: 768px) {
  .bannerspace {
    bottom: -0.1rem;
    left: 0;
  }
}

.breadcrumb__list {
  color: #3d3e3e;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 5vmin;
  padding-right: 5vmin;
  font-size: 1.2rem;
}

@media screen and (min-width: 769px) {
  .breadcrumb__list {
    padding: 4rem 2rem;
  }
}

.breadcrumb__list span a {
  color: #d7be19;
}

.breadcrumb__list span:first-child {
  margin-right: 1.2rem;
}

.breadcrumb__list span:not(:first-child) {
  margin-left: 1.2rem;
  margin-right: 1.2rem;
}

.breadcrumb__item {
  display: inline-block;
}

.breadcrumb__item:not(:last-child):after {
  content: ">";
  padding: 0 1.2rem;
}

.breadcrumb__item a {
  color: #d7be19;
}

.btn {
  display: inline-block;
  transition-duration: 0.4s;
}

.btn:hover {
  text-decoration: none;
}

.btn01 {
  text-align: center;
  background-color: #fff;
  border: 5px solid #c9c9c9;
  margin-left: auto;
  margin-right: auto;
  padding: 1.1em;
  line-height: 1.3;
  font-weight: 700;
}

@media screen and (min-width: 769px) {
  .btn01 {
    font-size: 1.6rem;
  }
}

.btn01:hover {
  background-color: #fbf7db;
}

.heading01 {
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading01 {
    font-size: 2.4rem;
  }
}

.heading01-b {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading01-b {
    font-size: 2.4rem;
  }
}

.heading02 {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading02 {
    font-size: 1.8rem;
  }
}

.heading02-b {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading02-b {
    font-size: 1.8rem;
  }
}

.heading03 {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
}

.heading03-b {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
}

.heading04 {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading04 {
    font-size: 2.0rem;
  }
}

.heading04-b {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .heading04-b {
    font-size: 2.0rem;
  }
}

#page_top {
  display: none;
  width: 5rem;
  height: 5rem;
  position: fixed;
  background: #d7be19;
  border-radius: 50%;
  box-shadow: 1px 1px 6px rgba(200, 200, 200, 0.6);
}

@media screen and (min-width: 769px) {
  #page_top {
    right: 5rem;
    bottom: 5rem;
  }
}

@media screen and (max-width: 768px) {
  #page_top {
    right: 1.5rem;
    bottom: 18vw;
  }
}

#page_top a {
  position: relative;
  display: block;
  text-decoration: none;
  width: 5rem;
  height: 5rem;
}

#page_top a:before {
  font-family: "fontello";
  content: "\f106";
  font-size: 2.5rem;
  color: #fff;
  position: absolute;
  width: 2.5rem;
  height: 2.5rem;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

.post-navigation {
  padding: 1.5rem 0;
}

.post-navigation__links {
  border-top: 1px solid #000000;
}

.post-navigation__links:before, .post-navigation__links:after {
  content: "";
  display: table;
}

.post-navigation__links:after {
  clear: both;
}

.post-navigation__item {
  padding: 1rem 0.5rem;
}

@media screen and (min-width: 769px) {
  .post-navigation__item {
    width: 50%;
    padding: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .post-navigation__item--prev {
    float: left;
  }
}

@media screen and (min-width: 769px) {
  .post-navigation__item--next {
    float: right;
    text-align: right;
  }
}

.post-navigation__link {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
}

.post-navigation__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.post-navigation__prev, .post-navigation__next {
  padding: 1rem 0;
}

.post-navigation__prev__link, .post-navigation__next__link {
  color: #000000;
}

.post-navigation__prev__link:hover, .post-navigation__next__link:hover {
  text-decoration: none;
  color: #0d0d0d;
}

.post-navigation__prev {
  margin-right: 2.5rem;
}

.post-navigation__prev__link::before {
  display: inline-block;
  margin-right: 1rem;
  content: "\03c\03c";
}

.post-navigation__next {
  margin-left: 2.5rem;
}

.post-navigation__next__link::after {
  display: inline-block;
  margin-left: 1rem;
  content: "\03e\03e";
}

@media screen and (max-width: 768px) {
  .post-navigation__num {
    display: none;
  }
}

.post-navigation__num:not(:first-child) {
  margin-left: 0.8rem;
}

.post-navigation__num__link {
  display: block;
  padding: 1rem;
  color: #000000;
  border: solid 0.1rem #000000;
}

.post-navigation__num__link:hover {
  text-decoration: none;
  color: #fff;
  background-color: #000000;
}

.post-navigation__num__current {
  color: #fff;
  background-color: #000000;
}

.post-navigation__dot {
  color: #000000;
}

@media screen and (max-width: 768px) {
  .post-navigation__dot {
    display: none;
  }
}

.search-form input[type="search"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  border: 1px solid #c9c9c9;
  padding: 0.6rem 1rem;
  width: 22.6rem;
  min-height: 4rem;
  font-family: inherit;
}

.search-form input[type="search"]:focus {
  border: 1px solid #000000;
  box-shadow: none;
  outline: none;
}

.search-form input[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  border: none;
  background-color: #c9c9c9;
  padding: .5rem 2rem;
  font-family: inherit;
  width: 9rem;
  min-height: 4rem;
  cursor: pointer;
}

.widgettitle {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.5;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #d7be19;
  margin-top: 3rem;
  margin-bottom: 1rem;
}

@media screen and (min-width: 769px) {
  .widgettitle {
    font-size: 2rem;
    margin-top: 5rem;
  }
}

.widget_categories li, .widget_archive li {
  list-style: none;
  line-height: 1.3;
  padding-bottom: 1rem;
  padding-left: 1.5em;
  position: relative;
}

.widget_categories li:before, .widget_archive li:before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: ">>";
  color: #d7be19;
}

@font-face {
  font-family: 'fontello';
  src: url("../font/fontello.eot?24764955");
  src: url("../font/fontello.eot?24764955#iefix") format("embedded-opentype"), url("../font/fontello.woff2?24764955") format("woff2"), url("../font/fontello.woff?24764955") format("woff"), url("../font/fontello.ttf?24764955") format("truetype"), url("../font/fontello.svg?24764955#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
 @font-face {
   font-family: 'fontello';
   src: url('../font/fontello.svg?24764955#fontello') format('svg');
 }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-phone-1:before {
  content: '\e800';
}

/* '' */
.icon-mail:before {
  content: '\e801';
}

/* '' */
.icon-right-dir:before {
  content: '\e802';
}

/* '' */
.icon-tag:before {
  content: '\e803';
}

/* '' */
.icon-doc-text:before {
  content: '\f0f6';
}

/* '' */
.icon-angle-left:before {
  content: '\f104';
}

/* '' */
.icon-angle-right:before {
  content: '\f105';
}

/* '' */
.icon-angle-up:before {
  content: '\f106';
}

/* '' */
.icon-angle-down:before {
  content: '\f107';
}

/* '' */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

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

.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);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

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

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

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

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

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

[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;
}

.slick-initialized {
  opacity: 1 !important;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../images/slick/ajax-loader.gif") center center no-repeat;
}

/* Icons */
/*
@if $slick-font-family == "slick" {
    @font-face {
        font-family: "slick";
        src: slick-font-url("slick.eot");
        src: slick-font-url("slick.eot?#iefix") format("embedded-opentype"), slick-font-url("slick.woff") format("woff"), slick-font-url("slick.ttf") format("truetype"), slick-font-url("slick.svg#slick") format("svg");
        font-weight: normal;
        font-style: normal;
    }
}
*/
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 4rem;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}
