@charset "UTF-8";
/*@import "reset";*/
/* color */
.maincolor {
  color: #0EB4EC;
}

.subcolor {
  color: #F3983D;
}

.bg_gray {
  background-color: #F5F6F7;
}

/* color 最後消す */
/* font */
/* mixin */
/* animation */
@keyframes fuwa {
  0% {
    transform: translate(0, 0) rotate(-5deg);
  }
  50% {
    transform: translate(0, -5px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(5deg);
  }
}
@keyframes fly {
  0% {
    bottom: 15px;
    opacity: 1;
  }
  100% {
    bottom: 100%;
    opacity: 0;
  }
}
@keyframes anim-scale {
  0% {
    display: flex;
    opacity: 0;
    transform: scale(0.4, 0.4);
  }
  40% {
    transform: scale(1.2, 1.2);
  }
  60% {
    transform: scale(1, 1);
  }
  80% {
    transform: scale(1.1, 1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1);
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale(0);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes wave_bg {
  0% {
    background-position: top 0 left 0;
  }
  to {
    background-position: top 0 left 2000px;
  }
}
body {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  color: #222222;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: auto;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo UI", "メイリオ", Meiryo, sans-serif;
  font-size: 1.1rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  body {
    font-size: 1rem;
  }
}

/*_::-ms-backdrop, _:-ms-lang(x), body {
	font-family: "メイリオ", Meiryo, sans-serif;
}*/
body * {
  font-family: "M PLUS Rounded 1c";
}

.bold {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}

b,
strong {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}

* {
  box-sizing: border-box;
}

span.br {
  display: none;
  speak: none;
}

span.brpc {
  display: block;
  speak: none;
}
@media screen and (max-width: 639px) {
  span.brpc {
    display: none;
  }
}

span.emp {
  font-style: normal;
}
span.emp::before {
  content: "“";
  speak: none;
}
span.emp::after {
  content: "”";
  speak: none;
}

@supports ((-webkit-text-emphasis: dot) or (text-emphasis: dot)) or (-webkit-text-emphasis: dot) {
  span.emp {
    -webkit-text-emphasis: filled dot #222222;
    text-emphasis: filled dot #222222;
  }
  span.emp::before {
    content: "";
  }
  span.emp::after {
    content: "";
  }
}
a:link,
a:visited {
  color: #222222;
  text-decoration: none;
}

a:hover,
a:active {
  color: #222222;
  text-decoration: none;
}

a:focus {
  outline: none;
}

/* LOADING */
#loader-bg {
  background: #ffffff;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

#loader {
  width: 350px;
  height: 52px;
  left: 50%;
  margin-left: -175px;
  margin-top: -26px;
  position: fixed;
  top: 50%;
}

#loader p {
  color: #454545;
  font-size: 10px;
  line-height: 1.4;
  text-align: center;
}

#loader p img {
  display: inline-block;
}

img {
  width: 100%;
  height: auto;
}

.spNone {
  display: block;
}

.pcNone {
  display: none;
}

@media screen and (max-width: 639px) {
  body {
    min-width: 320px;
  }
  span.br {
    display: block;
    speak: none;
  }
  .spNone {
    display: none;
  }
  .pcNone {
    display: block;
  }
  #loader {
    width: 60%;
    height: auto;
    left: 50%;
    margin-left: -30%;
    top: 50%;
    position: fixed;
  }
}
/* text */
.text_basic {
  display: block;
  margin-top: 30px;
  font-size: 10px;
  font-size: 1rem;
  line-height: 2.2;
  font-feature-settings: "palt";
}

.text_large {
  display: block;
  margin-top: 30px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: 800;
  font-feature-settings: "palt";
}
@media screen and (max-width: 639px) {
  .text_large {
    margin-top: 20px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.8;
  }
}

.text_caution {
  display: block;
  margin-top: 30px;
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 2;
  font-feature-settings: "palt";
}

@media screen and (max-width: 639px) {
  .text_basic {
    display: block;
    margin-top: 30px;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 2;
    font-feature-settings: "palt";
  }
  .text_caution {
    display: block;
    margin-top: 30px;
    font-size: 7px;
    font-size: 0.7rem;
    line-height: 2;
    font-feature-settings: "palt";
  }
}
/* common area */
.header {
  width: 100%;
  top: 0;
  left: 0;
  background-image: url(../images/common/hd-bg.png);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 5;
  position: relative;
}
.header .contents {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  padding: 60px 0 70px;
}
.header .contents_upper {
  padding-top: 120px;
}
.header h1 {
  width: 220px;
}
.header #nav_upper {
  list-style: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
}
.header #nav_upper li.header-text {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  .header #nav_upper li.header-text {
    padding: 0 15px;
  }
}
.header #nav_upper li.tel {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  .header #nav_upper li.tel {
    padding: 0 15px;
    margin-bottom: 20px;
  }
}
.header #header_nav {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin: 0;
  list-style: none;
}
.header #header_nav li {
  position: relative;
}
.header #header_nav li a {
  display: block;
  padding: 40px 0 0 0;
  transition: 0.2s ease;
  max-width: 125px;
}
.header #header_nav li a span {
  position: absolute;
  bottom: 12px;
  right: 0;
  left: 0;
  margin: auto;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 6.5px;
  font-size: 0.65rem;
  line-height: 1;
}
.header #header_nav li a:hover {
  transform: translateY(-5px);
}
.header #header_nav li.contact {
  border-left: none;
}
.header #header_nav li.contact a {
  width: 200px;
  max-width: unset;
  padding: 0 0 0 10px;
}
.header #header_nav li.contact a:hover {
  transform: translateY(-5px);
}

@media screen and (max-width: 639px) {
  .header {
    position: relative;
  }
  .header h1 {
    width: 70%;
  }
  .header #nav_upper .header-text {
    display: none;
  }
  .header #header_nav {
    display: none;
  }
}
.page_header {
  margin: 0;
  position: relative;
  top: -50px;
  left: 0;
  right: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 340/109;
  z-index: 0;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-bottom: -50px;
}
@media screen and (max-width: 639px) {
  .page_header {
    height: 320px;
    width: 100%;
    overflow: hidden;
    top: -30px;
  }
  .page_header img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.page_header.cleaning {
  background-image: url(../images/cleaning/cleaning-header.webp);
}
.page_header.reform {
  background-image: url(../images/reform/reform-header.webp);
}
.page_header.repair {
  background-image: url(../images/repair/repair-header.webp);
}
.page_header.works {
  background-image: url(../images/works/works-header.webp);
}
.page_header.company {
  background-image: url(../images/company/company-header.webp);
}
.page_header.contact {
  background-image: url(../images/contact/contact-header.webp);
}
@media screen and (max-width: 639px) {
  .page_header.contact {
    background-image: url(../images/contact/contact-header_sp.webp);
  }
}
.page_header a {
  position: absolute;
  right: 100px;
  bottom: 60px;
  transition: all 0.3s;
  z-index: 9999;
  width: 220px;
}
.page_header a:hover {
  transform: translateY(-5px);
}
@media screen and (max-width: 639px) {
  .page_header a {
    display: none;
  }
}

.contents {
  width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  .contents {
    width: 100%;
    padding: 0 15px;
  }
}

/* .breadcrumb */
.breadcrumb {
  display: block;
  margin: 50px 0 30px 0;
  *zoom: 1;
}
.breadcrumb:after {
  content: "";
  display: table;
  clear: both;
}
.breadcrumb ul {
  width: 100%;
  list-style: none;
  overflow: hidden;
}
.breadcrumb ul li {
  float: left;
  padding: 0 10px;
  font-size: 7px;
  font-size: 0.7rem;
  line-height: 1.4285714286;
}
.breadcrumb ul li a {
  display: block;
  color: #aaaaaa;
  position: relative;
}
.breadcrumb ul li a:hover {
  text-decoration: underline;
}
.breadcrumb ul li a:after {
  position: absolute;
  top: 0;
  right: -12px;
  content: "\f105";
  font-family: "fontawesome";
  color: #aaaaaa;
}
.breadcrumb ul li:first-child {
  padding-left: 0;
}

.pageNav {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin: 40px 0 0 0;
  padding: 0;
  list-style: none;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 500;
}
.pageNav a {
  display: block;
  margin: 0 10px;
  letter-spacing: 0.05em;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  color: #B5B5B6;
  transition: 0.3s ease-in-out;
}
.pageNav .pageNav__item {
  width: 40px;
  height: 40px;
  margin: 0 5px;
  text-align: center;
  letter-spacing: normal;
  font-family: "Zen Maru Gothic";
  font-weight: 700;
  color: #0EB4EC;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 0.6666666667;
  line-height: 40px;
}
.pageNav .pageNav__item.current {
  color: #FFF102;
  background-color: #0EB4EC;
  border-radius: 30px;
}
.pageNav a:hover {
  color: #F3983D;
}
.pageNav .pageNav__first::before,
.pageNav .pageNav__prev::before,
.pageNav .pageNav__next::after,
.pageNav .pageNav__last::after {
  font-family: "Zen Maru Gothic";
  color: #0EB4EC;
  font-weight: 500;
  font-size: 1.4rem;
}
.pageNav .pageNav__prev::before {
  content: "<";
  margin-right: 5px;
}
.pageNav .pageNav__first::before {
  content: "<<";
  margin-right: 5px;
}
.pageNav .pageNav__next::after {
  content: ">";
  margin-left: 5px;
}
.pageNav .pageNav__last::after {
  content: ">>";
  margin-left: 5px;
}

@media screen and (max-width: 639px) {
  .pageNav {
    margin: 20px 0 0 0;
    font-family: "Barlow Condensed", sans-serif;
  }
  .pageNav a {
    display: block;
    width: calc(30% - 10px) !important;
    margin: 0 5px;
    letter-spacing: 0.05em;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 2.6666666667;
    text-align: center !important;
  }
  .pageNav .pageNav__item:not(:first-child) {
    display: none;
  }
  .pageNav .pageNav__item.current {
    display: none;
  }
  .pageNav a:hover {
    color: #F3983D;
  }
}
/* title */
#page_title {
  display: block;
  margin: 78px 0 0 0;
  padding-top: 20px;
  text-align: center;
}
#page_title .wave_gray {
  padding: 70px 0 20px 0;
  background-color: #F3983D;
}

@media screen and (max-width: 639px) {
  #page_title {
    display: block;
    margin: 0;
    padding-top: 15px;
    text-align: center;
  }
  #page_title .wave_gray {
    padding: 54px 0 10px 0;
    background-color: #F3983D;
  }
}
.main_title {
  display: block;
  margin: 0 auto;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1;
  position: relative;
}
@media screen and (max-width: 639px) {
  .main_title {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1;
  }
}

.sub_title {
  display: block;
  margin: 0 auto;
  margin-top: 20px;
  text-align: center;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.6923076923;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  position: relative;
}
@media screen and (max-width: 639px) {
  .sub_title {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.5454545455;
  }
}

.basic_title {
  display: block;
  margin: 0 auto;
  text-align: center;
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 1;
  font-feature-settings: "palt";
  position: relative;
}
.basic_title span {
  display: block;
  margin-bottom: 7px;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1;
}

.icon_repair:before,
.icon_seminar:before,
.icon_cleaning:before {
  position: absolute;
  top: -65px;
  left: 50%;
  margin-left: -40px;
  content: "";
  width: 80px;
  height: 56px;
  background: url(../images/logo_repair.png) 0 0 no-repeat;
  background-size: 80px 56px;
}

.icon_seminar:before {
  background-image: url(../images/logo_seminar.png);
}

.icon_cleaning:before {
  background-image: url(../images/logo_cleaning.png);
}

@media screen and (max-width: 639px) {
  .basic_title {
    display: block;
    margin: 0 auto;
    text-align: center;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
    font-feature-settings: "palt";
    position: relative;
  }
  .basic_title span {
    display: block;
    margin-bottom: 7px;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1;
  }
  .icon_today:before,
  .icon_event:before,
  .icon_cal:before,
  .icon_news:before,
  .icon_reserve:before,
  .icon_about:before,
  .icon_teacher:before,
  .icon_access:before,
  .icon_contact:before,
  .icon_policy:before,
  .icon_404:before {
    position: absolute;
    top: -45px;
    left: 50%;
    margin-left: -17.5px;
    content: "";
    width: 35px;
    height: 35px;
    background: url(../images/icon_today.png) 0 0 no-repeat;
    background-size: 35px 35px;
  }
}
/* btn */
.link_btn_blue_line,
.link_btn_orange_line {
  display: block;
  margin: 20px 0 0 0;
}
.link_btn_blue_line a,
.link_btn_orange_line a {
  display: block;
  padding: 15px 0;
  text-align: center;
  color: #0EB4EC;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  background-color: #ffffff;
  border-radius: 50px;
  border: 2px solid #0EB4EC;
  position: relative;
}
@media screen and (max-width: 639px) {
  .link_btn_blue_line a,
  .link_btn_orange_line a {
    font-size: 9.5px;
    font-size: 0.95rem;
    line-height: 1.4736842105;
  }
}
.link_btn_blue_line a::after,
.link_btn_orange_line a::after {
  position: absolute;
  content: "\f054";
  font-family: "fontawesome";
  top: 30%;
  right: 10px;
  transition: all cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
}
.link_btn_blue_line a:hover::after,
.link_btn_orange_line a:hover::after {
  right: 15px;
}

.link_btn_orange_line a {
  color: #F3983D;
  background-color: #ffffff;
  border: 2px solid #F3983D;
}

.link_btn_w30 {
  width: 30%;
}
@media screen and (max-width: 639px) {
  .link_btn_w30 {
    width: 100%;
  }
}

.link_btn_w50 {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .link_btn_w50 {
    width: 100%;
  }
}

.link_btn_w80 {
  width: 80%;
}
@media screen and (max-width: 639px) {
  .link_btn_w80 {
    width: 100%;
  }
}

.link_btn_blue {
  display: block;
  margin: 20px 0 0 0;
}
.link_btn_blue a {
  display: block;
  padding: 0 !important;
  text-align: center;
  color: #ffffff !important;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  background-color: #0EB4EC;
  border-radius: 44px;
  line-height: 44px;
  text-decoration: none !important;
  position: relative;
}
@media screen and (max-width: 639px) {
  .link_btn_blue a {
    padding: 10px 0 !important;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
  }
}
.link_btn_blue a::after {
  position: absolute;
  content: "\f054";
  font-family: "fontawesome";
  top: auto;
  right: 10px;
  transition: all cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
}
.link_btn_blue a:hover::after {
  right: 15px;
}

/* boxes */
.wrap3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.wrap3 .item {
  flex: 1;
}
@media screen and (max-width: 639px) {
  .wrap3 .item {
    width: 100%;
  }
}

.wrap5 {
  display: flex;
  flex-wrap: wrap;
  margin-top: 25px;
}
.wrap5 .item {
  width: 18%;
}
.wrap5 .item:not(:nth-child(5n+5)) {
  margin-right: 2.5%;
}

@media screen and (max-width: 639px) {
  .wrap5 {
    justify-content: center;
  }
  .wrap5 .item {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 2%;
  }
  .wrap5 .item:not(:nth-child(5n+5)) {
    margin-right: 2%;
  }
  .wrap5 .item:nth-child(3n) {
    margin-right: 0;
  }
}
/* form */
input[type=text],
textarea,
input[type=email],
input[type=tel],
input[type=number] {
  width: 100%;
  margin: 0;
  padding: 8px;
  outline: 0;
  border: 1px solid #222222;
}
@media screen and (max-width: 639px) {
  input[type=text],
  textarea,
  input[type=email],
  input[type=tel],
  input[type=number] {
    width: 100%;
  }
}

textarea {
  width: 100%;
}

::-moz-placeholder {
  color: #aaa;
}

::placeholder {
  color: #aaa;
}

/* 旧Edge対応 */
::-ms-input-placeholder {
  color: #aaa;
}

/* IE対応 */
:-ms-input-placeholder {
  color: #aaa;
}

input[type=text]:focus,
textarea:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus {
  background-color: #e6f7fd;
  border: 1px solid #e6f7fd;
}

input[type=radio],
input[type=checkbox] {
  margin-right: 5px;
}

@media screen and (max-width: 639px) {
  input[type=submit] {
    -webkit-appearance: none;
  }
}
label {
  /*display: inline-block;
  width: 150px !important;
     margin-right: 10px;
     padding: 8px 15px;
     background-color: #E4E4E4;
     @include radius(4); 
     font-weight: 300;*/
}

.mw_wp_form .inactive {
  opacity: 0.3;
  pointer-events: none;
}

#mw_wp_form_confirm .selectform::after {
  display: none;
}

.form_style {
  display: block;
  width: 100%;
  margin-top: 60px;
}
@media screen and (max-width: 639px) {
  .form_style {
    margin-top: 40px;
  }
}
.form_style .selectform {
  width: 50%;
}
.form_style table {
  width: 100% !important;
  margin: 0 0 30px 0;
  border-collapse: collapse;
  border-top: 1px solid #b6b6b6;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.5;
}
@media screen and (max-width: 639px) {
  .form_style table {
    border-top: none;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
  }
}
.form_style table tr {
  border-bottom: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  .form_style table tr {
    border-bottom: none;
  }
}
.form_style table th {
  width: 28%;
  padding: 36px 0;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  vertical-align: top;
  position: relative;
}
@media screen and (max-width: 639px) {
  .form_style table th {
    display: block;
    width: 100%;
    padding: 10px 0;
    border-radius: 6px;
  }
}
.form_style table th.required span {
  position: relative;
  min-width: 160px;
  display: inline-block;
}
@media screen and (max-width: 639px) {
  .form_style table th.required span {
    min-width: 100%;
  }
}
.form_style table th.required span::after {
  position: absolute;
  top: 50%;
  right: -60px;
  transform: translateY(-50%);
  content: "必須";
  padding: 6px;
  font-size: 10px;
  font-size: 1rem;
  line-height: 0.7;
  color: #FFF102;
  background-color: #ff1800;
  border-radius: 4px;
  font-weight: 500;
}
@media screen and (max-width: 639px) {
  .form_style table th.required span::after {
    right: 0;
  }
}
.form_style table th.none_required:after {
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -1em;
  content: "任意";
  padding: 5px;
  font-size: 7px;
  font-size: 0.7rem;
  line-height: 1;
  color: #666666;
  background-color: #dddddd;
  border-radius: 4px;
}
@media screen and (max-width: 639px) {
  .form_style table th.none_required:after {
    right: 10px;
  }
}
.form_style table td {
  width: 72%;
  padding: 36px 0;
}
@media screen and (max-width: 639px) {
  .form_style table td {
    display: block;
    width: 100%;
    padding: 0 0 20px 0;
  }
}
.form_style a {
  color: #F3983D;
  text-decoration: underline;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
.form_style .caution,
.form_style .caution2 {
  margin-top: 3px;
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 1.6;
}
.form_style .caution2 {
  margin-top: 20px;
}
.form_style .caution2 span {
  color: #0EB4EC;
}
.form_style .subjectbox {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0 8px;
  width: 100%;
}
.form_style .subjectbox .mwform-checkbox-field {
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 639px) {
  .form_style .subjectbox {
    width: calc(100% - 35px);
    margin-left: 35px;
  }
}
.form_style .subjectbox__other {
  display: inline-flex;
  align-items: flex-start;
  gap: 15px;
  width: 100%;
  margin-top: 6px;
}
.form_style .subjectbox__other .mwform-checkbox-field {
  margin-top: 6px;
  white-space: nowrap;
}
.form_style .subjectbox__other textarea,
.form_style .subjectbox__other .contact_study_other {
  flex: 1 1 auto;
  min-height: 110px;
  width: 100%;
  margin-bottom: 15px;
}
@media screen and (max-width: 639px) {
  .form_style .subjectbox__other {
    flex-direction: column;
    gap: 8px;
  }
}
.form_style .check_privacy {
  display: block;
  margin: 8px 0 30px 0;
  text-align: center;
}

.form_btn {
  margin: 0 auto;
  text-align: center;
}
.form_btn br {
  display: block;
  margin-bottom: 8px;
}
.form_btn .submit,
.form_btn .return {
  width: 45%;
  height: 60px;
  margin: 0 5px;
  border: none;
  background-color: #0EB4EC;
  border-radius: 60px;
  color: #ffffff;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2;
  line-height: 60px;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 639px) {
  .form_btn .submit,
  .form_btn .return {
    width: 100%;
    height: 50px;
    margin: 0 0 10px 0;
    border-radius: 50px;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 2.6666666667;
    line-height: 50px;
  }
}
.form_btn .submit {
  width: 45%;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .form_btn .submit {
    width: 100%;
  }
}
.form_btn .submit[value=入力内容の確認] {
  background-color: transparent;
  background: url(../images/contact/contact-submit.png) no-repeat center center;
  background-size: contain;
  border: none;
  color: transparent;
}
.form_btn .return {
  width: 20%;
  height: 60px;
  margin-top: 15px;
  color: #222222;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 2.6666666667;
  line-height: 60px;
  background-color: #ddd;
  font-weight: normal;
}
@media screen and (max-width: 639px) {
  .form_btn .return {
    width: 100%;
    height: 50px;
    margin-top: 0;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 2.6666666667;
    line-height: 50px;
  }
}

.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 45%; /*比率をお好みで*/
}

.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 639px) {
  .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 85%; /*比率をお好みで*/
  }
}
/* footer area */
#page_top {
  display: none;
  position: fixed;
  width: 50px;
  bottom: 15px;
  right: 15px;
  z-index: 5;
}
#page_top a {
  display: block;
  transition: all cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
}
#page_top a:hover {
  transform: scale(1.1);
}

@media screen and (max-width: 639px) {
  #page_top {
    display: none;
    position: fixed;
    width: 40px;
    bottom: 20px;
    right: 20px;
    z-index: 5;
  }
  #page_top a {
    display: block;
    opacity: 1;
    transition: all cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
  }
  #page_top a:hover {
    transform: scale(1.1);
  }
}
#footer {
  margin: 0;
  padding-top: 60px;
  background: url(../images/common/ft-bg.png) top center no-repeat;
  background-size: cover;
  position: relative;
}
#footer::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30%;
  height: 100%;
  background: url(../images/common/ft-image.webp) bottom left no-repeat;
  background-size: contain;
  z-index: 10;
}
#footer .contents {
  max-width: 600px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 639px) {
  #footer .contents {
    margin-bottom: 60px;
  }
}
#footer .footer-logo {
  width: 420px;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  #footer .footer-logo {
    width: 100%;
  }
}
#footer .main_title {
  padding-top: 30px;
}
@media screen and (max-width: 639px) {
  #footer .main_title {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1;
    padding-top: 0;
  }
}
#footer h5 {
  display: block;
  margin: 15px 0 30px 0;
  text-align: center;
  font-size: 12.5px;
  font-size: 1.25rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  #footer h5 {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
  }
}
#footer .footer__buttons {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: flex-end;
  flex-wrap: wrap;
}
@media screen and (max-width: 639px) {
  #footer .footer__buttons {
    gap: 15px 30px;
  }
}
#footer .footer__button {
  transition: all 0.3s ease;
}
#footer .footer__button:hover {
  transform: translateY(-5px);
}
#footer .footer__button--contact {
  width: 260px;
}
@media screen and (max-width: 639px) {
  #footer .footer__button--contact {
    width: 80%;
    margin: 0 auto;
  }
}
#footer ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  gap: 30px;
  margin-top: 60px;
}
@media screen and (max-width: 639px) {
  #footer ul {
    display: none;
  }
}
#footer ul li {
  font-size: 8.2px;
  font-size: 0.82rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
#footer ul li a {
  display: block;
  text-decoration: underline;
  height: 25px;
}
#footer ul li a img {
  height: 100%;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
#footer ul li a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#footer .copyright {
  padding: 10px 0;
  background-color: #0EB4EC;
  text-align: center;
  color: #ffffff;
  display: block;
  width: 100%;
  margin-top: 60px;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 6px;
  font-size: 0.6rem;
  line-height: 1;
}
@media screen and (max-width: 639px) {
  #footer .copyright {
    margin-top: -0.7rem;
  }
}

/* 
 * ↓ 2025-12 追記 ↓
 */
.main_title--image {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  height: 32px;
}
@media screen and (max-width: 639px) {
  .main_title--image {
    height: auto !important;
    width: 100%;
  }
}
.main_title--image img {
  width: auto;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.main_title--image.h-18 {
  height: 18px;
  margin: 20px auto;
}
@media screen and (max-width: 639px) {
  .main_title--image.h-18 {
    width: auto !important;
    margin: 10px auto;
  }
}
.main_title--image.h-42 {
  height: 42px;
}
.main_title--image.h-48 {
  height: 48px;
}

.main_label--image {
  display: block;
}

.item__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px 50px;
  padding: 50px 0;
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  .item__grid {
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
    gap: 20px;
    padding: 25px 0;
  }
}
.item__grid.merit {
  padding: 25px 0;
}
@media screen and (min-width: 1080px) {
  .item__grid .item:nth-last-child(2):nth-child(4n+1) {
    grid-column: 2/3;
  }
  .item__grid .item:nth-last-child(1):nth-child(4n+2) {
    grid-column: 3/4;
  }
}

.item__flex {
  display: flex;
  justify-content: center;
  gap: 30px;
  padding: 30px 0;
}
@media screen and (max-width: 639px) {
  .item__flex {
    gap: 10px;
    padding: 20px 0;
  }
}

.dotted-line {
  width: 100%;
  height: 1px;
  background: repeating-linear-gradient(to right, #0EB4EC 0, #0EB4EC 5px, transparent 3px, transparent 8px);
}
.dotted-line--before {
  border-top: none !important;
  border-bottom: none !important;
  position: relative;
}
.dotted-line--before::before {
  content: "";
  width: 100%;
  height: 1px;
  background: repeating-linear-gradient(to right, #0EB4EC 0, #0EB4EC 5px, transparent 3px, transparent 8px);
  position: absolute;
  top: 0;
  left: 0;
}
.dotted-line--after {
  border-top: none !important;
  border-bottom: none !important;
  position: relative;
}
.dotted-line--after::after {
  content: "";
  width: 100%;
  height: 1px;
  background: repeating-linear-gradient(to right, #0EB4EC 0, #0EB4EC 5px, transparent 3px, transparent 8px);
  position: absolute;
  bottom: 0;
  left: 0;
}

.zen-maru {
  font-family: "Zen Maru Gothic" !important;
  font-weight: 700;
}

.bg_yellow {
  background-color: #FFF102;
}

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

.fw-700 {
  font-weight: 700;
}

.fw-900 {
  font-weight: 900;
}

.mb-80 {
  margin-bottom: 80px;
}
@media screen and (max-width: 639px) {
  .mb-80 {
    margin-bottom: 40px;
  }
}

.mb-25 {
  margin-bottom: 25px;
}
@media screen and (max-width: 639px) {
  .mb-25 {
    margin-bottom: 15px;
  }
}

.mb-20 {
  margin-bottom: 20px;
}
@media screen and (max-width: 639px) {
  .mb-20 {
    margin-bottom: 10px;
  }
}

.w-1000 {
  width: 1000px;
}
@media screen and (max-width: 639px) {
  .w-1000 {
    width: 100%;
    padding: 0 15px;
  }
}

#contact_wrap .contents {
  width: 1000px;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contents {
    width: 100%;
    padding: 0 15px;
  }
}

.contact_info {
  max-width: 720px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media screen and (max-width: 639px) {
  .contact_info {
    width: 100%;
    gap: 30px;
    padding: 0 15px;
  }
}

.form_style table {
  border: none;
}

.form_style table th {
  font-size: 20px;
  font-weight: 800;
}

.mwform-radio-field-text,
.mwform-checkbox-field-text {
  font-size: 20px;
  font-weight: 500;
}

.form_style .caution2 {
  font-size: 16px;
  font-weight: 500;
}

.subject_wrap.means {
  display: flex;
  gap: 36px;
}

.contact_address {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.contact_address p {
  display: flex;
  gap: 8px;
  align-items: center;
  white-space: nowrap;
  font-size: 20px;
  font-weight: 500;
}

input[type=text].contact_prefectures {
  width: 30%;
}

/* 
 * ↑ 2025-12 追記 ↑
 */
.spNav {
  display: none;
}

@media screen and (max-width: 639px) {
  .spNav {
    display: block;
  }
  .spNav .menu {
    position: fixed;
    top: 52px;
    right: 18px;
    font-size: 6px;
    font-size: 0.6rem;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    color: #0EB4EC;
    z-index: 102;
  }
  /** ここからdrawer上書き **/
  .drawer-hamburger {
    width: 30px;
    top: 4.5% !important;
    padding: 0;
  }
  .drawer--top .drawer-hamburger,
  .drawer--top.drawer-open .drawer-hamburger {
    right: 5%;
  }
  /** ここまでdrawer上書き **/
  .drawer--top .drawer-nav {
    height: 100vh !important;
    border-right: 6px solid #0EB4EC;
  }
  .drawer-nav .navlogo {
    width: 88%;
    margin: 0 auto;
  }
  .drawer-nav .navlogo img {
    width: 70%;
    margin-top: 10px;
  }
  ul.drawer-menu {
    width: 90% !important;
    margin: 0 auto;
    margin-top: 30px;
    list-style: none;
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  ul.drawer-menu li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    vertical-align: middle;
  }
  ul.drawer-menu li ul {
    margin-top: 0;
    margin-bottom: 10px;
  }
  ul.drawer-menu li ul li a {
    padding: 8px 0 8px 20px;
    font-size: 8.5px;
    font-size: 0.85rem;
    line-height: 1;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    border-top: none;
  }
  ul.drawer-menu li ul li a:before {
    content: "\f054";
    font-family: "fontawesome";
    color: #0EB4EC;
    margin-right: 5px;
  }
  ul.drawer-menu li a {
    display: block;
    width: 100%;
    padding: 8px 0;
    text-align: left;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    position: relative;
  }
  ul.drawer-menu li a span {
    margin-left: 10px;
    font-size: 6.5px;
    font-size: 0.65rem;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
  }
  .spNav_sns {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    width: 80%;
    margin: 0 auto;
    margin-top: 15px;
  }
  .spNav_sns li {
    align-items: center;
  }
  .spNav_sns li a {
    display: block;
  }
  .spNav_sns li.cleaningreq {
    width: calc(100% - 60px);
    margin: 0;
    padding: 0;
  }
  .spNav_sns li.cleaningreq a {
    height: 45px;
    border: 1px solid #222222;
    text-align: center;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
    line-height: 45px !important;
    border-radius: 45px;
  }
  .spNav_sns li.fb {
    width: 45px;
  }
  .spNav_sns li.fb a {
    height: 45px;
    background-color: #EBEEEF;
    color: #222222;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    line-height: 45px;
    text-align: center;
    border-radius: 45px;
  }
  .spNav_h3 {
    width: 100% !important;
    margin: 0;
    padding: 15px 0 20px 0;
    text-align: center;
    background-color: #222222;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .spNav_h3 img {
    width: 80%;
    margin: 0 auto;
    text-align: center;
  }
}
.works_nav_sp {
  display: none;
}

.works_nav_pc {
  display: flex;
  flex-wrap: wrap;
  margin-top: 25px;
}
@media screen and (max-width: 639px) {
  .works_nav_pc {
    display: none;
  }
}
.works_nav_pc .works_cate {
  width: 18%;
}
.works_nav_pc .works_cate:not(:nth-child(5n+5)) {
  margin-right: 2.5%;
}
.works_nav_pc .photo, .works_nav_pc .link_btn_orange_line {
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 639px) {
  .works_nav_sp {
    display: block;
    margin-top: 15px;
  }
  .works_nav_sp .works_cate {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    margin-top: 7px;
    padding: 7px;
    border: 2px solid #F3983D;
    border-radius: 8px;
    background-color: #ffffff;
  }
  .works_nav_sp .photo {
    width: 18%;
  }
  .works_nav_sp a {
    width: calc(82% - 10px);
    margin-left: 10px;
    color: #F3983D;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
  }
}
.page_editor h1 {
  display: block;
  margin-bottom: 30px;
  font-size: 18.5px;
  font-size: 1.85rem;
  line-height: 1.2972972973;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  .page_editor h1 {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
}
.page_editor h2 {
  display: block;
  margin-bottom: 30px;
  padding: 7px 0 7px 20px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3571428571;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  color: #F3983D;
  border-left: 3px solid #F3983D;
}
@media screen and (max-width: 639px) {
  .page_editor h2 {
    margin-bottom: 15px;
    padding: 7px 0 7px 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}
.page_editor h3 {
  display: block;
  margin-top: 120px;
  margin-bottom: 30px;
  padding: 12px 20px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.3333333333;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  background-color: #F5F6F7;
  border-left: 3px solid #0EB4EC;
}
@media screen and (max-width: 639px) {
  .page_editor h3 {
    margin-top: 60px;
    margin-bottom: 15px;
    padding: 9px 15px;
    font-size: 10.5px;
    font-size: 1.05rem;
    line-height: 1.5238095238;
  }
}
.page_editor h3:first-child {
  margin-top: 0;
}
.page_editor h4,
.page_editor h5,
.page_editor h6 {
  display: block;
  margin-bottom: 20px;
  padding: 12px 20px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.3636363636;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.01em;
  background-color: #0EB4EC;
  border-radius: 5px;
}
@media screen and (max-width: 639px) {
  .page_editor h4,
  .page_editor h5,
  .page_editor h6 {
    margin-bottom: 15px;
    padding: 7px 15px;
    font-size: 9.5px;
    font-size: 0.95rem;
    line-height: 1.5789473684;
  }
}
.page_editor h5 {
  background-color: #F3983D;
}
.page_editor h6 {
  color: #222222;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.4;
  background-color: #F5F6F7;
}
.page_editor p {
  display: block;
  margin-bottom: 10px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 639px) {
  .page_editor p {
    margin-bottom: 10px;
  }
}
.page_editor .caution {
  display: block;
  margin-bottom: 10px;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1.75;
  font-feature-settings: initial;
}
.page_editor a {
  color: #F3983D;
  text-decoration: underline;
  position: relative;
}
.page_editor .link_btn_blue_line, .page_editor .link_btn_orange_line {
  margin: 20px 0 0 0;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.4;
  font-feature-settings: initial;
}
.page_editor .link_btn_blue_line a, .page_editor .link_btn_orange_line a {
  color: #0EB4EC;
  text-decoration: none;
}
.page_editor .event_single_map {
  color: #222222;
  font-weight: normal;
  text-decoration: underline;
  position: relative;
}
.page_editor .event_single_map[target=_blank]:after {
  background: none;
}
.page_editor b, .page_editor strong {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
.page_editor em {
  font-style: italic;
}
.page_editor blockquote {
  display: block;
  margin-bottom: 20px;
  padding: 15px 20px;
  background-color: #ffffff;
  box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15);
  *zoom: 1;
}
.page_editor blockquote:after {
  content: "";
  display: table;
  clear: both;
}
.page_editor blockquote p {
  margin-bottom: 0;
}
.page_editor del {
  text-decoration: line-through;
}
.page_editor sup {
  font-size: 60%;
  vertical-align: super;
  margin-right: 2px;
}
.page_editor sub {
  font-size: 60%;
  vertical-align: sub;
  margin-right: 2px;
}
.page_editor code {
  background-color: #F3983D;
  border-radius: 3px;
  padding: 2px 3px;
}
.page_editor ul {
  width: 100%;
}
.page_editor ul li {
  position: relative;
  padding-left: 25px;
  margin: 0 0 10px;
  list-style: none;
}
.page_editor ul li:before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  top: 11px;
  left: 3px;
  background-color: #222222;
  border-radius: 50px;
}
.page_editor ul.time li {
  padding: 0 !important;
  margin: 0 !important;
}
.page_editor ul.time li:before {
  display: none;
}
.page_editor ol {
  width: 100%;
  counter-reset: li;
}
.page_editor ol li {
  position: relative;
  padding-left: 25px;
  margin: 0 0 10px;
  list-style: none;
}
.page_editor ol li:before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: li;
  content: counter(li) ".";
}
.page_editor .alignnone,
.page_editor .aligncenter {
  display: block;
  width: 60%;
  height: auto;
  margin: 0 auto;
}
.page_editor .aligncenter img,
.page_editor .alignnone img {
  display: block;
  width: 60%;
  height: auto;
}
.page_editor .alignright {
  display: block;
  width: 60%;
  height: auto;
  margin-left: auto;
}
.page_editor .alignright img {
  display: block;
  width: 60%;
  height: auto;
}
.page_editor .alignleft {
  display: block;
  width: 60%;
  height: auto;
  margin: 0;
}
.page_editor .alignleft img {
  display: block;
  width: 60%;
  height: auto;
}

@media screen and (max-width: 639px) {
  .page_editor {
    /*a[target="_blank"]:after{
    	position: absolute;
    	top: 0;
    	right: -25px;
    	content: "";
    	margin-left: 8px;
    	width: 15px;
    	height: 15px;
    	background: url(../images/icon_blanklink.png) 0 0 no-repeat;
    	background-size: 15px 15px;
    }

    a.remove-icon[target="_blank"] {
       border:none;
    }
    a.remove-icon[target="_blank"]::after {
    background: none;
    }*/
  }
  .page_editor .news_title {
    display: block;
    margin: 30px 0 0 0;
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4285714286;
  }
  .page_editor .event_title {
    width: 100%;
    margin: 0;
    margin-top: 0;
    padding: 10px 0 0 0;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.3846153846;
  }
  .page_editor .post_date {
    display: block;
    margin-bottom: 25px;
    text-align: right;
    font-size: 7px;
    font-size: 0.7rem;
    line-height: 3.4285714286;
  }
  .page_editor a {
    color: #F3983D;
    text-decoration: underline;
    position: relative;
  }
  .page_editor blockquote {
    margin-bottom: 15px;
    padding: 10px 15px;
  }
  .page_editor blockquote p {
    margin-bottom: 0;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
  .page_editor del {
    text-decoration: line-through;
  }
  .page_editor sup {
    font-size: 70%;
  }
  .page_editor sub {
    font-size: 70%;
  }
  .page_editor code {
    background-color: #F3983D;
    border-radius: 3px;
    padding: 2px 3px;
  }
  .page_editor ul {
    width: 100%;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
  .page_editor ul li {
    position: relative;
    padding-left: 25px;
    margin: 0 0 10px;
    list-style: none;
  }
  .page_editor ul li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    top: 11px;
    left: 3px;
    background-color: #222222;
    border-radius: 50px;
  }
  .page_editor ol {
    width: 100%;
    counter-reset: li;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
  .page_editor ol li {
    position: relative;
    padding-left: 25px;
    margin: 0 0 10px;
    list-style: none;
  }
  .page_editor ol li:before {
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: li;
    content: counter(li) ".";
  }
  .page_editor .alignnone,
  .page_editor .aligncenter {
    display: block;
    width: 60%;
    height: auto;
    margin: 0 auto;
  }
  .page_editor .aligncenter img,
  .page_editor .alignnone img {
    display: block;
    width: 60%;
    height: auto;
  }
  .page_editor .alignright {
    display: block;
    width: 60%;
    height: auto;
    margin-left: auto;
  }
  .page_editor .alignright img {
    display: block;
    width: 60%;
    height: auto;
  }
  .page_editor .alignleft {
    display: block;
    width: 60%;
    height: auto;
    margin: 0;
  }
  .page_editor .alignleft img {
    display: block;
    width: 60%;
    height: auto;
  }
}
/* gallery */
.gallery { /** ギャラリーを囲むボックス **/
  width: 100%;
  margin-bottom: 20px !important;
  overflow: hidden;
}

.gallery br {
  display: none;
}

.gallery-item {
  float: left;
  margin-bottom: 0 !important;
}

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

.gallery-icon img {
  width: 100%;
  height: auto;
  margin-bottom: 20px !important;
}

.gallery-caption { /** キャプション **/
  color: #222;
  font-size: 12px;
  margin: 0 0 10px;
  text-align: center;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
  width: 100%;
  margin-right: 0;
}

.gallery-columns-2 .gallery-item { /** 2カラム **/
  width: 48%;
  margin: 0 1%;
}

.gallery-columns-3 .gallery-item { /** 3カラム **/
  width: 31.33333%;
  margin: 0 1%;
}

.gallery-columns-4 .gallery-item { /** 4カラム **/
  width: 23%;
  margin: 0 1%;
}

.gallery-columns-5 .gallery-item { /** 5カラム **/
  width: 18%;
  margin: 0 1%;
}

.gallery-columns-6 .gallery-item { /** 6カラム **/
  width: 14.66666%;
  margin: 0 1%;
}

.gallery-columns-7 .gallery-item { /** 7カラム **/
  width: 12.28571%;
  margin: 0 1%;
}

.gallery-columns-8 .gallery-item { /** 8カラム **/
  width: 10.5%;
  margin: 0 1%;
}

.gallery-columns-9 .gallery-item { /** 9カラム **/
  width: 9.11111%;
  margin: 0 1%;
}

@media screen and (max-width: 639px) {
  .gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item, .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item, .gallery-columns-7 .gallery-item, .gallery-columns-8 .gallery-item, .gallery-columns-9 .gallery-item {
    width: 31.33333%;
    margin: 0 1%;
  }
  .gallery-icon img {
    margin-bottom: 10px !important;
  }
}
/* TOP */
#top_slide {
  width: 1000px;
  margin: 0 auto;
  margin-top: 170px;
  /*border-right: 8px solid $maincolor;*/
  position: relative;
}
@media screen and (max-width: 639px) {
  #top_slide {
    width: 100%;
    margin: 15px 0 0 0;
  }
}
#top_slide h2 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 639px) {
  #top_slide h2 {
    display: none;
  }
}
#top_slide h2 img {
  width: auto;
  height: 456px;
}
@media screen and (max-width: 639px) {
  #top_slide h2 img {
    height: auto !important;
  }
}

.top_slider {
  width: 936px;
  margin-left: 64px;
}
@media screen and (max-width: 639px) {
  .top_slider {
    width: 100%;
    margin-left: 0;
  }
}

.top_slider.slick-initialized {
  opacity: 1;
}

.top_slide_item {
  width: 936px;
  height: 456px;
  /*padding-right: 9px;*/
  position: relative;
}
@media screen and (max-width: 639px) {
  .top_slide_item {
    width: 100%;
    height: auto;
  }
}
.top_slide_item .slide_title {
  position: absolute;
  top: 20px;
  right: 20px;
  padding: 18px 15px;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  letter-spacing: 0.2em;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  text-orientation: mixed;
  -webkit-text-orientation: mixed;
  background-color: #ffffff;
  z-index: 1;
}
@media screen and (max-width: 639px) {
  .top_slide_item .slide_title {
    top: 10px;
    right: 10px;
    padding: 12px 10px;
    font-size: 6.5px;
    font-size: 0.65rem;
    line-height: 1;
    letter-spacing: 0;
  }
}
.top_slide_item .before,
.top_slide_item .after {
  float: right !important;
  position: relative;
}
@media screen and (max-width: 639px) {
  .top_slide_item .before,
  .top_slide_item .after {
    width: 50%;
  }
}
.top_slide_item .before img,
.top_slide_item .after img {
  width: auto;
  height: 456px;
}
@media screen and (max-width: 639px) {
  .top_slide_item .before img,
  .top_slide_item .after img {
    width: 100%;
    height: auto;
  }
}
.top_slide_item .before:before,
.top_slide_item .after:before {
  position: absolute;
  left: 20px;
  bottom: 15px;
  content: "Before";
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1;
  background-color: #ffffff;
  padding: 7px 10px;
  z-index: 2;
}
@media screen and (max-width: 639px) {
  .top_slide_item .before:before,
  .top_slide_item .after:before {
    left: 10px;
    bottom: 10px;
    padding: 5px 8px;
    font-size: 6px;
    font-size: 0.6rem;
    line-height: 1;
  }
}
.top_slide_item .after:before {
  left: 15px;
  content: "After";
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  .top_slide_item .after:before {
    left: 10px;
  }
}

.slick-dots {
  position: absolute;
  bottom: -35px;
  list-style: none;
  display: block;
  text-align: right;
  padding: 0px;
  width: 100%;
  z-index: 10;
}
@media screen and (max-width: 639px) {
  .slick-dots {
    text-align: center;
  }
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 15px;
  width: 15px;
  margin: 0px 3px;
  padding: 0px;
  cursor: pointer;
}
@media screen and (max-width: 639px) {
  .slick-dots li {
    margin: 0px 8px;
  }
}

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

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

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  content: "\f111";
  font-family: "fontawesome";
  line-height: 15px;
  text-align: center;
  color: #e2e2e2;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-width: 639px) {
  .slick-dots li button:before {
    font-size: 4px;
    font-size: 0.4rem;
    line-height: 1;
  }
}

.slick-dots li.slick-active button:before {
  content: "\f111";
  font-family: "fontawesome";
  color: #0EB4EC;
  opacity: 1;
}

#top_main {
  margin-top: 90px;
  margin-bottom: 80px;
}
@media screen and (max-width: 639px) {
  #top_main {
    margin: 60px 0;
  }
}
#top_main h3 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.1818181818;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #top_main h3 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375;
  }
}
#top_main .text_basic {
  text-align: center;
}

#top_contents {
  padding: 60px 0;
  background-color: #FFF102;
  position: relative;
}
@media screen and (max-width: 639px) {
  #top_contents {
    padding-bottom: 50px;
  }
}
#top_contents .wrap3 .item {
  position: relative;
}
@media screen and (max-width: 639px) {
  #top_contents .wrap3 .item {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 639px) {
  #top_contents .wrap3 .item:last-child {
    margin-bottom: 0;
  }
}
#top_contents .main_title {
  display: block;
  margin: 0 auto;
  margin-bottom: 20px;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1;
  position: relative;
}
#top_contents .icon_repair:before,
#top_contents .icon_seminar:before,
#top_contents .icon_cleaning:before {
  position: absolute;
  top: -50px;
  margin-left: -33px;
  content: "";
  width: 66px;
  height: 46px;
  background-size: 66px 46px;
}
#top_contents h4 {
  margin: 20px 0 10px 0;
  text-align: center;
  font-size: 11.5px;
  font-size: 1.15rem;
  line-height: 2.0869565217;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  #top_contents h4 {
    margin: 12px 0 3px 0;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 2.1818181818;
  }
}
#top_contents .text_basic {
  margin-top: 0;
  font-size: 8.5px;
  font-size: 0.85rem;
  line-height: 1.9411764706;
}
#top_contents .link_btn_blue_line {
  position: absolute;
  width: 100%;
  bottom: -80px;
}
@media screen and (max-width: 639px) {
  #top_contents .link_btn_blue_line {
    margin-top: 10px;
    position: relative;
    bottom: auto;
  }
  #top_contents .link_btn_blue_line a {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1;
  }
}

/* repair */
#repair_advantage .repair_head_photo {
  width: 585px;
  margin: 0 auto;
  margin-top: 15px;
}
@media screen and (max-width: 639px) {
  #repair_advantage .repair_head_photo {
    width: 100%;
  }
}

#repair_works {
  margin-bottom: 80px;
  padding: 50px 0 20px;
}
@media screen and (max-width: 639px) {
  #repair_works {
    padding: 40px 0 20px;
    margin-bottom: 40px;
  }
}
#repair_works .sub_title {
  margin: 0;
}
#repair_works .link_btn_orange_line {
  margin-top: 15px;
}
#repair_works .link_btn_orange_line a {
  padding: 10px 0;
}

#repair_area {
  position: relative;
}
@media screen and (max-width: 639px) {
  #repair_area {
    padding-bottom: 30px;
  }
}

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

.pricelist {
  width: 100%;
  margin: 0 0 12px 0;
  padding: 0;
  border-collapse: collapse;
  border-top: 1px solid #b6b6b6;
  border-left: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  .pricelist {
    margin-bottom: 15px;
    border-top: none;
    border-left: none;
  }
}
.pricelist th {
  width: 25%;
  padding: 0 15px;
  background-color: #FFFDD9;
  vertical-align: middle;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  border-right: 1px solid #b6b6b6;
  border-bottom: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  .pricelist th {
    display: block;
    width: 100% !important;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
    padding: 0 0 2px 0;
    border-right: none;
    background-color: #ffffff;
    color: #0EB4EC;
  }
}
.pricelist td {
  width: 50%;
  padding: 0 15px;
  /*@include fontsize(9);*/
  border-right: 1px solid #b6b6b6;
  border-bottom: 1px solid #b6b6b6;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 2.6666666667;
  vertical-align: middle;
}
@media screen and (max-width: 639px) {
  .pricelist td {
    display: inline-block;
    width: 60%;
    padding: 5px 0;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.5;
    border-right: none;
  }
}
.pricelist td.price {
  width: 25%;
  padding-right: 5px;
  text-align: right;
}
@media screen and (max-width: 639px) {
  .pricelist td.price {
    width: 40%;
    padding: 5px 0;
  }
}
.pricelist td.distance {
  width: 75%;
}
@media screen and (max-width: 639px) {
  .pricelist td.distance {
    width: 60%;
  }
}

/* seminar */
#seminar_advantage {
  margin-top: 130px;
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #seminar_advantage {
    margin-top: 100px;
    padding-bottom: 30px;
  }
}
#seminar_advantage .text_basic {
  text-align: center;
}
@media screen and (max-width: 639px) {
  #seminar_advantage .text_basic {
    text-align: left;
  }
}

.seminar_nav {
  display: flex;
  margin-top: 60px;
  justify-content: space-between;
  position: relative;
}
@media screen and (max-width: 639px) {
  .seminar_nav {
    flex-direction: column;
  }
}
.seminar_nav .seminar_item {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  width: 46%;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item {
    width: 100%;
    margin-bottom: 55px;
  }
  .seminar_nav .seminar_item:nth-child(2) {
    margin-bottom: 0;
  }
}
.seminar_nav .seminar_item h4 {
  display: block;
  margin: 25px 0 0 0;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  text-align: center;
}
.seminar_nav .seminar_item .text_basic {
  text-align: left !important;
  font-size: 9.5px;
  font-size: 0.95rem;
  line-height: 1.8947368421;
  font-feature-settings: initial;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .text_basic {
    margin-top: 15px;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
}
.seminar_nav .seminar_item .recommend {
  position: relative;
  width: 100%;
  margin: 20px 0;
  padding: 13px 0;
  background-color: #FFF102;
  text-align: center;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1;
  font-weight: bold;
  border-radius: 8px;
}
.seminar_nav .seminar_item .recommend:after {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  border-color: rgba(255, 241, 2, 0);
  border-top-width: 8px;
  border-bottom-width: 8px;
  border-left-width: 8px;
  border-right-width: 8px;
  margin-left: -8x;
  border-top-color: #fff102;
  top: 100%;
  left: 20%;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .recommend:after {
    left: 50%;
  }
}
.seminar_nav .seminar_item .recommend_list {
  margin-bottom: 15px;
  list-style: none;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .recommend_list {
    margin-bottom: 12px;
  }
}
.seminar_nav .seminar_item .recommend_list li {
  display: block;
  margin-bottom: 10px;
  padding-left: 1.2rem;
  font-size: 8.5px;
  font-size: 0.85rem;
  line-height: 1.7647058824;
  position: relative;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .recommend_list li {
    font-size: 8.5px;
    font-size: 0.85rem;
    line-height: 1.6470588235;
  }
}
.seminar_nav .seminar_item .recommend_list li:before {
  position: absolute;
  left: 0;
  content: "\f00c";
  font-family: "fontawesome";
}
.seminar_nav .seminar_item .link_btn_blue_line {
  margin-top: auto;
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .link_btn_blue_line {
    margin-top: 0;
  }
}
@media screen and (max-width: 639px) {
  .seminar_nav .seminar_item .link_btn_blue_line a {
    font-feature-settings: "palt";
  }
}

.borderbox {
  padding: 18px 15px;
  border: 2px solid #b6b6b6;
  border-radius: 10px;
}
.borderbox .lesson {
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 1.2;
  margin: 0 0 7px 0 !important;
}
.borderbox .lesson_title {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
}
@media screen and (max-width: 639px) {
  .borderbox .lesson_title {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1;
  }
}
.borderbox .photo_mokubu_step {
  margin: 10px 0 0 0;
}

#seminar_pages {
  margin-top: 50px;
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #seminar_pages {
    margin-top: 40px;
    padding-bottom: 30px;
  }
}
#seminar_pages .main_eyecatch {
  margin-bottom: 50px;
}
#seminar_pages .text_basic2 {
  margin-top: 20px;
  margin-bottom: 0 !important;
  text-align: left !important;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 639px) {
  #seminar_pages .text_basic2 {
    font-size: 8.5px;
    font-size: 0.85rem;
    line-height: 1.7647058824;
  }
}
#seminar_pages .seminar_recommend {
  display: flex;
  justify-content: space-between;
  text-align: center;
  align-items: center;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend {
    flex-direction: column;
  }
}
#seminar_pages .seminar_recommend .recommend_item {
  width: 33.5%;
  padding: 10px 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item {
    width: 100%;
    padding: 20px 0;
  }
}
#seminar_pages .seminar_recommend .recommend_item img {
  width: 80px;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item img {
    width: 20%;
  }
}
#seminar_pages .seminar_recommend .recommend_item h4 {
  margin: 20px 0 0 0;
  padding: 10px 0;
  color: #222222;
  background-color: #ffffff;
  text-align: center;
  font-size: 10.5px;
  font-size: 1.05rem;
  line-height: 1.3333333333;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item h4 {
    margin: 10px 0 0 0;
  }
}
#seminar_pages .seminar_recommend .recommend_item:first-child {
  /*padding: 20px 0;*/
  border-right: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item:first-child {
    border-right: none;
    border-bottom: 1px solid #b6b6b6;
  }
}
#seminar_pages .seminar_recommend .recommend_item:nth-child(2) {
  width: 33%;
  border-right: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item:nth-child(2) {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #b6b6b6;
  }
}
#seminar_pages .seminar_recommend .recommend_item .text_basic2 {
  padding: 0 18px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_recommend .recommend_item .text_basic2 {
    margin-top: 0;
    padding: 0;
  }
}
#seminar_pages .seminar_kaiketsu {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu {
    flex-direction: column;
  }
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item {
  width: calc((100% - 100px) / 3);
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu .kaiketsu_item {
    width: 100%;
    padding: 0 0 30px 0;
  }
  #seminar_pages .seminar_kaiketsu .kaiketsu_item:last-child {
    padding-bottom: 0;
  }
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item .trouble {
  position: relative;
  margin-top: 0 !important;
  height: 160px;
  padding: 18px;
  background: #cff0fb;
  border-radius: 12px;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu .kaiketsu_item .trouble {
    height: auto;
    font-size: 8.5px;
    font-size: 0.85rem;
    line-height: 1.6470588235;
  }
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item .trouble:after {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-top-color: #cff0fb;
  border-width: 10px;
  margin-left: -10px;
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item h4 {
  margin: 25px 0 0 0;
  padding-left: 60px;
  color: #222222;
  background-color: #ffffff;
  font-size: 10.5px;
  font-size: 1.05rem;
  line-height: 1.3333333333;
  position: relative;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu .kaiketsu_item h4 {
    margin: 20px 0 0 0;
    padding-left: 55px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.4;
  }
  #seminar_pages .seminar_kaiketsu .kaiketsu_item h4 br {
    display: none;
  }
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item h4:before {
  position: absolute;
  content: "";
  width: 45px;
  height: 45px;
  top: 50%;
  left: 0;
  margin-top: -23px;
  background: url(../images/seminar_wood_icon4.png) 0 0 no-repeat;
  background-size: 45px 45px;
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item:nth-child(2) h4 {
  margin: 35px 0 0 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu .kaiketsu_item:nth-child(2) h4 {
    margin: 20px 0 0 0;
  }
}
#seminar_pages .seminar_kaiketsu .kaiketsu_item:nth-child(2) p {
  margin-top: 32px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kaiketsu .kaiketsu_item:nth-child(2) p {
    margin-top: 20px;
  }
}
#seminar_pages .program_title {
  display: block;
  margin: 0 !important;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.3636363636;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  color: #0EB4EC;
}
@media screen and (max-width: 639px) {
  #seminar_pages .program_title {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 639px) {
  #seminar_pages .text_basic2 {
    margin-top: 10px;
  }
}
#seminar_pages .wrap3 {
  margin-top: 15px;
  margin-bottom: 40px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap3 {
    flex-direction: column;
  }
}
#seminar_pages .wrap3 .borderbox {
  width: 30% !important;
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap3 .borderbox {
    width: 100% !important;
    margin-bottom: 15px;
  }
}
#seminar_pages .wrap5 {
  margin-top: 15px;
  margin-bottom: 40px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap5 {
    margin-top: 10px;
    justify-content: flex-start;
  }
}
#seminar_pages .wrap5 .borderbox {
  width: 18% !important;
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap5 .borderbox {
    width: 48% !important;
    margin-right: 4%;
    margin-bottom: 4%;
  }
}
#seminar_pages .wrap5 .borderbox:not(:nth-child(5n+5)) {
  margin-right: 2.5%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap5 .borderbox:not(:nth-child(5n+5)) {
    margin-right: 4%;
  }
}
@media screen and (max-width: 639px) {
  #seminar_pages .wrap5 .borderbox:nth-child(2n) {
    margin-right: 0;
  }
}
#seminar_pages .seminar_kit {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit {
    flex-direction: column;
  }
}
#seminar_pages .seminar_kit .kit_photo {
  width: 30%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_photo {
    width: 70%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
}
#seminar_pages .seminar_kit .kit_detail {
  width: 66%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_detail {
    width: 100%;
  }
}
#seminar_pages .seminar_kit .kit_detail h4 {
  margin-bottom: 15px;
  padding: 0;
  color: #F3983D;
  background-color: transparent;
}
#seminar_pages .seminar_kit .kit_detail h4 span {
  display: block;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1.875;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_detail h4 {
    text-align: center;
  }
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_detail .text_basic2 {
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.875;
  }
  #seminar_pages .seminar_kit .kit_detail .text_basic2 br {
    display: none;
  }
}
#seminar_pages .seminar_kit .kit_detail .kit_price {
  display: inline-block;
  margin: 15px 0 0 0;
  padding: 10px 15px;
  background-color: #ebeeef;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  font-size: 11.5px;
  font-size: 1.15rem;
  line-height: 1.3043478261;
  border-radius: 6px;
}
#seminar_pages .seminar_kit .kit_detail .kit_price span {
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1.875;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_detail .kit_price {
    display: block;
    margin-bottom: 15px;
    text-align: center;
  }
}
#seminar_pages .seminar_kit .kit_detail .kit_contents {
  *zoom: 1;
}
#seminar_pages .seminar_kit .kit_detail .kit_contents:after {
  content: "";
  display: table;
  clear: both;
}
#seminar_pages .seminar_kit .kit_detail .kit_contents li {
  float: left;
  width: 33.33333%;
  padding-left: 0;
  margin: 0;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.6666666667;
  font-feature-settings: "palt";
}
#seminar_pages .seminar_kit .kit_detail .kit_contents li:before {
  display: none;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_kit .kit_detail .kit_contents li {
    width: 50%;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.875;
  }
}
#seminar_pages .seminar_flow .borderbox:not(:first-child) {
  margin-top: 25px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .borderbox:not(:first-child) {
    margin-top: 15px;
  }
}
#seminar_pages .seminar_flow .wrap3 {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .wrap3 {
    flex-direction: column;
  }
}
#seminar_pages .seminar_flow .wrap3 .item {
  width: 33.33333%;
  padding-right: 25px;
  border-right: 1px solid #b6b6b6;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .wrap3 .item {
    width: 100%;
    padding: 15px 0;
    border-right: none;
    border-top: 1px solid #b6b6b6;
  }
}
#seminar_pages .seminar_flow .wrap3 .item:not(:first-child) {
  padding-left: 20px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .wrap3 .item:not(:first-child) {
    padding: 15px 0;
  }
}
#seminar_pages .seminar_flow .wrap3 .item:last-child {
  border-right: none;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .wrap3 .item:last-child {
    padding-bottom: 0;
  }
}
#seminar_pages .seminar_flow .seminar_flow_title {
  margin-bottom: 0;
}
#seminar_pages .seminar_flow .text_basic2 {
  margin-top: 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .link_btn_blue {
    margin: 10px 0 5px 0;
  }
}
#seminar_pages .seminar_flow .fax {
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}
#seminar_pages .seminar_flow .tel {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  margin: auto;
  justify-content: center;
  margin-top: 10px;
}
#seminar_pages .seminar_flow .tel a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: #222222 !important;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .tel a[href*="tel:"] {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    pointer-events: auto;
  }
}
#seminar_pages .seminar_flow .tel:before {
  content: "";
  /*position: absolute;
  top:4px;
  left: 7px;*/
  width: 20px;
  height: 14px;
  background: url(../images/icon_freedial.png) 0 0 no-repeat;
  background-size: 20px 14px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_flow .caution {
    margin-bottom: 0;
  }
}
#seminar_pages .seminar_step2box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 20px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_step2box {
    margin-top: 15px;
  }
}
#seminar_pages .seminar_step2box .step2_sp_caution {
  display: none;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_step2box .step2_sp_caution {
    display: block;
    padding: 10px;
    font-size: 7.5px;
    font-size: 0.75rem;
    line-height: 1.4666666667;
    background-color: #FFF102;
    border-radius: 6px;
  }
}
#seminar_pages .seminar_step2box .boxitem {
  width: calc((100% - 342px) / 2);
  padding: 55px 0;
  background: url(../images/step_arrow.png) center bottom no-repeat;
  background-size: 15px 380px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_step2box .boxitem {
    padding: 0;
    background: none;
  }
}
#seminar_pages .seminar_step2box .boxitem:last-child {
  width: 342px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_step2box .boxitem:last-child {
    width: 100%;
  }
}
#seminar_pages .seminar_step2box .borderbox:last-child {
  background-color: #ffffff;
}
#seminar_pages .seminar_faq {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq {
    flex-direction: column;
  }
}
#seminar_pages .seminar_faq .faq {
  width: 50%;
  margin-bottom: 25px;
  padding: 5px 30px 7px 15px;
  border-left: 1px solid #0EB4EC;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .faq {
    width: 100%;
    margin-bottom: 15px;
    padding: 0 0 15px 0;
    border-left: none;
    border-bottom: 1px solid #b6b6b6;
  }
}
#seminar_pages .seminar_faq .faq .q {
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 2;
  color: #0EB4EC;
}
#seminar_pages .seminar_faq .faq .q span {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.4;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .faq .q span {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.5555555556;
  }
}
#seminar_pages .seminar_faq .faq .text_basic2 {
  margin-top: 10px;
}
#seminar_pages .seminar_faq .faq .link_btn_blue {
  margin-top: 10px;
}
#seminar_pages .seminar_faq .telfax {
  width: 100%;
  margin: 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .telfax {
    width: 100%;
  }
}
#seminar_pages .seminar_faq .telfax .tel,
#seminar_pages .seminar_faq .telfax .fax {
  display: inline-block;
  position: relative;
  margin-bottom: 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .telfax .tel,
  #seminar_pages .seminar_faq .telfax .fax {
    width: 100%;
  }
}
#seminar_pages .seminar_faq .telfax .tel {
  padding-left: 26px;
  position: relative;
}
#seminar_pages .seminar_faq .telfax .tel a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: #222222;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .telfax .tel a[href*="tel:"] {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    pointer-events: auto;
  }
}
#seminar_pages .seminar_faq .telfax .tel:before {
  position: absolute;
  top: 16px;
  left: 0;
  content: "";
  width: 20px;
  height: 14px;
  background: url(../images/icon_freedial.png) 0 0 no-repeat;
  background-size: 20px 14px;
}
#seminar_pages .seminar_faq .telfax .slash {
  display: inline-block;
  padding: 0 10px;
  margin-bottom: 0;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_faq .telfax .slash {
    display: none;
  }
}
#seminar_pages .seminar_faq .caution {
  margin-bottom: 0 !important;
}
#seminar_pages .seminar_voice {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_voice {
    flex-direction: column;
  }
}
#seminar_pages .seminar_voice .photo {
  width: 30%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_voice .photo {
    width: 100%;
  }
}
#seminar_pages .seminar_voice .voice {
  width: 68%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .seminar_voice .voice {
    width: 100%;
  }
}
#seminar_pages .seminar_voice .text_basic {
  margin-top: 10px;
}
#seminar_pages .link_btn_center {
  width: 50%;
  margin: 0 auto;
  margin-top: 60px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .link_btn_center {
    width: 100%;
    margin-top: 30px;
  }
  #seminar_pages .link_btn_center .link_btn_blue_line a {
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.75;
  }
}
#seminar_pages .alumi_program .borderbox {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}
@media screen and (max-width: 639px) {
  #seminar_pages .alumi_program .borderbox {
    flex-direction: column-reverse;
  }
}
#seminar_pages .alumi_program .borderbox:not(:first-child) {
  margin-top: 25px;
}
#seminar_pages .alumi_program .borderbox .alumi_program_detail {
  width: 60%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .alumi_program .borderbox .alumi_program_detail {
    width: 100%;
    margin-top: 15px;
  }
}
#seminar_pages .alumi_program .borderbox .photo {
  width: 35%;
}
@media screen and (max-width: 639px) {
  #seminar_pages .alumi_program .borderbox .photo {
    width: 100%;
  }
}
#seminar_pages .alumi_program .borderbox .alumi_program_list {
  display: block;
  margin-top: 17px;
  padding: 15px 0 0 0;
  border-top: 1px solid #979797;
  list-style: none;
}
#seminar_pages .alumi_program .borderbox .alumi_program_list li {
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.3333333333;
  padding-left: 1.3em;
}
@media screen and (max-width: 639px) {
  #seminar_pages .alumi_program .borderbox .alumi_program_list li {
    font-size: 8.5px;
    font-size: 0.85rem;
    line-height: 1.4117647059;
  }
}
#seminar_pages .alumi_program .borderbox .alumi_program_list li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "\f00c";
  font-family: "fontawesome";
  background-color: transparent;
}
#seminar_pages .alumi_program .borderbox .text_basic2 {
  display: block;
  margin-top: 17px;
  padding: 15px 0 0 0;
  border-top: 1px solid #979797;
}
@media screen and (max-width: 639px) {
  #seminar_pages .alumi_program .borderbox .text_basic2 br {
    display: none;
  }
}

/* cleaning */
#cleaning_advantage .comics {
  width: 100%;
  margin: 30px 0 0 0;
  padding: 30px 20px;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .comics {
    margin-top: 20px;
    padding: 10px 5px;
  }
}
#cleaning_advantage .recommend {
  display: block;
  margin: 50px 0 10px 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .recommend {
    margin: 35px 0 10px 0;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1;
  }
}
#cleaning_advantage .recommend_h3 {
  display: block;
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.3636363636;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .recommend_h3 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375;
  }
}
#cleaning_advantage .recommend_photo {
  width: 950px;
  margin: 0 auto;
  position: relative;
  top: -20px;
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .recommend_photo {
    width: 90%;
    top: 0;
    margin-top: 15px;
  }
}

#cleaning_price {
  margin: 120px 0 0 0;
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #cleaning_price {
    margin-top: 60px;
    padding-bottom: 30px;
  }
}
#cleaning_price .caution {
  margin-bottom: 50px;
}
@media screen and (max-width: 639px) {
  #cleaning_price .caution {
    margin-bottom: 30px;
  }
}
#cleaning_price .link_btn_blue_line {
  display: block;
  margin: 0 auto;
}

dl.tabellayout {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #b6b6b6;
  padding: 0 60px;
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  dl.tabellayout {
    padding: 0 10px;
  }
}
dl.tabellayout:first-child {
  border-top: 1px solid #b6b6b6;
}
dl.tabellayout dt {
  padding: 17px 0;
  width: 230px;
}
@media screen and (max-width: 639px) {
  dl.tabellayout dt {
    width: 35%;
  }
}
dl.tabellayout dd {
  padding: 17px 0;
  width: calc(100% - 230px);
}
@media screen and (max-width: 639px) {
  dl.tabellayout dd {
    width: 65%;
  }
}

/* works */
#works_head_nav {
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #works_head_nav {
    margin-top: 40px;
    padding-bottom: 40px;
  }
}

#works_archive {
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #works_archive {
    padding-bottom: 30px;
  }
}
#works_archive .contents .page_editor h3 {
  margin-bottom: 0;
}
#works_archive .contents .page_editor p {
  margin-top: 50px;
}
@media screen and (max-width: 639px) {
  #works_archive .contents .page_editor p {
    margin-top: 25px;
  }
}
#works_archive .works_wrap {
  padding: 30px 0;
}
#works_archive .works_wrap .works_header,
#works_archive .works_wrap .works_price {
  display: flex;
  align-items: center;
  margin-bottom: 18px;
}
@media screen and (max-width: 639px) {
  #works_archive .works_wrap .works_header,
  #works_archive .works_wrap .works_price {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 0;
  }
}
#works_archive .works_wrap .works_header .cate,
#works_archive .works_wrap .works_price .cate {
  margin-right: 15px;
  padding: 5px 0;
  color: #ffffff;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  border-radius: 4px;
}
@media screen and (max-width: 639px) {
  #works_archive .works_wrap .works_header .cate,
  #works_archive .works_wrap .works_price .cate {
    margin: 0 0 5px 0;
    text-align: left;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.5;
  }
}
#works_archive .works_wrap .works_header .title,
#works_archive .works_wrap .works_price .title {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  #works_archive .works_wrap .works_header .title,
  #works_archive .works_wrap .works_price .title {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.3636363636;
  }
}
#works_archive .works_wrap .works_header .cate_mokubu,
#works_archive .works_wrap .works_price .cate_mokubu {
  background-color: #0EB4EC;
}
#works_archive .works_wrap .works_header .cate_alumi,
#works_archive .works_wrap .works_price .cate_alumi {
  background-color: #b6b6b6;
}
#works_archive .works_wrap .works_header .cate_paint,
#works_archive .works_wrap .works_price .cate_paint {
  background-color: #e66453;
}
#works_archive .works_wrap .works_header .cate_sheet,
#works_archive .works_wrap .works_price .cate_sheet {
  background-color: #55c979;
}
#works_archive .works_wrap .works_header .cate_special,
#works_archive .works_wrap .works_price .cate_special {
  background-color: #be84c6;
}
#works_archive .works_wrap .works_price {
  margin-bottom: 13px;
}
#works_archive .works_wrap .works_price p {
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.3333333333;
}
@media screen and (max-width: 639px) {
  #works_archive .works_wrap .works_price p {
    margin-top: 10px;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.3333333333;
  }
}
#works_archive .works_wrap .works_price p:first-child {
  margin-right: 50px;
}
#works_archive .works_wrap .works_price p span {
  margin-right: 6px;
  padding: 4px 6px;
  border: 1px solid #222222;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
#works_archive .works_wrap .text_basic {
  margin-top: 0;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.8;
  font-feature-settings: initial;
}
@media screen and (max-width: 639px) {
  #works_archive .works_wrap .text_basic {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
}
#works_archive .works_gallery {
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
}
#works_archive .works_gallery .item {
  width: 31%;
}
#works_archive .works_gallery .item img {
  border-radius: 8px;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item {
    width: 48%;
  }
}
#works_archive .works_gallery .item:not(:nth-child(3n+3)) {
  margin-right: 3.5%;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item:not(:nth-child(3n+3)) {
    margin-right: 0;
  }
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item:not(:nth-child(2n+2)) {
    margin-right: 4%;
  }
}
#works_archive .works_gallery .item:nth-child(n+4) {
  margin-top: 30px;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item:nth-child(n+4) {
    margin-top: 0;
  }
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item:nth-child(n+3) {
    margin-top: 20px;
  }
}
#works_archive .works_gallery .item .item_comment {
  margin-top: 12px;
  font-size: 8.5px;
  font-size: 0.85rem;
  line-height: 1.5294117647;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .item .item_comment {
    margin-top: 7px;
    font-size: 7.5px;
    font-size: 0.75rem;
    line-height: 1.6;
  }
}
#works_archive .works_gallery .before,
#works_archive .works_gallery .after,
#works_archive .works_gallery .progress {
  position: relative;
}
#works_archive .works_gallery .before:before,
#works_archive .works_gallery .after:before,
#works_archive .works_gallery .progress:before {
  position: absolute;
  right: 6px;
  bottom: 6px;
  content: "Before";
  padding: 10px 15px;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1;
  background-color: #d9d9d9;
  z-index: 2;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .before:before,
  #works_archive .works_gallery .after:before,
  #works_archive .works_gallery .progress:before {
    right: 5px;
    bottom: 5px;
    padding: 6px 10px;
    font-size: 7px;
    font-size: 0.7rem;
    line-height: 1;
  }
}
#works_archive .works_gallery .after:before {
  content: "After";
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  background-color: #FFF102;
}
#works_archive .works_gallery .progress:before {
  content: "作業途中";
  padding: 10px 12px;
  background-color: #ffffff;
  font-size: 7.5px;
  font-size: 0.75rem;
  line-height: 1;
}
@media screen and (max-width: 639px) {
  #works_archive .works_gallery .progress:before {
    padding: 5px 9px;
    font-size: 7px;
    font-size: 0.7rem;
    line-height: 1.1428571429;
  }
}

/* company */
#company_wrap {
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #company_wrap {
    margin-top: 40px;
    padding-bottom: 30px;
  }
}
#company_wrap .gmap {
  margin-left: 5px;
  text-decoration: underline;
}
#company_wrap .page_editor {
  margin-top: 120px;
}
@media screen and (max-width: 639px) {
  #company_wrap .page_editor {
    margin-top: 60px;
  }
}
#company_wrap .rinen {
  display: block;
  margin: 20px 0 0 0;
  text-align: center;
  font-size: 15.5px;
  font-size: 1.55rem;
  line-height: 1.6129032258;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
@media screen and (max-width: 639px) {
  #company_wrap .rinen {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.8181818182;
  }
}
#company_wrap .guideline {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 639px) {
  #company_wrap .guideline {
    flex-direction: column;
  }
}
#company_wrap .guideline .lines {
  width: 50%;
  position: relative;
}
@media screen and (max-width: 639px) {
  #company_wrap .guideline .lines {
    width: 100%;
  }
}
#company_wrap .guideline .lines p {
  margin-bottom: 20px;
  padding-left: 2.2rem;
}
@media screen and (max-width: 639px) {
  #company_wrap .guideline .lines p:last-child {
    margin-bottom: 0;
  }
}
#company_wrap .guideline .lines p:before {
  position: absolute;
  left: 0;
  content: "一.";
}
#company_wrap .messagewrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 639px) {
  #company_wrap .messagewrap {
    flex-direction: column;
  }
}
#company_wrap .messagewrap .photo {
  width: 30%;
}
@media screen and (max-width: 639px) {
  #company_wrap .messagewrap .photo {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  #company_wrap .messagewrap .photo img {
    width: 50%;
    margin: 0 auto;
    text-align: center;
  }
}
#company_wrap .messagewrap .message {
  width: 67%;
}
@media screen and (max-width: 639px) {
  #company_wrap .messagewrap .message {
    width: 100%;
  }
}
#company_wrap .messagewrap .message .h4 {
  margin-bottom: 25px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  color: #F3983D;
}
@media screen and (max-width: 639px) {
  #company_wrap .messagewrap .message .h4 {
    margin-top: 20px;
    text-align: center;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 2.1818181818;
  }
}
#company_wrap .messagewrap .message p {
  margin-bottom: 20px;
}
#company_wrap .messagewrap .message p:nth-last-child(2) {
  margin-bottom: 0;
}
@media screen and (max-width: 639px) {
  #company_wrap .messagewrap .message p:nth-last-child(2) {
    margin-bottom: 20px;
  }
}
#company_wrap .messagewrap .message .signature {
  display: block;
  text-align: right;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
}
#company_wrap .messagewrap .message .signature .companyname {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 5px;
}
#company_wrap .messagewrap .message .signature .post {
  padding-right: 10px;
  font-size: 10px;
  font-size: 1rem;
  line-height: 2.4;
}
#company_wrap .fa-map-marker:before {
  color: #0EB4EC;
}

/* contact */
#contact_wrap {
  margin-top: 70px;
  padding-bottom: 60px;
  position: relative;
}
@media screen and (max-width: 639px) {
  #contact_wrap {
    margin-top: 40px;
    padding-bottom: 30px;
  }
}
#contact_wrap .contact_info .text_basic {
  margin-bottom: 0;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .text_basic {
    margin-bottom: 10px;
  }
  #contact_wrap .contact_info .text_basic:nth-child(2) {
    margin-top: 0px;
  }
}
#contact_wrap .contact_info .text_basic:first-child {
  margin-bottom: 20px;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .text_basic:first-child {
    margin-bottom: 0 !important;
  }
}
#contact_wrap .contact_info .text_caution {
  text-align: center;
  margin-top: 5px;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .text_caution {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.4444444444;
  }
}
#contact_wrap .contact_info .telfax {
  display: flex;
  justify-content: space-between;
  width: 38%;
  margin: 0 auto;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .telfax {
    width: 100%;
    flex-direction: column;
  }
}
#contact_wrap .contact_info .telfax .tel,
#contact_wrap .contact_info .telfax .fax {
  width: 45%;
  position: relative;
  text-align: center !important;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .telfax .tel,
  #contact_wrap .contact_info .telfax .fax {
    width: 100%;
  }
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .telfax .fax {
    margin-top: 10px;
    margin-bottom: 0;
  }
}
#contact_wrap .contact_info .telfax .tel {
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  margin: auto;
  justify-content: center;
}
#contact_wrap .contact_info .telfax .tel a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .telfax .tel a[href*="tel:"] {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    pointer-events: auto;
  }
}
#contact_wrap .contact_info .telfax .tel:before {
  content: "";
  /*position: absolute;
  top:4px;
  left: 7px;*/
  width: 20px;
  height: 14px;
  background: url(../images/icon_freedial.png) 0 0 no-repeat;
  background-size: 20px 14px;
}
#contact_wrap .contact_info .telfax .slash {
  width: 10%;
  text-align: center;
}
@media screen and (max-width: 639px) {
  #contact_wrap .contact_info .telfax .slash {
    display: none;
  }
}

/* event slide */
#event_slide {
  width: 840px;
  height: 550px;
  margin: 0 auto;
  margin-top: 40px;
  margin-bottom: 100px;
  padding: 10px;
  background-color: #ffffff;
  box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15);
  position: relative;
}

.event_slider {
  position: relative;
  opacity: 0;
  transition: opacity 0.8s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  z-index: 3;
}

.event_slider.slick-initialized {
  opacity: 1;
}

.slick-slide {
  outline: none;
}

.event_slider_item {
  width: 100%;
  margin: 0;
  position: relative;
}
.event_slider_item img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 530px;
  margin: 0 auto;
}

.event_slider {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  position: relative;
  *zoom: 1;
}
.event_slider:after {
  content: "";
  display: table;
  clear: both;
}

.event_slider .slick-prev {
  width: 50px;
  height: 50px;
  background: url(../images/slide_prev.png) 0 0 no-repeat;
  background-size: 50px 50px;
  top: 50%;
  margin-top: -25px;
  left: -10px;
  z-index: 5;
  transition: 0.2s ease-in-out;
}

.event_slider .slick-next {
  width: 50px;
  height: 50px;
  background: url(../images/slide_next.png) 0 0 no-repeat;
  background-size: 50px 50px;
  top: 50%;
  margin-top: -25px;
  right: -10px;
  z-index: 5;
  transition: 0.2s ease-in-out;
}

.event_slider .slick-prev:hover,
.event_slider .slick-next:hover {
  transform: scale(1);
}

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

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

.event_slider .slick-dots li:before {
  display: none;
}

.event_slider .slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  content: "\f10c";
  font-family: "fontawesome";
  font-size: 6px;
  font-size: 0.6rem;
  line-height: 4;
  line-height: 15px;
  text-align: center;
  color: #222222;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.event_slider .slick-dots li.slick-active button:before {
  content: "\f111";
  font-family: "fontawesome";
  color: #222222;
  opacity: 1;
}

@media screen and (max-width: 639px) {
  #event_page .event_search {
    padding: 40px 0 !important;
    background-color: transparent !important;
  }
  #event_page .post_date {
    margin-bottom: 0;
  }
  #event_page .event_status {
    display: block;
    width: 50%;
    margin: 0 auto;
    margin-top: 40px;
    *zoom: 1;
  }
  #event_page .event_status:after {
    content: "";
    display: table;
    clear: both;
  }
  #event_page .event_status .accepting,
  #event_page .event_status .end,
  #event_page .event_status .cancel,
  #event_page .event_status .noreserve,
  #event_page .event_status .few,
  #event_page .event_status .full {
    padding: 10px 0;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
  }
  #event_page .reservation {
    display: block;
    margin: 50px 0 0 0;
    padding: 30px 0 0 0;
    text-align: center;
    border-top: 1px dashed #222222;
  }
  #event_page .reservation .info {
    margin-bottom: 20px;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
    color: #F3983D;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
  }
  #event_page .reservation a {
    width: 100%;
    padding: 20px 0;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.6666666667;
  }
  #event_page .reservation a::after {
    content: "";
    position: absolute;
    width: 24px;
    height: 24px;
    top: 50%;
    left: 15px;
    margin-top: -12px;
    background: url(../images/icon_reservation_btn.png) 0 0 no-repeat;
    background-size: 24px 24px;
    z-index: 1;
  }
  #event_page .reservation .event_finished {
    width: 100%;
    padding: 15px 0;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.875;
  }
  #event_page .reservation .event_noreserved {
    width: 100%;
    padding: 15px 0;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.875;
  }
  #event_page .event_top_back {
    display: block;
    margin: 50px 0 30px 0;
    color: #222222;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
  }
}
@media screen and (max-width: 639px) {
  /* event slide */
  #event_slide {
    width: 100%;
    height: 240px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 10px;
    padding: 10px;
    background-color: #ffffff;
    box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15);
    position: relative;
  }
  .event_slider_item {
    width: 100%;
    margin: 0;
    position: relative;
  }
  .event_slider_item img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 220px;
    margin: 0 auto;
  }
  .event_slider .slick-prev {
    width: 35px;
    height: 35px;
    background: url(../images/slide_prev.png) 0 0 no-repeat;
    background-size: 35px 35px;
    top: 50%;
    margin-top: -17.5px;
    left: -10px;
    z-index: 5;
    transition: 0.2s ease-in-out;
  }
  .event_slider .slick-next {
    width: 35px;
    height: 35px;
    background: url(../images/slide_next.png) 0 0 no-repeat;
    background-size: 35px 35px;
    top: 50%;
    margin-top: -17.5px;
    right: -10px;
    z-index: 5;
    transition: 0.2s ease-in-out;
  }
  .event_slider .slick-prev:hover,
  .event_slider .slick-next:hover {
    transform: scale(1);
  }
  .event_slider .slick-dots {
    position: absolute;
    bottom: -50px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0px;
    width: 100%;
  }
  .event_slider .slick-dots li {
    position: relative;
    display: inline-block;
    height: 15px;
    width: 15px;
    margin: 0px 2px;
    padding: 0px;
    cursor: pointer;
  }
  .event_slider .slick-dots li:before {
    display: none;
  }
  .event_slider .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    content: "\f10c";
    font-family: "fontawesome";
    font-size: 6px;
    font-size: 0.6rem;
    line-height: 4;
    line-height: 15px;
    text-align: center;
    color: #222222;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .event_slider .slick-dots li.slick-active button:before {
    content: "\f111";
    font-family: "fontawesome";
    color: #222222;
    opacity: 1;
  }
}
#about_page .about_logo,
#teacher_page .about_logo,
#privacy_page .about_logo,
#access_page .about_logo {
  display: block;
  width: 500px;
  margin: 0 auto;
}
#about_page .about_h3,
#teacher_page .about_h3,
#privacy_page .about_h3,
#access_page .about_h3 {
  display: block;
  margin: 50px 0 30px 0;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: center;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
#about_page .about_h3 span,
#teacher_page .about_h3 span,
#privacy_page .about_h3 span,
#access_page .about_h3 span {
  color: #F3983D;
}
#about_page .text_basic,
#teacher_page .text_basic,
#privacy_page .text_basic,
#access_page .text_basic {
  font-feature-settings: normal !important;
}
#about_page .about_photo,
#teacher_page .about_photo,
#privacy_page .about_photo,
#access_page .about_photo {
  display: block;
  width: 760px;
  margin: 0 auto;
  margin-top: 50px;
  margin-bottom: 50px;
}
#about_page .link_btn_orange_line,
#teacher_page .link_btn_orange_line,
#privacy_page .link_btn_orange_line,
#access_page .link_btn_orange_line {
  width: 40%;
  margin: 0 auto;
}

@media screen and (max-width: 639px) {
  #about_page,
  #teacher_page,
  #privacy_page,
  #access_page {
    margin-top: 50px;
  }
  #about_page .about_logo,
  #teacher_page .about_logo,
  #privacy_page .about_logo,
  #access_page .about_logo {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  #about_page .about_h3,
  #teacher_page .about_h3,
  #privacy_page .about_h3,
  #access_page .about_h3 {
    display: block;
    margin: 30px 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 2;
    text-align: center;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
  }
  #about_page .about_photo,
  #teacher_page .about_photo,
  #privacy_page .about_photo,
  #access_page .about_photo {
    display: block;
    width: 100%;
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 30px;
  }
  #about_page .link_btn_orange_line,
  #teacher_page .link_btn_orange_line,
  #privacy_page .link_btn_orange_line,
  #access_page .link_btn_orange_line {
    width: 100%;
    margin: 0 auto;
  }
}
#teacher_page .text_basic {
  margin-bottom: 50px;
}

#privacy_page p {
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 2;
}
#privacy_page h3 {
  display: block;
  margin: 50px 0 15px 0;
  padding-bottom: 15px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.4545454545;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  border-bottom: 1px dashed #222222;
}
#privacy_page ol {
  margin-top: 15px;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.6666666667;
}

@media screen and (max-width: 639px) {
  #privacy_page p {
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.875;
  }
  #privacy_page h3 {
    display: block;
    margin: 35px 0 10px 0;
    padding-bottom: 10px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.5;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    border-bottom: 1px dashed #222222;
  }
  #privacy_page ol {
    margin-top: 12px;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.625;
  }
}
@media screen and (max-width: 639px) {
  #teacher_page .text_basic {
    margin-bottom: 30px;
  }
}
#access_page .text_basic {
  margin-bottom: 30px;
}
#access_page .link_btn_orange_line {
  width: 40%;
  margin: 0 auto;
  margin-top: 50px;
}
#access_page .access_info {
  display: block;
  margin: 30px 0 0 0;
}
#access_page .access_info h4 {
  color: #F3983D;
  font-size: 11.5px;
  font-size: 1.15rem;
  line-height: 1;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
}
#access_page .access_info .text_basic {
  margin-top: 15px !important;
}
#access_page .venue {
  display: block;
  padding: 50px 0 20px 0;
  background-color: #fcedf0;
  *zoom: 1;
}
#access_page .venue:after {
  content: "";
  display: table;
  clear: both;
}
#access_page .venue .about_h3 {
  margin: 0;
}
#access_page .venue .venuelist_wrap {
  flex-wrap: wrap;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  margin-top: 45px;
  *zoom: 1;
}
#access_page .venue .venuelist_wrap:after {
  content: "";
  display: table;
  clear: both;
}
#access_page .venue .venuelist_wrap .venuelist {
  width: 430px;
  margin-bottom: 50px;
}
#access_page .venue .venuelist_wrap .venue_name {
  display: block;
  margin: 20px 0;
  padding-left: 27px;
  padding-bottom: 20px;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1;
  color: #F3983D;
  border-bottom: 1px dashed #222222;
  position: relative;
}
#access_page .venue .venuelist_wrap .venue_name:before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 20px;
  height: 17px;
  background: url(../images/icon_withmama.png) 0 0 no-repeat;
  background-size: 20px 17px;
}
#access_page .venue .venuelist_wrap p {
  display: block;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 2;
}
#access_page .venue .venuelist_wrap .venue_link {
  display: block;
  margin: 30px 0 0 0;
  font-size: 8.5px;
  font-size: 0.85rem;
  line-height: 1;
  *zoom: 1;
}
#access_page .venue .venuelist_wrap .venue_link:after {
  content: "";
  display: table;
  clear: both;
}
#access_page .venue .venuelist_wrap .venue_link a {
  padding: 12px;
  border-radius: 5px;
}
#access_page .venue .venuelist_wrap .venue_link a.venue_btn_map {
  margin-right: 5px;
  background-color: #222222;
  color: #ffffff;
  border: 2px solid #222222;
}
#access_page .venue .venuelist_wrap .venue_link a.venue_btn_insta {
  background-color: #ffffff;
  color: #222222;
  border: 2px solid #222222;
}
#access_page .venue .venuelist_wrap::after {
  content: "";
  display: block;
  width: 430px;
  height: 0;
}

@media screen and (max-width: 639px) {
  #access_page .text_basic {
    margin-bottom: 20px;
  }
  #access_page .link_btn_orange_line {
    width: 100%;
    margin: 0 auto;
    margin-top: 30px;
  }
  #access_page .access_info {
    display: block;
    margin: 30px 0 0 0;
  }
  #access_page .access_info h4 {
    color: #F3983D;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
  }
  #access_page .access_info .text_basic {
    margin-top: 15px !important;
  }
  #access_page .venue {
    display: block;
    padding: 25px 0 0 0;
    background-color: #fcedf0;
    *zoom: 1;
  }
  #access_page .venue:after {
    content: "";
    display: table;
    clear: both;
  }
  #access_page .venue .about_h3 {
    margin: 0;
  }
  #access_page .venue .venuelist_wrap {
    display: -ms-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 25px;
    *zoom: 1;
  }
  #access_page .venue .venuelist_wrap:after {
    content: "";
    display: table;
    clear: both;
  }
  #access_page .venue .venuelist_wrap .venuelist {
    width: 100%;
    margin-bottom: 0;
  }
  #access_page .venue .venuelist_wrap .venue_name {
    display: block;
    margin: 15px 0;
    padding-left: 27px;
    padding-bottom: 15px;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    font-size: 10.5px;
    font-size: 1.05rem;
    line-height: 1;
    color: #F3983D;
    border-bottom: 1px dashed #222222;
    position: relative;
  }
  #access_page .venue .venuelist_wrap .venue_name:before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    width: 20px;
    height: 17px;
    background: url(../images/icon_withmama.png) 0 0 no-repeat;
    background-size: 20px 17px;
  }
  #access_page .venue .venuelist_wrap p {
    display: block;
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 1.7777777778;
  }
  #access_page .venue .venuelist_wrap .venue_link {
    display: block;
    margin: 20px 0 40px 0;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
    *zoom: 1;
  }
  #access_page .venue .venuelist_wrap .venue_link:after {
    content: "";
    display: table;
    clear: both;
  }
  #access_page .venue .venuelist_wrap .venue_link a {
    padding: 10px;
    border-radius: 5px;
  }
  #access_page .venue .venuelist_wrap::after {
    width: 100%;
  }
}
#contact_page .contact_info,
#contact_confirm_page .contact_info,
#contact_error_page .contact_info,
#contact_thanks_page .contact_info,
#reserve_page .contact_info {
  display: block;
  margin-bottom: 50px;
}
#contact_page .contact_h3,
#contact_confirm_page .contact_h3,
#contact_error_page .contact_h3,
#contact_thanks_page .contact_h3,
#reserve_page .contact_h3 {
  display: block;
  margin-bottom: 15px;
  padding-bottom: 5px;
  color: #F3983D;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 2.1818181818;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  border-bottom: 1px dashed #222222;
}
#contact_page .text_basic,
#contact_confirm_page .text_basic,
#contact_error_page .text_basic,
#contact_thanks_page .text_basic,
#reserve_page .text_basic {
  margin-top: 10px;
}
#contact_page .text_caution,
#contact_confirm_page .text_caution,
#contact_error_page .text_caution,
#contact_thanks_page .text_caution,
#reserve_page .text_caution {
  margin-top: 10px;
}

@media screen and (max-width: 639px) {
  #contact_page,
  #contact_confirm_page,
  #contact_error_page,
  #contact_thanks_page,
  #reserve_page {
    margin-top: 50px;
  }
  #contact_page .contact_info,
  #contact_confirm_page .contact_info,
  #contact_error_page .contact_info,
  #contact_thanks_page .contact_info,
  #reserve_page .contact_info {
    display: block;
    margin-bottom: 30px;
  }
  #contact_page .contact_h3,
  #contact_confirm_page .contact_h3,
  #contact_error_page .contact_h3,
  #contact_thanks_page .contact_h3,
  #reserve_page .contact_h3 {
    display: block;
    margin-bottom: 15px;
    padding-bottom: 5px;
    color: #F3983D;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.5;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    border-bottom: 1px dashed #222222;
  }
  #contact_page .text_basic,
  #contact_confirm_page .text_basic,
  #contact_error_page .text_basic,
  #contact_thanks_page .text_basic,
  #reserve_page .text_basic {
    margin-top: 10px;
  }
  #contact_page .text_caution,
  #contact_confirm_page .text_caution,
  #contact_error_page .text_caution,
  #contact_thanks_page .text_caution,
  #reserve_page .text_caution {
    margin-top: 10px;
  }
  #contact_page .tel-link,
  #contact_confirm_page .tel-link,
  #contact_error_page .tel-link,
  #contact_thanks_page .tel-link,
  #reserve_page .tel-link {
    margin: 0 auto;
    text-align: left;
    letter-spacing: 0.05em;
  }
}
.contact_nav {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 30px;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -ms-justify-content: center;
  justify-content: center;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contact_nav li {
  width: 32%;
  padding: 15px;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.5;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  color: #F3983D;
  border: 2px solid #F3983D;
}
.contact_nav li img {
  width: 48px;
  margin: 0 8px 0 0;
}
.contact_nav li.active {
  background-color: #FFF102;
}

@media screen and (max-width: 639px) {
  .contact_nav {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    -ms-justify-content: center;
    justify-content: center;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .contact_nav li {
    width: 32%;
    padding: 10px;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1;
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    font-weight: 700;
    color: #F3983D;
    border: 2px solid #F3983D;
    text-align: center;
  }
  .contact_nav li img {
    display: block;
    width: 40%;
    margin: 0 auto;
    margin-bottom: 5px;
    text-align: center;
  }
  .contact_nav li.active {
    background-color: #FFF102;
  }
}
#news_page .news_list {
  margin-bottom: 50px;
}
#news_page .pageNav {
  margin-bottom: 120px;
}
#news_page .event_top_back {
  display: block;
  margin: 80px 0 50px 0;
  color: #222222;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1;
  transition: all cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
}
#news_page .event_top_back:hover {
  color: #F3983D;
}

@media screen and (max-width: 639px) {
  #news_page {
    margin-top: 50px;
  }
  #news_page .news_list {
    margin-bottom: 30px;
  }
  #news_page .pageNav {
    margin-bottom: 70px;
  }
}
/*
html{
	font-size:62.5%;
}
body{
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	font-size:1.4rem;
	p,dt,dd,li,a{
		font-family:$base_font;
	}
}

img{
	display:block;
	max-width: 100%;
	margin:0 auto;
}

.text-left img,
.text-right img{
	margin:0 0 0 0;
}

a{
	color:$link_text;
	transition: .3s ease-in-out;
	&:hover{
		text-decoration:none;
		color:#C6336B;
	}
}
.red{
	color:red;
	font-weight:bold;
}
.attention{
	display:block;
	padding-left:1em;
	text-indent:-1em;
}

.box{
	margin-bottom:60px;
}

.inner{
	margin-bottom:30px;
}

.btn{
	font-size:1.6rem;
	padding:10px 20px;
	background:#003E50;
	color:#ffffff;
	margin:0 auto;
	font-family: $base_font;
	font-weight:bold;
	transition: .3s ease-in-out;
	&:hover{
		color:#ffffff;
		background:#C6336B;
	}
}

.title{
	&__large{
		position:relative;
		z-index:0;
		margin-bottom:30px;
		text-align:center;
		&__label{
			position:absolute;
			z-index:-1;
			top:50%;
			right:0;
			margin-top:-39px;
		}
	}
	&__middle{
		display:flex;
		align-items: center;
		justify-content: space-between;
		position:relative;
		z-index:0;
		font-size:2.2rem;
		padding-left:80px;
		padding-bottom:10px;
		margin-bottom:15px;
		color:$key_color;
		font-family:$base_font;
		font-style: normal;
		font-weight: bold;
		&.text-center{
			justify-content: center;
		}
		&__link{
			font-size:1.6rem;

		}
		&__icon{
			position:absolute;
			z-index:-1;
			bottom:-3px;
			left:0;
		}
		&__label{
			position:absolute;
			z-index:-1;
			top:-5px;
			right:0;
		}
		&::after{
			content:"";
			position:absolute;
			z-index:-1;
			left:0;
			bottom:0;
			background:url(../images/border.png) repeat-x bottom;
			width:100%;
			height:3px;
		}
	}
	&__small{
		font-size:2.0rem;
		color:$key_color;
		font-family:$base_font;
		font-style: normal;
		font-weight: bold;
		margin-bottom:15px;
		&_green{
			background:url(../images/bg_green.gif);
			color:#ffffff;
			padding:10px;
			border-radius:240px 15px 100px 15px / 15px 200px 15px 185px;
			font-family:$base_font;
			font-style: normal;
			font-weight: bold;
			margin-bottom:15px;
			text-shadow:0 0 3px rgba(144,198,199,0.8);
		}
	}
	&__article{
		position:relative;
		z-index:0;
		font-size:1.8rem;
		padding-bottom:10px;
		margin-bottom:15px;
		color:$key_color;
		font-family:$base_font;
		font-style: normal;
		font-weight: bold;
		&::after{
			content:"";
			position:absolute;
			z-index:-1;
			left:0;
			bottom:0;
			background:url(../images/border.png) repeat-x bottom;
			width:100%;
			height:3px;
		}
	}
	&__box{
		position:relative;
		z-index:0;
		font-size:2.2rem;
		padding-bottom:10px;
		margin-bottom:15px;
		color:$key_color;
		font-family:$base_font;
		font-style: normal;
		font-weight: bold;
		&::after{
			content:"";
			position:absolute;
			z-index:-1;
			left:0;
			bottom:0;
			background:url(../images/border.png) repeat-x bottom;
			width:100%;
			height:3px;
		}
	}
}

.categoryList{
	margin:0 0 10px 0;
	padding:0 0 0 0;
	list-style:none;
	&::after{
		content:"";
		display:block;
		clear:both;
	}
	li{
		float:left;
		margin-bottom:5px;
		&:not(:last-child){
			margin-right:5px;
		}
	}
}

.article{
	*:last-child{
		margin-bottom:0;
	}
	> a{
		.article__images{
			display:block;
			align-self: flex-start;
			overflow:hidden;
			img{
				transition: .3s ease-in-out;
			}

		}
		&:hover .article__images img{
			transform:scale(1.1);
		}
	}
	a.article__images{
		display:block;
		align-self: flex-start;
		overflow:hidden;
		img{
			transition: .3s ease-in-out;
		}
		&:hover img{
			transform:scale(1.1);
		}
	}
	&__dlist{
		dt{
			color:#808080;
		}
		dd{
			&:not(:last-child){
				margin-bottom:15px;
			}
		}
		&-time{
			&::after{
				content:"";
				display:block;
				clear:both;
			}
			dt{
				float:left;
			}
			dd{
				overflow:hideen;
			}
		}
	}
}

.dlist{
	margin:0 0 15px 0;
	dt{
		color:#00475A;
	}
	dd{
		> *:last-child{
			margin-bottom:0;
		}
	}
}
*/
/*　editor */
.editor {
  font-family: #222222;
}
.editor h2 {
  position: relative;
  z-index: 0;
  font-size: 2.2rem;
  padding-bottom: 10px;
  margin-bottom: 15px;
  color: #222222;
  font-family: #222222;
  font-style: normal;
  font-weight: bold;
}
.editor h2::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 0;
  background: url(../images/border.png) repeat-x bottom;
  width: 100%;
  height: 3px;
}
.editor h3 {
  font-size: 2rem;
  font-family: #222222;
  font-style: normal;
  font-weight: bold;
  margin-bottom: 15px;
  background: url(../images/bg_green.gif);
  color: #ffffff;
  padding: 10px;
  border-radius: 240px 15px 100px 15px/15px 200px 15px 185px;
  text-shadow: 0 0 3px rgba(144, 198, 199, 0.8);
}
.editor h4 {
  font-size: 2rem;
  color: #222222;
  font-family: #222222;
  font-style: normal;
  font-weight: bold;
  margin-bottom: 15px;
  background: url(../images/bg_blue.jpg);
  padding: 10px;
  border-radius: 240px 15px 100px 15px/15px 200px 15px 185px;
  text-shadow: 0 0 3px rgba(199, 226, 225, 0.8);
}
.editor h5 {
  font-size: 2rem;
  color: #ffffff;
  font-family: #222222;
  font-style: normal;
  font-weight: bold;
  margin-bottom: 15px;
  background: url(../images/bg_deep_brown.jpg);
  padding: 10px;
  border-radius: 240px 15px 100px 15px/15px 200px 15px 185px;
  text-shadow: 0 0 3px rgba(172, 150, 116, 0.8);
}
.editor h6 {
  font-size: 1.8rem;
  color: #222222;
  font-family: #222222;
  font-style: normal;
  font-weight: bold;
  margin-bottom: 15px;
}
.editor a {
  text-decoration: underline;
  color: #222222;
  font-weight: bold;
  transition: 0.3s ease-in-out;
}
.editor a:hover {
  color: #c6336b;
  text-decoration: underline;
}

/* 
 * ↓ 2025-12 追記 ↓
 */
.advantage-main {
  padding: 0 0 30px 0;
}
@media screen and (max-width: 639px) {
  .advantage-main {
    padding: 0;
  }
}
.advantage-sub {
  padding: 50px 0;
}
@media screen and (max-width: 639px) {
  .advantage-sub {
    padding: 30px 0;
  }
}
.advantage .main_title--image {
  margin-bottom: 10px;
}

#company_wrap .guideline .lines p {
  line-height: 1.4;
}

#company_wrap .messagewrap .message p {
  line-height: 1.4;
}

.company_label--image {
  display: block;
  width: 100%;
  margin: 60px 0 50px;
}
@media screen and (max-width: 639px) {
  .company_label--image {
    margin: 30px 0 20px;
  }
}

#cleaning_works {
  margin-bottom: 80px;
  padding: 50px 0 20px;
}
@media screen and (max-width: 639px) {
  #cleaning_works {
    margin-bottom: 40px;
    padding: 30px 0 10px;
  }
}

@media screen and (max-width: 639px) {
  #cleaning_advantage {
    margin-top: 20px;
  }
}
#cleaning_advantage .advantage__buttons {
  display: flex;
  gap: 30px;
  justify-content: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .advantage__buttons {
    flex-direction: column;
    gap: 15px;
    margin-bottom: 30px;
    padding: 0 20px;
  }
}
#cleaning_advantage .advantage__buttons .advantage__button {
  width: 280px;
}
@media screen and (max-width: 639px) {
  #cleaning_advantage .advantage__buttons .advantage__button {
    width: 100%;
  }
}

.price-list {
  max-width: 640px;
  margin: 0 auto;
  padding: 30px 0;
}
@media screen and (max-width: 639px) {
  .price-list {
    width: 100%;
    padding: 20px 0;
  }
}

#contact_wrap {
  margin-top: 0;
}

#top_main .fv-image {
  width: 100%;
  height: auto;
  position: relative;
}
#top_main .fv-image a {
  position: absolute;
  right: -145px;
  bottom: -40px;
  transition: all 0.3s;
  width: 220px;
}
#top_main .fv-image a:hover {
  transform: translateY(-5px);
}
@media screen and (max-width: 639px) {
  #top_main .fv-image a {
    display: none;
  }
}
#top_main .fv-video {
  width: 100%;
  height: auto;
}
#top_main h3 {
  width: 100%;
  max-width: 800px;
  height: auto;
  margin: 30px auto;
}
#top_main p {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.8;
}
@media screen and (max-width: 639px) {
  #top_main p {
    font-size: 1rem;
  }
}

#top_contents .wrap3 {
  gap: 50px;
}
@media screen and (max-width: 639px) {
  #top_contents .wrap3 {
    flex-direction: column;
  }
}
#top_contents .wrap3 .item {
  display: flex;
  flex-direction: column;
  gap: 80px;
}
@media screen and (max-width: 639px) {
  #top_contents .wrap3 .item {
    gap: 20px;
    margin-bottom: 0;
  }
}

.top-item__contents {
  display: flex;
  flex-direction: column;
  min-height: 540px;
}
@media screen and (max-width: 639px) {
  .top-item__contents {
    min-height: auto;
  }
}
.top-item__buttons {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.top-item__buttons a {
  transition: all 0.3s;
}
.top-item__buttons a:hover {
  transform: translateY(-5px);
}

#top_news {
  padding: 120px 0;
}
#top_news .wrap3 {
  gap: 50px;
}
@media screen and (max-width: 639px) {
  #top_news .wrap3 {
    flex-direction: column;
    gap: 30px;
  }
}

.top-news__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 60px;
}
@media screen and (max-width: 639px) {
  .top-news__header {
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 30px;
  }
}
.top-news__header .main_label--image {
  width: 350px;
}
@media screen and (max-width: 639px) {
  .top-news__header .main_label--image {
    width: 100%;
  }
}
.top-news__header a {
  display: inline-block;
  transition: all 0.3s;
  width: 180px;
}
.top-news__header a:hover {
  transform: translateY(-5px);
}
.top-news__item {
  flex: 1;
}
.top-news__item a {
  display: block;
  text-decoration: none;
  color: #222222;
  transition: opacity 0.3s;
}
.top-news__item a:hover {
  opacity: 0.7;
}
.top-news__thumbnail {
  width: 100%;
  aspect-ratio: 3/4;
  overflow: hidden;
}
.top-news__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-news__no-image {
  width: 100%;
  height: 100%;
  background-color: #ccc;
}
.top-news__date {
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 2.6666666667;
  color: #666;
}
.top-news__title {
  font-size: 10px;
  font-size: 1rem;
  line-height: 2.4;
  line-height: 1.6;
  display: -webkit-box;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-family: "M PLUS Rounded 1c";
  font-weight: bold;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-size: 1.05rem;
}

#works_archive .works_wrap .works_header .cate {
  height: 38px;
  padding: 0;
}
#works_archive .works_wrap .works_header .cate img {
  width: auto;
  height: 100%;
}

#works_head_nav .item {
  width: 220px;
}

/*@import "sp";
@import "tablet";
@import "pc";*//*# sourceMappingURL=style.css.map */