@charset "UTF-8";
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;600&display=swap");
.main-ttl-block {
  text-align: center;
  padding-bottom: 36px;
  background: url(../img/ttl_heart.png) top center/43px auto no-repeat, url(../img/ttl_line.png) bottom center/147px auto no-repeat;
  color: #2c2c2c;
  padding: 60px 0 28px;
  line-height: 1.2;
  margin: 0 auto 40px;
  font-feature-settings: "palt";
}
.main-ttl-block .main-ttl-lead {
  font-size: 22px;
  padding-bottom: 4px;
  font-weight: bold;
  font-style: normal;
  display: block;
}
.main-ttl-block .main-ttl {
  font-size: 34px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .main-ttl-block {
    padding: calc(75/750 * 100vw) 0 calc(40/750 * 100vw);
    margin: 0 auto calc(50/750 * 100vw);
    background: url(../img/ttl_heart.png) top center/calc(60/750 * 100vw) calc(54/750 * 100vw) no-repeat, url(../img/ttl_line.png) bottom center/calc(208/750 * 100vw) calc(14/750 * 100vw) no-repeat;
  }
  .main-ttl-block .main-ttl-lead {
    font-size: calc(36/750 * 100vw);
    padding-bottom: calc(14/750 * 100vw);
  }
  .main-ttl-block .main-ttl {
    font-size: calc(46/750 * 100vw);
    font-weight: bold;
  }
}

/*------------------------------------------------------------------
共通
------------------------------------------------------------------*/
body {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 300;
  font-size: 16px;
  background: #fff;
  color: #151515;
  line-height: 1.7;
  min-width: 1044px;
  overflow-x: hidden;
}
@media screen and (max-width: 767px) {
  body {
    min-width: 100%;
    font-size: calc(26/750 * 100vw);
  }
}

a {
  color: #147ac8;
  transition: 0.2s ease-in-out;
  text-decoration: none;
}
a:hover, a:active, a:focus {
  opacity: 0.7;
}

img {
  width: 100%;
  font-size: 0;
}

.pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
}

.pc-in {
  display: inline;
}
@media screen and (max-width: 767px) {
  .pc-in {
    display: none;
  }
}

.sp-in {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp-in {
    display: inline;
  }
}

.bold-text {
  font-weight: bold;
}

.nomal-text {
  font-weight: normal;
}

.orange-text {
  color: #ff7800;
}

.red-pink {
  color: #e74863;
  font-weight: bold;
}

.pink-txt {
  color: #ff8181;
}

.maker-pink {
  background: linear-gradient(transparent 60%, #fed9d9 60%);
  font-weight: bold;
}

.maker-orange {
  background: linear-gradient(transparent 60%, #ffecd3 60%);
  font-weight: bold;
}

.maker-green {
  background: linear-gradient(transparent 60%, #e2f5f1 60%);
  font-weight: bold;
}

.maker-yellow {
  background: linear-gradient(transparent 60%, #ffeca0 60%);
  font-weight: bold;
}

.maker-cream {
  background: linear-gradient(transparent 60%, #fff5b2 60%);
  font-weight: bold;
}

.dot-text {
  padding-bottom: 10px;
  background: url(../img/dot_line.png) left bottom/8px 4px repeat-x;
}
@media screen and (max-width: 767px) {
  .dot-text {
    padding-bottom: calc(12/750 * 100vw);
    background: url(../img/dot_line.png) left bottom/calc(8/750 * 100vw) calc(4/750 * 100vw) repeat-x;
  }
}

* {
  box-sizing: border-box;
}

.sup {
  vertical-align: top;
  font-size: 70%;
}

.tac {
  text-align: center;
}

.small-text18 {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .small-text18 {
    font-size: calc(30/750 * 100vw);
    line-height: 1 !important;
    font-feature-settings: "palt";
  }
}

.small-text16 {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .small-text16 {
    font-size: calc(20/750 * 100vw);
    line-height: 1 !important;
    font-feature-settings: "palt";
  }
}

.small-text14 {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .small-text14 {
    font-size: calc(16/750 * 100vw);
    line-height: 1 !important;
    font-feature-settings: "palt";
  }
}

.small-text12 {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .small-text12 {
    font-size: calc(16/750 * 100vw);
    line-height: 1 !important;
    font-feature-settings: "palt";
  }
}

@media (min-width: 767px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/*------------------------------------------------------------------
floating
------------------------------------------------------------------*/
.floating-wrap {
  width: 100%;
  position: fixed;
  bottom: 0px;
  z-index: 100;
  box-shadow: 3px 0px 9px 0px rgba(0, 0, 0, 0.2);
  background: #fff;
}

.floating-inner {
  width: 600px;
  height: 120px;
  margin: 0 auto;
  padding: 12px 0 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .floating-inner {
    width: 100%;
    height: calc(160/750 * 100vw);
    padding: calc(10/750 * 100vw) 0 0;
  }
}

.floating-txt {
  font-size: 16px;
  color: #151515;
  text-align: center;
  padding-bottom: 4px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .floating-txt {
    font-size: calc(24/750 * 100vw);
    padding-bottom: calc(4/750 * 100vw);
  }
}

.floating-btn-box {
  display: block;
}
@media screen and (max-width: 767px) {
  .floating-btn-box {
    padding: 0 calc(50/750 * 100vw);
  }
}

.floating-tel-btn {
  display: none;
}
@media screen and (max-width: 767px) {
  .floating-tel-btn {
    width: calc(90/750 * 100vw);
    height: calc(90/750 * 100vw);
    background-color: #4cac69;
    border-radius: 50%;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
  .floating-tel-btn .fa-phone-volume {
    color: #fff;
    font-size: calc(42/750 * 100vw);
  }
}

.floating-cv-btn {
  background: #fc5c50;
  border-radius: 10px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  width: 600px;
  display: block;
  padding: 20px 0 18px;
  line-height: 1;
  position: relative;
  box-shadow: 0px 4px 0px 0px #cb4439;
}
@media screen and (max-width: 767px) {
  .floating-cv-btn {
    width: calc(640/750 * 100vw);
    font-size: calc(30/750 * 100vw);
    padding: calc(30/750 * 100vw) 0;
  }
}

.btn-icon {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  right: 24px;
  display: block;
  width: 24px;
  height: 24px;
  background-color: #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .btn-icon {
    right: calc(30/750 * 100vw);
    width: calc(29/750 * 100vw);
    height: calc(29/750 * 100vw);
  }
}

.btn-icon::before {
  content: "";
  width: 7px;
  display: inline-block;
  height: 7px;
  border: 0px;
  border-top: solid 3px #fc5c50;
  border-right: solid 3px #fc5c50;
  transform: rotate(45deg) translate(-25%, 0%);
}
@media screen and (max-width: 767px) {
  .btn-icon::before {
    width: calc(8/750 * 100vw);
    height: calc(8/750 * 100vw);
    border-top: solid calc(4/750 * 100vw) #fc5c50;
    border-right: solid calc(4/750 * 100vw) #fc5c50;
    right: calc(30/750 * 100vw);
  }
}

/*------------------------------------------------------------------
top-wrap
------------------------------------------------------------------*/
.top-wrap {
  margin: 0 auto;
  width: 100%;
  background-color: #fff;
  height: 70px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .top-wrap {
    height: calc(80/750 * 100vw);
    width: calc(750/750 * 100vw);
  }
}

.top-inner {
  width: 1100px;
  margin: 0 auto;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .top-inner {
    height: calc(80/750 * 100vw);
    width: calc(750/750 * 100vw);
    padding: 0 calc(10/750 * 100vw) 0 calc(20/750 * 100vw);
  }
}

.logo {
  width: 248px;
  padding: 0;
  text-align: left;
  box-sizing: border-box;
  font-size: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  .logo {
    width: calc(332/750 * 100vw);
    padding: 0;
  }
}

.top-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
}
@media screen and (max-width: 767px) {
  .top-container {
    height: calc(80/750 * 100vw);
  }
}

.top-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 510px;
}
@media screen and (max-width: 767px) {
  .top-box {
    width: calc(260/750 * 100vw);
    margin: 0 calc(20/750 * 100vw) 0 0;
  }
}

.top-box-btn {
  position: relative;
  margin-left: 10px;
}
.top-box-btn:after {
  content: "";
  position: absolute;
  top: 49%;
  right: 16px;
  width: 28px;
  height: 7px;
  transform: translateY(-50%);
  background: url(../img/btn_arrow.png) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .top-box-btn {
    margin-left: calc(18/750 * 100vw);
  }
  .top-box-btn:after {
    width: calc(36/750 * 100vw);
    height: calc(10/750 * 100vw);
    right: calc(16/750 * 100vw);
  }
}

.top-box-btn-link {
  width: 300px;
  background: #f3535d;
  background: linear-gradient(to right, #ff725b 0%, #f3535d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=#ff725b, endColorstr=#f3535d,GradientType=1 );
  border-radius: 30px;
  box-sizing: border-box;
  display: block;
  padding: 15px 0;
  line-height: 1;
  text-align: center;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .top-box-btn-link {
    width: calc(260/750 * 100vw);
    padding: calc(18/750 * 100vw) 0;
  }
}

.top-box-btn-link::before {
  content: "";
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -4px;
}
@media screen and (max-width: 767px) {
  .top-box-btn-link::before {
    width: calc(12/750 * 100vw);
    height: calc(12/750 * 100vw);
    border-top: solid calc(4/750 * 100vw) #fff;
    border-right: solid calc(4/750 * 100vw) #fff;
  }
}

.top-box-btn-text {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .top-box-btn-text {
    font-size: calc(22/750 * 100vw);
    padding-right: calc(20/750 * 100vw);
    line-height: 1.2;
  }
}

.top-box-tel {
  width: 201px;
  height: 50px;
}
@media screen and (max-width: 767px) {
  .top-box-tel {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .top-box-tel-icon {
    width: calc(40/750 * 100vw);
    height: calc(40/750 * 100vw);
    text-align: center;
  }
}

/*------------------------------------------------------------------
hero-header
------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .hero-header-wrap {
    margin-bottom: 0;
  }
}

.hero-header-inner {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .hero-header-inner {
    min-height: calc(800/750 * 100vw);
    margin-bottom: 0;
    padding-bottom: calc(20/750 * 100vw);
  }
}

.mv {
  height: 530px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  background: url(../img/mv.webp) center center/cover no-repeat, #fff;
  text-indent: -9999px;
}

@media screen and (max-width: 767px) {
  .mv {
    width: 100%;
    height: calc(920/750 * 100vw);
    background: url(../img/mv_sp.webp) center top/100% auto no-repeat, #d5dadd;
    margin-bottom: 0;
  }
}
/*------------------------------------------------------------------
intro
------------------------------------------------------------------*/
.intro-inner {
  width: 940px;
  margin: 0 auto;
  padding: 50px 0 60px;
}
@media screen and (max-width: 767px) {
  .intro-inner {
    width: 100%;
    padding: calc(40/750 * 100vw) calc(20/750 * 100vw) calc(70/750 * 100vw);
  }
}

.intro-ttl-wrap {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .intro-ttl-wrap {
    margin-bottom: calc(40/750 * 100vw);
  }
}

.main-ttl-wrap {
  text-align: center;
}

.main-ttl {
  font-size: 36px;
  font-weight: 600;
  padding-bottom: 35px;
  background: url("../img/ttl_line.png") bottom center/322px 9px no-repeat;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .main-ttl {
    line-height: 1.3;
    font-size: calc(42/750 * 100vw);
    padding-bottom: calc(30/750 * 100vw);
    background: url("../img/ttl_line.png") bottom center/calc(322/750 * 100vw) calc(9/750 * 100vw) no-repeat;
  }
}

.main-sub-ttl-wrap {
  text-align: center;
}

.main-sub-ttl-inner {
  text-align: center;
  height: 78px;
  background: url("../img/line_l.png") bottom left/37px 62px no-repeat, url("../img/line_r.png") bottom right/37px 62px no-repeat, url("../img/heart.png") center center/86px 76px no-repeat;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .main-sub-ttl-inner {
    min-height: calc(78/750 * 100vw);
    height: auto;
    background: url("../img/line_l.png") bottom left/calc(37/750 * 100vw) calc(62/750 * 100vw) no-repeat, url("../img/line_r.png") bottom right/calc(37/750 * 100vw) calc(62/750 * 100vw) no-repeat, url("../img/heart.png") center center/calc(86/750 * 100vw) calc(76/750 * 100vw) no-repeat;
  }
}

.main-sub-ttl {
  font-size: 22px;
  font-weight: 600;
  padding: 0 54px;
  line-height: 1.45;
}
@media screen and (max-width: 767px) {
  .main-sub-ttl {
    line-height: 1.45;
    padding: 0 calc(72/750 * 100vw);
    font-size: calc(26/750 * 100vw);
  }
}

.intro-sub-ttl-wrap {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .intro-sub-ttl-wrap {
    margin-bottom: calc(40/750 * 100vw);
  }
}

.intro-box-ttl-wrap {
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .intro-box-ttl-wrap {
    margin-bottom: calc(30/750 * 100vw);
  }
}

.intro-box-ttl-inner {
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.intro-box-ttl {
  position: relative;
  color: #fff;
  font-weight: 600;
  font-size: 24px;
  font-feature-settings: "palt";
  padding: 12px 40px 14px;
  background: url("../img/baloon_bg_l_b.png") bottom left/30px 30px no-repeat, url("../img/baloon_bg_l_t.png") top left/32px 28px no-repeat, url("../img/baloon_bg_r_b.png") bottom right/34px 30px no-repeat, url("../img/baloon_bg_r_t.png") top right/34px 30px no-repeat, url("../img/baloon_bg_r_y.png") bottom right/8px 12px repeat-y, url("../img/baloon_bg_c_x.png") bottom center/8px 93px repeat-x, #ff6731;
}
@media screen and (max-width: 767px) {
  .intro-box-ttl {
    font-size: calc(30/750 * 100vw);
    padding: calc(10/750 * 100vw) calc(45/750 * 100vw) calc(12/750 * 100vw);
    background: url("../img/baloon_bg_l_b.png") bottom left/calc(30/750 * 100vw) calc(30/750 * 100vw) no-repeat, url("../img/baloon_bg_l_t.png") top left/calc(32/750 * 100vw) calc(28/750 * 100vw) no-repeat, url("../img/baloon_bg_r_b.png") bottom right/calc(34/750 * 100vw) calc(30/750 * 100vw) no-repeat, url("../img/baloon_bg_r_t.png") top right/calc(34/750 * 100vw) calc(30/750 * 100vw) no-repeat, url("../img/baloon_bg_r_y.png") bottom right/calc(8/750 * 100vw) calc(12/750 * 100vw) repeat-y, url("../img/baloon_bg_c_x.png") bottom center/calc(8/750 * 100vw) calc(93/750 * 100vw) repeat-x, #ff6731;
  }
}

.intro-box-ttl::before {
  content: "";
  width: 24px;
  height: 21px;
  left: 50%;
  bottom: -15.5px;
  transform: translate(-50%, 0%);
  position: absolute;
  background: url("../img/baloon_bg_tail.png") bottom left/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .intro-box-ttl::before {
    width: calc(24/750 * 100vw);
    height: calc(21/750 * 100vw);
    bottom: calc(-15.5/750 * 100vw);
  }
}

.dot-text {
  position: relative;
  padding-top: 0.2em;
}

.dot-text::before {
  position: absolute;
  content: "";
  width: 0.2em;
  height: 0.2em;
  border-radius: 50%;
  background-color: #fff;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.intro-box {
  display: flex;
  width: 940px;
}
@media screen and (max-width: 767px) {
  .intro-box {
    flex-direction: column;
    width: 100%;
    padding: calc(0/750 * 100vw) calc(20/750 * 100vw);
  }
}

.intro-box01, .intro-box02 {
  width: 450px;
  margin-left: 20px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .intro-box01, .intro-box02 {
    width: 100%;
    margin-left: 0;
  }
}

.intro-box01 {
  padding: 0 10px;
}
@media screen and (max-width: 767px) {
  .intro-box01 {
    padding: 0 0 calc(40/750 * 100vw);
  }
}

.intro-box01-txt p {
  font-size: 16px;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .intro-box01-txt p {
    line-height: 1.6;
    font-size: calc(26/750 * 100vw);
  }
}

.intro-box02 {
  background-color: #f0fbf9;
  border-radius: 10px;
  margin-top: 20px;
  padding: 45px 30px 30px 30px;
}
@media screen and (max-width: 767px) {
  .intro-box02 {
    padding: calc(60/750 * 100vw) calc(30/750 * 100vw);
  }
}

.intro-box02-ttl-wrap {
  position: absolute;
  left: 50%;
  top: 0%;
  min-height: 3.4em;
  justify-content: center;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .intro-box02-ttl-wrap {
    min-height: 2.4em;
  }
}

.intro-box02-ttl-inner {
  height: 3.4em;
  background: #0ab290;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .intro-box02-ttl-inner {
    height: 2.4em;
  }
}

.intro-box02-ttl {
  position: relative;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  padding: 0 20px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .intro-box02-ttl {
    font-size: calc(26/750 * 100vw);
  }
}

.intro-box02-ttl-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: -15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #0ab290 #0ab290 #0ab290 transparent;
  border-width: 1.7em 0px 1.7em 15px;
}
@media screen and (max-width: 767px) {
  .intro-box02-ttl-wrap::before {
    border-width: 1.2em 0px 1.2em 15px;
  }
}

.intro-box02-ttl-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  right: -15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #0ab290 transparent #0ab290 #0ab290;
  border-width: 1.7em 15px 1.7em 0;
}
@media screen and (max-width: 767px) {
  .intro-box02-ttl-wrap:after {
    border-width: 1.2em 15px 1.2em 0;
  }
}

.intro-box02-txt {
  font-size: 16px;
  font-weight: 300;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .intro-box02-txt {
    font-size: calc(24/750 * 100vw);
  }
}

.intro-box02-mov {
  font-size: 0;
}

.intro-box02-mov .movie {
  width: 100%;
  height: 220px;
}
@media screen and (max-width: 767px) {
  .intro-box02-mov .movie {
    height: calc(364/750 * 100vw);
    border: 1px solid #838383;
    font-size: 0;
  }
}

/*------------------------------------------------------------------
problem
------------------------------------------------------------------*/
.problem-inner {
  width: 900px;
  margin: 0 auto;
  padding: 40px 0 0px;
  margin-bottom: 90px;
  background: #f6f6f6;
}
@media screen and (max-width: 767px) {
  .problem-inner {
    width: 100%;
    padding: calc(45/750 * 100vw) 0 calc(30/750 * 100vw);
    margin-bottom: calc(100/750 * 100vw);
  }
}

.problem-ttl {
  font-size: 32px;
  text-align: center;
  font-weight: 600;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .problem-ttl {
    font-size: calc(32/750 * 100vw);
    padding-bottom: calc(20/750 * 100vw);
  }
}

.problem-list {
  min-height: 394px;
  width: 750px;
  margin: 0 auto;
  padding: 56px 120px 90px;
  background: url("../img/problem_bg_t.jpg") top center/750px 145px no-repeat, url("../img/problem_bg_b.jpg") bottom center/750px 248px no-repeat, url("../img/problem_bg_c.jpg") center center/750px 1px repeat-y;
}
@media screen and (max-width: 767px) {
  .problem-list {
    width: 100%;
    min-height: calc(660/750 * 100vw);
    padding: calc(62/750 * 100vw) calc(70/750 * 100vw) calc(60/750 * 100vw) calc(88/750 * 100vw);
    background: url("../img/problem_bg_t_sp.jpg") top center/calc(750/750 * 100vw) calc(280/750 * 100vw) no-repeat, url("../img/problem_bg_b_sp.jpg") bottom center/calc(750/750 * 100vw) calc(380/750 * 100vw) no-repeat, url("../img/problem_bg_c_sp.jpg") center center/calc(750/750 * 100vw) calc(1/750 * 100vw) repeat-y;
  }
}

.problem-list-item {
  padding-bottom: 20px;
  display: inline-flex;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .problem-list-item {
    padding-bottom: calc(36/750 * 100vw);
  }
}
.problem-list-item p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .problem-list-item p {
    font-size: calc(26/750 * 100vw);
  }
}
.problem-list-item .maker-green {
  font-weight: 600;
}
.problem-list-item:last-child {
  padding-bottom: 0;
}
.problem-list-item .fa-check-circle {
  color: #0ab290;
  font-size: 20px;
  padding-right: 6px;
  padding-top: 0.2em;
}
@media screen and (max-width: 767px) {
  .problem-list-item .fa-check-circle {
    font-size: calc(28/750 * 100vw);
    padding-right: calc(16/750 * 100vw);
  }
}

/*------------------------------------------------------------------
about
------------------------------------------------------------------*/
.about-inner {
  width: 900px;
  margin: 0 auto;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .about-inner {
    width: 100%;
    padding: 0 calc(20/750 * 100vw) calc(20/750 * 100vw);
  }
}

.about-sub-ttl-wrap {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .about-sub-ttl-wrap {
    margin-bottom: calc(30/750 * 100vw);
  }
}

.about-box {
  background: #fff5f1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 40px;
}
@media screen and (max-width: 767px) {
  .about-box {
    padding: calc(46/750 * 100vw) calc(30/750 * 100vw) calc(36/750 * 100vw);
  }
}

.about-txt-area {
  width: 420px;
}
@media screen and (max-width: 767px) {
  .about-txt-area {
    width: calc(410/750 * 100vw);
  }
}

.about-img-area {
  width: 373px;
  margin-right: 9px;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .about-img-area {
    width: calc(220/750 * 100vw);
    margin-right: 0;
  }
}

.about-ttl {
  font-size: 24px;
  padding-bottom: 10px;
  font-weight: 600;
  background: url("../img/abont-line.jpg") bottom left/6px 4px repeat-x;
}
@media screen and (max-width: 767px) {
  .about-ttl {
    background: url("../img/abont-line.jpg") bottom left/calc(6/750 * 100vw) calc(4/750 * 100vw) repeat-x;
    font-size: calc(28/750 * 100vw);
    padding-bottom: calc(10/750 * 100vw);
  }
}

.about-txt {
  font-size: 16px;
  line-height: 1.75;
  padding-top: 10px;
}
@media screen and (max-width: 767px) {
  .about-txt {
    font-size: calc(22/750 * 100vw);
  }
}

/*------------------------------------------------------------------
contents
------------------------------------------------------------------*/
.contents-inner {
  width: 1000px;
  margin: 0 auto;
  padding: 0 0 100px;
}
@media screen and (max-width: 767px) {
  .contents-inner {
    width: 100%;
    padding: calc(40/750 * 100vw) calc(20/750 * 100vw) calc(90/750 * 100vw);
  }
}

.contents-ttl-wrap {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .contents-ttl-wrap {
    margin-bottom: calc(40/750 * 100vw);
  }
}

.contents-txt {
  font-size: 16px;
  text-align: center;
  padding-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .contents-txt {
    text-align: left;
    font-size: calc(26/750 * 100vw);
    padding-bottom: calc(50/750 * 100vw);
  }
}

.contents-list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.contents-list-item {
  width: 234px;
  margin-right: 20px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .contents-list-item {
    width: calc(340/750 * 100vw);
    margin-right: calc(28/750 * 100vw);
    margin-bottom: calc(50/750 * 100vw);
  }
}

.contents-list-item:nth-child(4n) {
  margin-right: 0px;
}

@media screen and (max-width: 767px) {
  .contents-list-item:nth-child(2n) {
    margin-right: 0px;
  }
}

.tac {
  text-align: center;
}

.contents-list-item-link {
  transition: 0.3s;
  display: block;
}

.contents-list-item-link:hover {
  opacity: 0.7;
}

.contents-list-ttl-wrap {
  position: relative;
  justify-content: center;
  margin-bottom: 12px;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .contents-list-ttl-wrap {
    margin-bottom: calc(10/750 * 100vw);
  }
}

.contents-list-ttl-inner {
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .contents-list-ttl-inner {
    height: calc(42/750 * 100vw);
  }
}

.contents-list-ttl {
  position: relative;
  font-size: 18px;
  font-weight: 600;
  padding: 0 30px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .contents-list-ttl {
    font-size: calc(20/750 * 100vw);
    padding: 0 calc(30/750 * 100vw);
  }
}

.contents-list-ttl-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: -5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 21px 0px 21px 5px;
}
@media screen and (max-width: 767px) {
  .contents-list-ttl-wrap::before {
    left: calc(-7/750 * 100vw);
    border-width: calc(21/750 * 100vw) 0px calc(21/750 * 100vw) calc(8/750 * 100vw);
  }
}

.contents-list-ttl-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  right: -5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 21px 5px 21px 0;
}
@media screen and (max-width: 767px) {
  .contents-list-ttl-wrap:after {
    right: calc(-7/750 * 100vw);
    border-width: calc(21/750 * 100vw) calc(8/750 * 100vw) calc(21/750 * 100vw) 0;
  }
}

.contents-list-img {
  width: 100%;
  background: url(../img/contents_img_bg.jpg) center bottom/100% auto no-repeat, #2ba58e;
  min-height: 146px;
  margin-bottom: 12px;
}
@media screen and (max-width: 767px) {
  .contents-list-img {
    min-height: calc(210/750 * 100vw);
    margin-bottom: calc(15/750 * 100vw);
  }
}

.contents-list-img-inner {
  height: 90px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .contents-list-img-inner {
    height: calc(130/750 * 100vw);
  }
}

.contents-list-img-txt {
  font-size: 18px;
  color: #fff;
  font-feature-settings: "palt";
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .contents-list-img-txt {
    font-size: calc(26/750 * 100vw);
  }
}

.contents-list-sub-ttl {
  font-size: 14px;
  font-weight: 600;
  color: #151515;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .contents-list-sub-ttl {
    font-size: calc(18/750 * 100vw);
    padding-bottom: calc(8/750 * 100vw);
  }
}

.contents-list-tag {
  color: #09a182;
  font-size: 14px;
  padding: 2px 9px;
  border: #09a182 solid 1px;
  border-radius: 5px;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .contents-list-tag {
    font-size: calc(14/750 * 100vw);
    padding: calc(4/750 * 100vw) calc(10/750 * 100vw);
  }
}

.bg-gold::before {
  border-color: #c69958 #c69958 #c69958 transparent;
}
.bg-gold::after {
  border-color: #c69958 transparent #c69958 #c69958;
}
.bg-gold .contents-list-ttl-inner {
  background: #c69958;
}
.bg-gold .contents-list-ttl {
  color: #fff;
}

.bg-silver::before {
  border-color: #b0b0b0 #b0b0b0 #b0b0b0 transparent;
}
.bg-silver::after {
  border-color: #b0b0b0 transparent #b0b0b0 #b0b0b0;
}
.bg-silver .contents-list-ttl-inner {
  background: #b0b0b0;
}
.bg-silver .contents-list-ttl {
  color: #fff;
}

.bg-bronze::before {
  border-color: #d0622c #d0622c #d0622c transparent;
}
.bg-bronze::after {
  border-color: #d0622c transparent #d0622c #d0622c;
}
.bg-bronze .contents-list-ttl-inner {
  background: #d0622c;
}
.bg-bronze .contents-list-ttl {
  color: #fff;
}

.bg-gray::before {
  border-color: #e0e0e0 #e0e0e0 #e0e0e0 transparent;
}
.bg-gray::after {
  border-color: #e0e0e0 transparent #e0e0e0 #e0e0e0;
}
.bg-gray .contents-list-ttl-inner {
  background: #e0e0e0;
}
.bg-gray .contents-list-ttl {
  color: #000;
}

/*------------------------------------------------------------------
free01
------------------------------------------------------------------*/
.free01-wrap {
  background: #fef7ea;
  margin-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .free01-wrap {
    margin-bottom: calc(155/750 * 100vw);
  }
}

.free02-wrap {
  background: #fff2f4;
  margin-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .free02-wrap {
    margin-bottom: calc(155/750 * 100vw);
  }
}

.free03-wrap {
  background: #f4fffd;
}

.free-inner {
  width: 750px;
  margin: 0 auto;
  padding: 68px 0 60px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .free-inner {
    width: 100%;
    padding: calc(80/750 * 100vw) calc(20/750 * 100vw);
  }
}

.free-num {
  display: block;
  position: absolute;
  left: 48%;
  top: 0;
  font-size: 0;
  transform: translate(-50%, -65%);
}

.free-num01 {
  width: 120px;
  height: 103px;
}
@media screen and (max-width: 767px) {
  .free-num01 {
    width: calc(153/750 * 100vw);
    height: calc(129/750 * 100vw);
  }
}

.free-num02 {
  width: 145px;
  height: 104px;
}
@media screen and (max-width: 767px) {
  .free-num02 {
    width: calc(192/750 * 100vw);
    height: calc(129/750 * 100vw);
  }
}

.free-num03 {
  width: 144px;
  height: 104px;
}
@media screen and (max-width: 767px) {
  .free-num03 {
    width: calc(192/750 * 100vw);
    height: calc(129/750 * 100vw);
  }
}

.free-ttl {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  padding-bottom: 40px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .free-ttl {
    font-size: calc(38/750 * 100vw);
    padding-bottom: calc(40/750 * 100vw);
  }
}

.free-txt {
  font-size: 16px;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .free-txt {
    font-size: calc(26/750 * 100vw);
    padding-bottom: calc(40/750 * 100vw);
  }
}

.free01-head-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .free01-head-wrap {
    margin-bottom: calc(15/750 * 100vw);
  }
}

.free01-head-icon {
  background: #ff6731;
  width: 86px;
  height: 86px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
}
@media screen and (max-width: 767px) {
  .free01-head-icon {
    width: calc(103/750 * 100vw);
    height: calc(103/750 * 100vw);
    margin-right: calc(26/750 * 100vw);
  }
}
.free01-head-icon p {
  font-size: 20px;
  color: #fff;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .free01-head-icon p {
    font-size: calc(22/750 * 100vw);
  }
}

.free01-head-txt {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .free01-head-txt {
    font-size: calc(30/750 * 100vw);
  }
}

.free-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 65px;
}
@media screen and (max-width: 767px) {
  .free-box {
    flex-direction: column;
    margin-bottom: calc(90/750 * 100vw);
  }
}

.free01-box-img {
  width: 367px;
  margin-right: 16px;
  height: auto;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .free01-box-img {
    width: calc(547/750 * 100vw);
    margin: 0 auto calc(35/750 * 100vw);
  }
}

.free-box-txt {
  font-weight: 300;
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .free-box-txt {
    font-size: calc(26/750 * 100vw);
  }
}

.free01-box-txt {
  width: 364px;
}
@media screen and (max-width: 767px) {
  .free01-box-txt {
    width: 100%;
  }
}

.free-ballon-box {
  width: 100%;
  position: relative;
  padding: 60px 200px 36px 45px;
}
@media screen and (max-width: 767px) {
  .free-ballon-box {
    padding: calc(70/750 * 100vw) calc(200/750 * 100vw) calc(30/750 * 100vw) calc(20/750 * 100vw);
  }
}

.free01-ballon-box {
  background: url("../img/free01_img02.png") bottom right 40px/138px 181px no-repeat, #fff;
}
@media screen and (max-width: 767px) {
  .free01-ballon-box {
    background: url("../img/free01_img02_sp.png") bottom right calc(18/750 * 100vw)/calc(184/750 * 100vw) calc(308/750 * 100vw) no-repeat, #fff;
  }
}

.free02-ballon-box {
  background: url("../img/free02_img01.png") bottom right 45px/132px 228px no-repeat, #fff;
}
@media screen and (max-width: 767px) {
  .free02-ballon-box {
    background: url("../img/free02_img01_sp.png") bottom right calc(18/750 * 100vw)/calc(158/750 * 100vw) calc(310/750 * 100vw) no-repeat, #fff;
  }
}

.free-ballon-ttl-wrap {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  display: inline-block;
  min-width: 120px;
  max-width: 100%;
  border-radius: 24px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .free-ballon-ttl-wrap {
    min-width: calc(200/750 * 100vw);
  }
}

.free-ballon-ttl-wrap:before {
  content: "";
  position: absolute;
  top: 90%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
}
@media screen and (max-width: 767px) {
  .free-ballon-ttl-wrap:before {
    top: 80%;
  }
}

.free-ballon-ttl-wrap .free-ballon-ttl {
  margin: 0;
  padding: 0;
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  color: #fff;
  padding: 5px 70px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .free-ballon-ttl-wrap .free-ballon-ttl {
    font-size: calc(28/750 * 100vw);
    padding: calc(10/750 * 100vw) calc(80/750 * 100vw);
  }
}

.free01-ballon-box .free-ballon-ttl-wrap {
  background: #ff6731;
}
.free01-ballon-box .free-ballon-ttl-wrap:before {
  border-top: 15px solid #ff6731;
}

.free02-ballon-box .free-ballon-ttl-wrap {
  background: #ff627f;
}
.free02-ballon-box .free-ballon-ttl-wrap:before {
  border-top: 15px solid #ff627f;
}

.free-ballon-box-list-item {
  padding-bottom: 20px;
  display: inline-flex;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .free-ballon-box-list-item {
    line-height: 1.4;
    padding-bottom: calc(30/750 * 100vw);
  }
}
.free-ballon-box-list-item p {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .free-ballon-box-list-item p {
    font-size: calc(26/750 * 100vw);
  }
}
.free-ballon-box-list-item .maker-green {
  font-weight: 600;
}
.free-ballon-box-list-item:last-child {
  padding-bottom: 0;
}
.free-ballon-box-list-item .fa-comment-dots {
  font-size: 22px;
  padding-right: 10px;
  margin-top: 0.1em;
}
@media screen and (max-width: 767px) {
  .free-ballon-box-list-item .fa-comment-dots {
    font-size: calc(28/750 * 100vw);
    padding-right: calc(16/750 * 100vw);
    margin-top: 0.2em;
  }
}

.free01-ballon-box .free-ballon-box-list-item .fa-comment-dots {
  color: #ff6731;
}

.free02-ballon-box .free-ballon-box-list-item .fa-comment-dots {
  color: #ff627f;
}

.free02-box-img-txt {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 20px;
  text-align: center;
  letter-spacing: 1px;
}
@media screen and (max-width: 767px) {
  .free02-box-img-txt {
    font-size: calc(26/750 * 100vw);
  }
}

.free02-box-mov .movie {
  width: 327px;
  height: 184px;
}
@media screen and (max-width: 767px) {
  .free02-box-mov .movie {
    width: 100%;
    height: auto;
    margin-bottom: calc(50/750 * 100vw);
    border: 1px solid #838383;
    font-size: 0;
  }
}

.free02-txt-box {
  width: 424px;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .free02-txt-box {
    width: 100%;
    height: auto;
    padding-left: calc(10/750 * 100vw);
  }
}

.free02-box-ttl {
  text-align: center;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 1px;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .free02-box-ttl {
    font-size: calc(30/750 * 100vw);
    padding-bottom: calc(10/750 * 100vw);
  }
}

.free02-txt-box-txt {
  font-size: 16px;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .free02-txt-box-txt {
    font-size: calc(26/750 * 100vw);
    letter-spacing: 0.05em;
  }
}

.free03-ttl-wrap {
  text-align: center;
}

.free03-ttl01 {
  color: #0ab290;
  display: inline-block;
  font-size: 26px;
  white-space: nowrap;
  letter-spacing: 0.02em;
  padding: 57px 2px 10px;
  margin-bottom: 25px;
  background: url(../img/italic_line_gre.png) bottom left/12px 6px repeat-x, url(../img/clain_icon.png) top center/84px 58px no-repeat;
}
@media screen and (max-width: 767px) {
  .free03-ttl01 {
    font-size: calc(32/750 * 100vw);
    padding: calc(70/750 * 100vw) 0 calc(14/750 * 100vw);
    margin-bottom: calc(30/750 * 100vw);
    background: url(../img/italic_line_gre.png) bottom left/calc(12/750 * 100vw) calc(6/750 * 100vw) repeat-x, url(../img/clain_icon.png) top center/calc(84/750 * 100vw) calc(58/750 * 100vw) no-repeat;
  }
}

.free03-ttl02 {
  color: #0ab290;
  display: inline-block;
  white-space: nowrap;
  font-size: 26px;
  letter-spacing: 0.02em;
  padding: 57px 2px 10px;
  margin-bottom: 25px;
  background: url(../img/italic_line_gre.png) bottom left/12px 6px repeat-x, url(../img/art_icon.png) top center/48px 46px no-repeat;
}
@media screen and (max-width: 767px) {
  .free03-ttl02 {
    font-size: calc(32/750 * 100vw);
    padding: calc(50/750 * 100vw) 0 calc(6/750 * 100vw);
    margin-bottom: calc(30/750 * 100vw);
    background: url(../img/italic_line_gre.png) bottom left/calc(12/750 * 100vw) calc(6/750 * 100vw) repeat-x, url(../img/art_icon.png) top center/calc(48/750 * 100vw) calc(46/750 * 100vw) no-repeat;
  }
}

.free03-box01 {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .free03-box01 {
    margin-bottom: calc(80/750 * 100vw);
    flex-direction: column;
  }
}

.free03-img01 {
  width: 357px;
  height: 237px;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .free03-img01 {
    width: calc(653/750 * 100vw);
    height: auto;
    margin: 0 auto;
    padding-bottom: calc(30/750 * 100vw);
  }
}

.free03-img02 {
  width: 752px;
  height: 372px;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .free03-img02 {
    width: calc(712/750 * 100vw);
    height: auto;
    margin: 0 auto;
    padding-bottom: calc(30/750 * 100vw);
  }
}

.free03-txt01 {
  width: 375px;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .free03-txt01 {
    width: 100%;
    margin-left: 0;
  }
}

.free03-txt01-txt {
  font-size: 16px;
  line-height: 1.8;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .free03-txt01-txt {
    font-size: calc(26/750 * 100vw);
    padding-bottom: calc(30/750 * 100vw);
  }
}

.free03-txt01-box {
  font-size: 12px;
  background: #fff;
  padding: 18px 20px;
}
@media screen and (max-width: 767px) {
  .free03-txt01-box {
    font-size: calc(18/750 * 100vw);
    padding: calc(30/750 * 100vw);
  }
}

.free03-txt {
  font-size: 16px;
  line-height: 1.8;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .free03-txt {
    font-size: calc(26/750 * 100vw);
    padding-bottom: calc(30/750 * 100vw);
  }
}

/*------------------------------------------------------------------
pr
------------------------------------------------------------------*/
.pr-wrap {
  background: #fef7ea;
}

.pr-inner {
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0;
}
@media screen and (max-width: 767px) {
  .pr-inner {
    width: 100%;
    padding: calc(70/750 * 100vw) calc(20/750 * 100vw) 0;
  }
}

.pr-ttl {
  font-weight: 600;
  font-size: 32px;
  text-align: center;
  padding-bottom: 25px;
}
@media screen and (max-width: 767px) {
  .pr-ttl {
    font-size: calc(42/750 * 100vw);
    padding-bottom: calc(50/750 * 100vw);
  }
}

.pr-list {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .pr-list {
    flex-direction: column;
  }
}

.pr-list-item {
  width: 480px;
}
@media screen and (max-width: 767px) {
  .pr-list-item {
    width: 100%;
    padding-bottom: calc(75/750 * 100vw);
  }
}

.pr-ttl-wrap {
  text-align: center;
}

.pr-ttl01 {
  color: #ff6731;
  display: inline-block;
  font-size: 26px;
  letter-spacing: 0.02em;
  padding: 40px 4px 10px;
  margin-bottom: 25px;
  background: url(../img/italic_line_ora.png) bottom left/12px 6px repeat-x, url(../img/map_icon.png) top center/56px 43px no-repeat;
}
@media screen and (max-width: 767px) {
  .pr-ttl01 {
    font-size: calc(32/750 * 100vw);
    padding: calc(50/750 * 100vw) 0 calc(14/750 * 100vw);
    margin-bottom: calc(30/750 * 100vw);
    background: url(../img/italic_line_ora.png) bottom left/calc(12/750 * 100vw) calc(6/750 * 100vw) repeat-x, url(../img/map_icon.png) top center/calc(56/750 * 100vw) calc(43/750 * 100vw) no-repeat;
  }
}

.pr-ttl02 {
  color: #ff6731;
  display: inline-block;
  font-size: 26px;
  letter-spacing: 0.02em;
  padding: 40px 4px 10px;
  margin-bottom: 25px;
  background: url(../img/italic_line_ora.png) bottom left/12px 6px repeat-x, url(../img/cale_icon.png) top center/69px 49px no-repeat;
}
@media screen and (max-width: 767px) {
  .pr-ttl02 {
    font-size: calc(32/750 * 100vw);
    padding: calc(50/750 * 100vw) 0 calc(14/750 * 100vw);
    margin-bottom: calc(30/750 * 100vw);
    background: url(../img/italic_line_ora.png) bottom left/calc(12/750 * 100vw) calc(6/750 * 100vw) repeat-x, url(../img/cale_icon.png) top center/calc(69/750 * 100vw) calc(49/750 * 100vw) no-repeat;
  }
}

.pr-box-txt {
  font-size: 16px;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .pr-box-txt {
    font-size: calc(26/750 * 100vw);
  }
}

.pr-img01 {
  width: 100%;
}

/*------------------------------------------------------------------
bottom
------------------------------------------------------------------*/
.bottom-wrap {
  width: 940px;
  margin: 0 auto;
  height: 562px;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .bottom-wrap {
    width: 100%;
    height: auto;
  }
}
.bottom-wrap img {
  font-size: 0;
  height: 562px;
}
@media screen and (max-width: 767px) {
  .bottom-wrap img {
    height: auto;
  }
}

/*------------------------------------------------------------------
footer
------------------------------------------------------------------*/
.footer-wrap {
  border-top: 2px #8e8e8e solid;
}
@media screen and (max-width: 767px) {
  .footer-wrap {
    border-top: 1px #8e8e8e solid;
  }
}

.footer-inner {
  padding: 35px 0 145px;
  width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .footer-inner {
    width: 100%;
    padding: calc(40/750 * 100vw) calc(20/750 * 100vw) calc(160/750 * 100vw);
  }
}

.footer-box {
  display: flex;
  align-items: center;
  padding-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .footer-box {
    flex-direction: column;
    padding-bottom: calc(30/750 * 100vw);
  }
}

.footer-box-logo {
  width: 334px;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  .footer-box-logo {
    width: calc(426/750 * 100vw);
    padding-bottom: calc(15/750 * 100vw);
  }
}

.footer-box-adress {
  width: 435px;
  padding-left: 30px;
  font-size: 14px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .footer-box-adress {
    font-size: calc(16/750 * 100vw);
    width: 100%;
    padding-left: 0;
    text-align: center;
  }
}

.footer-box-adress-copy {
  font-size: 14px;
  text-align: center;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .footer-box-adress-copy {
    font-size: calc(16/750 * 100vw);
  }
}