/*--------------------------------------
	Override
--------------------------------------*/
body {
  background: #fff;
  color: #333333;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
  }
}

#content {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
}

.fixed-box {
  bottom: 10px;
} 

.fixed-banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  row-gap: 16px;
}

.fixed-banner p {
  margin-bottom: 0;
}

.fixed-box img {
  width: auto;
  max-height: 56px;
}

#header {
  background: none;
  position: absolute;
}

#content {
  padding: 0;
  overflow: hidden;
}
#content > .container {
  max-width: 100%;
  padding: 0 !important;
}

footer {
  background: #EFF7FE;
}

@media screen and (max-width: 1280px) {
  #content .container {
    padding: 0 30px;
  }
}
@media screen and (max-width: 767px) {
  #content .container {
    padding: 0 20px;
  }
  .fixed-box {
    bottom: 0px;
  } 
  .fixed-banner {
    row-gap: 8px;
  }
}
@media screen and (min-width: 1280px) {
  #g_nav .header__nav nav ol > li.current-menu-item {
    position: relative;
  }
  #g_nav .header__nav nav ol > li.current-menu-item::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../img/clinic/navi_arrow.svg) no-repeat bottom center;
    height: 8px;
  }
}
/*--------------------------------------
	elements
--------------------------------------*/
.ttl-style-1 .elementor-heading-title {
  color: #123B5F;
  font-size: 50px;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  z-index: 0;
}
.ttl-style-1 .elementor-heading-title .jp {
  min-width: 50px;
  cursor: vertical-text;
  writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -moz-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  text-orientation: upright;
  word-wrap: break-word;
  white-space: nowrap;
  position: relative;
  z-index: 1;
}
.ttl-style-1 .elementor-heading-title .en {
  opacity: 0.05;
  font-weight: 500;
  font-size: 120px;
  letter-spacing: 0;
  cursor: vertical-text;
  writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -moz-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  text-orientation: sideways-right;
  -o-text-orientation: sideways-right;
  -ms-text-orientation: upright;
  -ms-text-orientation: sideways-right;
  -moz-text-orientation: sideways-right;
  -webkit-text-orientation: sideways-right;
  white-space: nowrap;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .ttl-style-1 .elementor-heading-title {
    font-size: 24px;
  }
  .ttl-style-1 .elementor-heading-title .jp {
    min-width: 24px;
  }
  .ttl-style-1 .elementor-heading-title .en {
    font-size: 60px;
  }
}

/*--------------------------------------
	sections
--------------------------------------*/
#kv .ttl .elementor-heading-title small {
  font-size: 45px;
  letter-spacing: 0.05em;
}
#kv .ttl .elementor-heading-title .txt-indent {
  display: inline-block;
  margin-left: 122px;
}
#kv .ttl .elementor-widget-container {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: relative;
  z-index: 0;
}
#kv .ttl .elementor-widget-container::before {
  content: "";
  width: 233px;
  height: 149px;
  display: block;
  background: url("../img/goodsleep/deco1.png") 0 0/contain no-repeat;
  position: absolute;
  top: -92px;
  right: -114px;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  #kv .ttl .elementor-heading-title small {
    font-size: 23px;
  }
  #kv .ttl .elementor-heading-title .txt-indent {
    margin-left: 80px;
  }
  #kv .ttl .elementor-widget-container {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    position: relative;
    z-index: 0;
  }
  #kv .ttl .elementor-widget-container::before {
    width: 119px;
    height: 76px;
    top: -45px;
    right: -45px;
  }
}

#about .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 35px;
  letter-spacing: 0.05em;
}
#about .ttl .elementor-heading-title .en {
  display: block;
  margin-bottom: 5px;
  font-size: 16px;
  line-height: 26px;
  letter-spacing: 0;
}
#about .ttl .elementor-heading-title .jp {
  display: block;
}
#about .set .txt strong {
  font-weight: 600;
  font-size: 28px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  #about .ttl .elementor-heading-title {
    font-size: 20px;
    line-height: 30px;
  }
  #about .ttl .elementor-heading-title .en {
    font-size: 14px;
    line-height: 24px;
  }
  #about .set .txt strong {
    font-size: 20px;
  }
}

#symptoms .container {
  max-width: 1400px;
  padding-left: 110px;
}
#symptoms .h2box {
  width: auto;
  position: absolute;
  top: 0;
  left: 0;
}
#symptoms .h2box .ttl-style-1 .elementor-heading-title .en {
  top: -94px;
  left: -50px;
}
#symptoms .set1 .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 35px;
  letter-spacing: 0.05em;
}
#symptoms .set1 .ttl .elementor-heading-title > span {
  display: inline-block;
  padding: 4px 19px 5px;
  border: 1px solid;
}
#symptoms .set2 .ttl .elementor-heading-title {
  padding-bottom: 18px;
  border-bottom: 1px solid;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
#symptoms .set2 .gr {
  padding: 23px 25px 25px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: rgba(18, 59, 95, 0.8);
  color: #fff;
}
#symptoms .set2 .gr .elementor-widget-text-editor {
  padding: 0 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
}
@media screen and (max-width: 1024px) {
  #symptoms .container {
    padding-left: 160px;
  }
  #symptoms .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 60px;
  }
  #symptoms .h2box .ttl-style-1 .elementor-heading-title .en {
    left: 20px;
  }
}
@media screen and (max-width: 767px) {
  #symptoms .container {
    padding-left: 80px;
  }
  #symptoms .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 30px;
  }
  #symptoms .h2box .ttl-style-1 .elementor-heading-title .en {
    top: -40px;
    left: 10px;
  }
  #symptoms .set1 .ttl .elementor-heading-title {
    font-size: 20px;
    line-height: 30px;
    text-align: center;
  }
  #symptoms .set1 .ttl .elementor-heading-title > span {
    display: block;
    padding: 10px 5px 11px;
  }
  #symptoms .set2 .ttl .elementor-heading-title {
    padding-bottom: 15px;
    font-size: 18px;
  }
  #symptoms .set2 .gr {
    padding: 20px 15px 25px;
  }
  #symptoms .set2 .gr .elementor-widget-text-editor {
    padding: 0 5px;
  }
}

#service .container {
  max-width: 1400px;
  padding-right: 140px;
}
#service .h2box {
  width: auto;
  position: absolute;
  top: 0;
  right: 0;
}
#service .h2box .ttl-style-1 .elementor-heading-title {
  padding-right: 16px;
}
#service .h2box .ttl-style-1 .elementor-heading-title .en {
  color: #fff;
  top: -80px;
  left: -46px;
  opacity: 0.7;
}
#service .set1 .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#service .set2 .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#service .set2 .elementor-widget-image-box .elementor-image-box-title {
  margin-top: 29px;
  padding: 0;
  background: none;
  color: #333;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
#service .set2 .elementor-widget-image-box .elementor-image-box-img {
  width: 100% !important;
  margin: 0 !important;
  float: none;
}
#service .set2 .elementor-widget-image-box .elementor-image-box-img img {
  -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
}
#service .set3 .ttl {
  text-align: center;
}
#service .set3 .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
#service .set3 dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
#service .set3 dl + dl {
  margin-top: 1px;
}
#service .set3 dl small {
  margin-left: 10px;
  font-size: 12px;
  letter-spacing: 0.05em;
}
#service .set3 dl dt, #service .set3 dl dd {
  padding: 10px 5px 11px;
}
#service .set3 dl dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 200px;
          flex: 0 0 200px;
  background: #123B5F;
  color: #fff;
}
#service .set3 dl dd {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}
@media screen and (max-width: 1024px) {
  #service .h2box .ttl-style-1 .elementor-heading-title {
    padding-right: 30px;
  }
}
@media screen and (max-width: 767px) {
  #service .container {
    padding-right: 80px;
  }
  #service .h2box .ttl-style-1 .elementor-heading-title {
    padding: 0 30px 0 12px;
  }
  #service .h2box .ttl-style-1 .elementor-heading-title .en {
    top: -40px;
    left: -10px;
  }
  #service .set1 .ttl .elementor-heading-title {
    font-size: 20px;
  }
  #service .set2 .ttl .elementor-heading-title {
    font-size: 20px;
  }
  #service .set2 .elementor-widget-image-box .elementor-image-box-title {
    margin-top: 25px;
    font-size: 18px;
  }
  #service .set3 .ttl {
    text-align: left;
  }
  #service .set3 .ttl .elementor-heading-title {
    font-size: 20px;
  }
  #service .set3 dl {
    display: block;
  }
  #service .set3 dl + dl {
    margin-top: 0px;
  }
  #service .set3 dl small {
    margin-left: 0px;
  }
  #service .set3 dl dt, #service .set3 dl dd {
    padding: 6px 5px;
  }
}

#flow .container {
  max-width: 1400px;
  padding-left: 160px;
}
#flow .h2box {
  width: auto;
  position: absolute;
  top: 0;
  left: 0;
}
#flow .h2box .ttl-style-1 .elementor-heading-title {
  padding-top: 15px;
}
#flow .h2box .ttl-style-1 .elementor-heading-title .en {
  color: #fff;
  top: -66px;
  left: -50px;
  opacity: 0.7;
}
#flow .flow .flow__ttl .elementor-heading-title {
  color: #123B5F;
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#flow .flow .flow__ttl .elementor-heading-title .number {
  display: block;
  margin-bottom: 23px;
  font-size: 40px;
  line-height: 1;
  letter-spacing: 0;
}
#flow .flow .flow__ttl .elementor-heading-title .number small {
  margin-right: 6px;
  font-size: 20px;
}
#flow .flow .flowbox {
  padding: 41px 60px 45px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  line-height: 1.8;
}
#flow .flow .flowbox:not(.last) {
  margin-bottom: 48px;
  position: relative;
}
#flow .flow .flowbox:not(.last)::after {
  content: "";
  width: 0;
  height: 0;
  border: 17px solid transparent;
  border-top-color: #6BB1E5;
  border-bottom: 0;
  position: absolute;
  bottom: -42px;
  left: 50%;
}
#flow .flow::after {
  display: none;
}
#flow .flow .flowbox .detailbox {
  padding: 49px 40px 35px 43px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #FBFBFB;
}
#flow .flow .flowbox .detailbox .detail__ttl {
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#flow .flow .flowbox .detailbox .detail__ttl .highlight {
  color: #6BB1E5;
  font-size: 24px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
  #flow .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 60px;
  }
  #flow .h2box .ttl-style-1 .elementor-heading-title .en {
    left: 20px;
  }
}
@media screen and (max-width: 767px) {
  #flow .container {
    padding-left: 80px;
  }
  #flow .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 30px;
  }
  #flow .h2box .ttl-style-1 .elementor-heading-title .en {
    top: -30px;
    left: 10px;
  }
  #flow .flow .flow__ttl .elementor-heading-title {
    font-size: 20px;
  }
  #flow .flow .flow__ttl .elementor-heading-title .number {
    margin-bottom: 20px;
    font-size: 32px;
  }
  #flow .flow .flow__ttl .elementor-heading-title .number small {
    margin-right: 3px;
    font-size: 18px;
  }
  #flow .flow .flowbox {
    padding: 25px 20px 30px;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  #flow .flow .flowbox:not(.last) {
    margin-bottom: 35px;
  }
  #flow .flow .flowbox:not(.last)::after {
    bottom: -37px;
  }
  #flow .flow .flowbox .detailbox {
    padding: 20px;
  }
  #flow .flow .flowbox .detailbox .detail__ttl {
    font-size: 16px;
  }
  #flow .flow .flowbox .detailbox .detail__ttl .highlight {
    font-size: 20px;
  }
}

#greeting .container {
  max-width: 1400px;
  padding-left: 100px;
}
#greeting .h2box {
  width: auto;
  position: absolute;
  top: 0;
  left: 0;
}
#greeting .h2box .ttl-style-1 .elementor-heading-title {
  padding-left: 50px;
}
#greeting .h2box .ttl-style-1 .elementor-heading-title .en {
  top: -50px;
}
#greeting .set {
  max-width: 540px;
  margin-left: auto;
}
#greeting .set .ttl .elementor-heading-title {
  font-weight: 500;
  font-size: 30px;
  line-height: 1.5;
  letter-spacing: 0.15em;
}
#greeting .set .sign .elementor-heading-title {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
#greeting .set .sign .elementor-heading-title .fzb {
  display: inline-block;
  margin-top: 5px;
  font-size: 28px;
}
#greeting .set .sign .elementor-heading-title small {
  font-size: 12px;
}
@media screen and (max-width: 1024px) {
  #greeting {
    background: none;
  }
  #greeting .container {
    padding-left: 160px;
  }
  #greeting .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 60px;
  }
  #greeting .h2box .ttl-style-1 .elementor-heading-title .en {
    left: 20px;
  }
}
@media screen and (max-width: 767px) {
  #greeting .container {
    padding-left: 80px;
  }
  #greeting .h2box .ttl-style-1 .elementor-heading-title {
    padding-left: 30px;
  }
  #greeting .h2box .ttl-style-1 .elementor-heading-title .en {
    top: -30px;
    left: 10px;
  }
  #greeting .set .ttl .elementor-heading-title {
    font-size: 24px;
  }
  #greeting .set .sign .elementor-heading-title {
    font-size: 12px;
  }
  #greeting .set .sign .elementor-heading-title .fzb {
    font-size: 24px;
  }
  #greeting .set .sign .elementor-heading-title small {
    font-size: 11px;
  }
}

#company .container {
  max-width: 1400px;
  padding-right: 100px;
}
#company .h2box {
  width: auto;
  position: absolute;
  top: 0;
  right: 0;
}
#company .h2box .ttl-style-1 .elementor-heading-title {
  padding-left: 50px;
}
#company .h2box .ttl-style-1 .elementor-heading-title .en {
  color: #fff;
  top: -50px;
  opacity: 0.7;
}
#company .shopinfo dl {
  padding: 30px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #D7D7D7;
  font-weight: 500;
  line-height: 1.5;
}
#company .shopinfo dl h1 {
  font-weight: 500;
}
#company .shopinfo dl dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 260px;
          flex: 0 0 260px;
  color: #123B5F;
}
#company .shopinfo dl dd {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
}
#company .map {
  height: 340px;
}
#company .map iframe {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  #company .h2box .ttl-style-1 .elementor-heading-title {
    padding-right: 30px;
  }
}
@media screen and (max-width: 767px) {
  #company .container {
    padding-right: 80px;
  }
  #company .h2box .ttl-style-1 .elementor-heading-title {
    padding: 0 30px 0 12px;
  }
  #company .h2box .ttl-style-1 .elementor-heading-title .en {
    top: -40px;
    left: -10px;
  }
  #company .shopinfo dl {
    padding: 20px 0;
    display: block;
  }
  #company .shopinfo dl dt {
    font-size: 13px;
    letter-spacing: 0.05em;
  }
  #company .shopinfo dl dd {
    margin-top: 5px;
  }
  #company .map {
    width: auto;
    max-width: none;
    margin-right: -80px;
    margin-left: -20px;
  }
}

#contact .btnTel {
  text-align: center;
}
#contact .btnTel .elementor-heading-title a {
  width: 617px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 45px;
     -moz-column-gap: 45px;
          column-gap: 45px;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #6BB1E5;
  color: #fff;
  font-size: 56px;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
}
#contact .btnTel .elementor-heading-title a::before {
  content: "";
  -ms-flex-item-align: center;
      align-self: center;
  width: 49px;
  height: 82px;
  display: block;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 49 82' fill='none'%3E%3Cpath d='M4.36021 20.6785C-0.0100675 23.5127 -0.868506 32.3725 0.781286 39.5934C2.06632 45.2167 4.79828 52.7598 9.40504 59.863C13.7388 66.5451 19.785 72.5367 24.3953 76.0033C30.3155 80.4547 38.755 83.2838 43.1253 80.4496C45.3352 79.0163 48.6182 75.1005 48.768 74.3979C48.768 74.3979 46.8427 71.4293 46.4203 70.7781L39.9639 60.8232C39.4841 60.0835 36.4753 60.7596 34.9468 61.6254C32.8851 62.7936 30.9862 65.9281 30.9862 65.9281C29.5724 66.7448 28.3884 65.9312 25.9143 64.7926C22.8736 63.3936 19.4549 59.0466 16.7341 55.1094C14.2489 51.0194 11.6741 46.1251 11.6366 42.7783C11.606 40.0549 11.346 38.6419 12.6681 37.6842C12.6681 37.6842 16.3046 37.2288 18.2121 35.8228C19.6258 34.7803 21.4704 32.3089 20.9906 31.5692L14.5343 21.6143C14.1119 20.9629 12.1866 17.9945 12.1866 17.9945C11.4843 17.8445 6.56998 19.2452 4.36021 20.6785Z' fill='white'/%3E%3Cpath d='M40.9648 28.1086C43.5923 17.3999 37.3496 6.44906 26.7962 3.25417L27.6873 0C40.0353 3.68745 47.3369 16.4958 44.219 28.9997L40.9648 28.1086Z' fill='white'/%3E%3Cpath d='M33.9125 26.1785C35.4814 19.3579 31.5334 12.4324 24.8651 10.3075L25.7565 7.05225C34.2191 9.67123 39.2257 18.4537 37.1678 27.07L33.9125 26.1785Z' fill='white'/%3E%3Cpath d='M26.8557 24.2413C27.3796 21.3135 25.7225 18.4064 22.9362 17.3657L23.8294 14.104C28.4067 15.6488 31.12 20.4087 30.1173 25.1345L26.8557 24.2413Z' fill='white'/%3E%3C/svg%3E") 0 0/contain no-repeat;
}
#contact .btnTel .elementor-heading-title a small {
  display: block;
  margin-bottom: 10px;
  font-size: 20px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  #contact .btnTel .elementor-heading-title a {
    width: 100%;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
    padding: 20px 10px;
    font-size: 31px;
  }
  #contact .btnTel .elementor-heading-title a::before {
    width: 27px;
    height: 45px;
  }
  #contact .btnTel .elementor-heading-title a small {
    font-size: 11px;
  }
}

#contactform .inquiryFormTable {
  padding-top: 0;
  border-top: 0;
}
#contactform .inquiryFormTable dl {
  border-top: 1px solid #D7D7D7;
}
#contactform .inquiryFormTable dl dt {
  padding: 40px 0 30px;
  color: #123B5F;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
#contactform .inquiryFormTable dl dd {
  padding: 30px 0;
}
#contactform .inquiryFormTable input, #contactform .inquiryFormTable textarea, #contactform .inquiryFormTable select {
  background: #fff;
  border-color: #D7D7D7;
}
#contactform .inquiryFormTable .wpcf7-radio {
  display: block;
}
#contactform .inquiryFormTable .wpcf7-radio > span {
  padding-top: 0;
}
#contactform .inquiryFormTable .wpcf7-list-item {
  margin: 0;
  color: #123B5F;
}
#contactform .inquiryFormTable input[type=radio] + span::before {
  content: "";
  width: 17px;
  height: 17px;
  border: 1px solid #D7D7D7;
  border-radius: 100%;
}
#contactform .inquiryFormTable input[type=radio]:checked + span::before {
  content: "\ea54";
  color: #123B5F;
}
#contactform .inquiryFormTable input[type=radio]:focus + span::before {
  -webkit-box-shadow: none;
          box-shadow: none;
}
#contactform .inquiryFormTable input[type=checkbox] + span::before {
  content: "";
  width: 15px;
  height: 15px;
  border: 1px solid #D7D7D7;
}
#contactform .inquiryFormTable input[type=checkbox]:checked + span::before {
  content: "\ea52";
  color: #123B5F;
}
#contactform .inquiryFormTable input[type=checkbox]:focus + span::before {
  -webkit-box-shadow: none;
          box-shadow: none;
}
#contactform .inquiryFormTable .required {
  width: 40px;
  height: 20px;
  background: #9F0000;
  border-radius: 0;
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 0.05em;
  top: 47px;
}
#contactform .inquiryFormTable .btBox {
  margin: 0;
}
#contactform .inquiryFormTable .btBox input[type=submit].disabled {
  width: 360px;
  background: #6BB1E5 !important;
  border: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
#contactform .inquiryFormTable .acceptance {
  margin-bottom: 70px;
  padding: 50px 0;
  border-top: 1px solid #D7D7D7;
  border-bottom: 1px solid #D7D7D7;
}
#contactform .inquiryFormTable .acceptance .optional {
  width: auto;
  height: auto;
  margin: 0;
  background: none;
  color: #123B5F;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
  top: auto;
  right: auto;
}
#contactform .inquiryFormTable .acceptance a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
#contactform .inquiryFormTable .acceptance a:hover {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  #contactform .inquiryFormTable dl {
    border-top: 1px solid #D7D7D7;
  }
  #contactform .inquiryFormTable dl dt {
    padding: 20px 0 15px;
    font-size: 14px;
  }
  #contactform .inquiryFormTable dl dd {
    padding: 0 0 25px;
  }
  #contactform .inquiryFormTable .required {
    position: absolute;
    top: 23px;
    right: 0;
  }
  #contactform .inquiryFormTable .acceptance {
    margin-bottom: 50px;
    padding: 30px 0;
  }
  #contactform .inquiryFormTable .acceptance .optional {
    font-size: 14px;
  }
}

#group .container {
  max-width: 1270px;
}
#group .ttl h2.elementor-heading-title .en {
  display: block;
  margin-bottom: 10px;
  color: #6BB1E5;
  font-family: "Roboto", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
}
#group .ttl h2.elementor-heading-title .jp {
  display: block;
}
#group .set {
  padding: 48px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #6BB1E5;
  position: relative;
  z-index: 0;
}
#group .set::before {
  content: "";
  background: #fff;
  border-radius: 30px;
  position: absolute;
  inset: 0;
  z-index: -1;
}
#group .set .box-style {
  padding: 64px 20px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
}
#group .set .box-style .ttl {
  margin-bottom: 60px;
}
#group .set .box-style .ttl .elementor-heading-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
}
#group .set .box-style .ttl .elementor-heading-title small {
  font-size: 14px;
}
#group .set .box-style .elementor-button {
  width: 100%;
  padding: 23px 20px 24px 50px;
  background-color: #fff;
  border-radius: 99px;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 17px;
  letter-spacing: 0.04em;
  position: relative;
}
#group .set .box-style .elementor-button::before {
  content: "";
  width: 32px;
  height: 24px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23333333'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat;
  position: absolute;
  top: 50%;
  left: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
#group .set .box-style .btnTel {
  margin-top: auto;
}
#group .set .box-style .btnTel .elementor-button {
  font-size: 20px;
}
#group .set .box-style .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23333333'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
#group .set .box-style.green .elementor-button {
  color: #66C48A;
}
#group .set .box-style.green .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%2366C48A'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
}
#group .set .box-style.green .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%2366C48A'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
#group .set .box-style.pink .elementor-button {
  color: #F48C94;
}
#group .set .box-style.pink .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23F48C94'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
}
#group .set .box-style.pink .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23F48C94'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
#group .set .box-style.orange .elementor-button {
  color: #FBA06D;
}
#group .set .box-style.orange .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23FBA06D'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
}
#group .set .box-style.orange .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23FBA06D'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
#group .set .box-style.yellow .elementor-button {
  color: #EFBB66;
}
#group .set .box-style.yellow .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23EFBB66'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
}
#group .set .box-style.yellow .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%23EFBB66'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
#group .set .box-style.blue .elementor-button {
  color: #6BB1E5;
}
#group .set .box-style.blue .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%236BB1E5'/%3E%3Cpath d='M13.5 7L18.5 12L13.5 17' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
}
#group .set .box-style.blue .btnTel .elementor-button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none'%3E%3Crect width='32' height='24' rx='12' fill='%236BB1E5'/%3E%3Cpath d='M19.1999 14.242C17.0712 16.482 11.6412 11.1006 13.778 8.85171C15.0828 7.47836 13.6091 5.90945 12.7931 4.75478C11.2616 2.59031 7.90091 5.57878 8.00224 7.48014C8.32489 13.4766 14.8108 20.5825 21.0914 19.962C23.0558 19.7683 25.3134 16.2198 23.0602 14.9229C21.9332 14.274 20.3857 12.994 19.1999 14.2411' fill='white'/%3E%3C/svg%3E");
}
@media screen and (max-width: 1024px) {
  #group .img-big img {
    width: 100%;
    height: 500px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  #group .img-big img {
    height: 70vw;
  }
  #group .set {
    padding: 40px 20px;
  }
  #group .set .box-style {
    padding: 40px 20px 24px;
  }
  #group .set .box-style .ttl {
    margin-bottom: 40px;
  }
  #group .set .box-style .ttl .elementor-heading-title {
    font-size: 17px;
  }
  #group .set .box-style .ttl .elementor-heading-title small {
    font-size: 14px;
  }
  #group .set .box-style .elementor-button {
    padding: 23px 20px 24px 50px;
    font-size: 17px;
  }
  #group .set .box-style .elementor-button::before {
    width: 32px;
    height: 24px;
    left: 20px;
  }
  #group .set .box-style .btnTel .elementor-button {
    font-size: 20px;
  }
}