@charset "UTF-8";
/*------------------------------
見出し
------------------------------*/
#recommend h2, #choice h2, #reason h2, #voice h2, #faq h2, #comparison h2 {
  text-align: center;
  font-size: 32px;
  color: #aa3977;
  letter-spacing: .14em;
  margin-bottom: 20px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #recommend h2, #choice h2, #reason h2, #voice h2, #faq h2, #comparison h2 {
    font-size: 28px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #recommend h2, #choice h2, #reason h2, #voice h2, #faq h2, #comparison h2 {
    font-size: 22px;
  }
}
/*------------------------------
mv
------------------------------*/
#mv {
  height: 600px;
  background: url("../img/mv.jpg") no-repeat center top;
  background-size: cover;
}
#mv img {
  width: 565px;
}
#mv_text {
  padding: 0 3%;
}
#mv_text_inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: baseline;
  height: 450px;
  flex-direction: column;
  justify-content: center;
}
#mv_text a {
  background-color: #ffdf00;
  display: block;
  text-align: center;
  text-decoration: none;
  font-size: 18px;
  letter-spacing: .14em;
  width: 270px;
  padding: 15px 0 15px 55px;
  border-radius: 30px;
  position: relative;
  margin-top: 30px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
#mv_text a:before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 20px;
  background-image: url("../img/icon_inquiry_mail.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 55px;
  top: 50%;
  margin-top: -11px;
  background-repeat: no-repeat;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #mv img {
    width: 450px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #mv {
    height: 400px;
    background-position: 65% top;
  }
  #mv img {
    width: 300px;
  }
  #mv_text a {
    font-size: 14px;
    width: 220px;
    padding: 10px 0 10px 25px;
  }
  #mv_text a:before {
    width: 16px;
    height: 13px;
    margin-top: -8px;
    left: 35px;
  }
  #mv_text_inner {
    height: 350px;
  }
}
/*------------------------------
menu
------------------------------*/
#menu {
  max-width: 1200px;
  padding: 40px 30px 0 30px;
  margin: -30px auto 85px auto;
  background-color: #fff;
  border-radius: 40px 40px 0 0;
}
#menu h2 {
  text-align: center;
  font-size: 32px;
  color: #aa3977;
  letter-spacing: .14em;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  margin-bottom: 20px;
}
#menu ul {
  display: flex;
  gap: 0 15px;
}
#menu li {
  width: calc(100% / 3);
}
#menu li a {
  height: 100%;
  padding: 24px 24px 24px 75px;
  display: block;
  position: relative;
  border: 1px solid #aaa;
  border-radius: 9999px;
  text-decoration: none;
}
#menu li a:hover {
  border-color: #ff008c;
  background-color: #fff7fb;
  color: #ff008c;
}
#menu li a:before {
  content: '';
  display: inline-block;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 30px;
  top: 50%;
  background-repeat: no-repeat;
}
#menu li:nth-child(1) a:before {
  width: 29px;
  height: 39px;
  background-image: url("../img/icon_menu1.png");
  margin-top: -19.5px;
}
#menu li:nth-child(2) a:before {
  width: 30px;
  height: 26px;
  background-image: url("../img/icon_menu2.png");
  margin-top: -13px;
}
#menu li:nth-child(3) a:before {
  width: 30px;
  height: 31px;
  background-image: url("../img/icon_menu3.png");
  margin-top: -15.5px;
}
#menu li:nth-child(4) a:before {
  width: 30px;
  height: 26px;
  background-image: url("../img/icon_menu4.png");
  margin-top: -13px;
}
/*768px以上*/
@media screen and (min-width: 768px) {

  #menu li a {
    display: flex;
    align-items: center;
    font-size: 15px;
    font-size: clamp(15px, 1.95vw, 18px);
  }

}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #menu {
    width: 94%;
    padding: 40px 30px 0 30px;
  }
  #menu h2 {
    font-size: 28px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #menu ul {
    flex-direction: column;
    gap: 10px 20px;
  }
  #menu li {
    width: 100%;
  }
  #menu li a {
    font-size: 14px;
    padding: 17px 0 17px 65px;
  }
  #menu li:nth-child(1) a:before {
    width: 20px;
    height: 27px;
    margin-top: -13.5px;
  }
  #menu li:nth-child(2) a:before {
    width: 18px;
    height: 16px;
    margin-top: -9px;
  }
  #menu li:nth-child(3) a:before {
    width: 20px;
    height: 21px;
    margin-top: -12px;
  }
  #menu li:nth-child(4) a:before {
    width: 20px;
    height: 19px;
    margin-top: -12px;
  }
}
/*------------------------------
recommend
------------------------------*/
#recommend {
  margin-bottom: 100px;
}
#recommend_inner {
  background-color: #fff7fb;
  padding: 40px 30px;
  border-radius: 10px;
  display: flex;
  flex-direction: row-reverse;
  gap: 45px;
  align-items: center;
}
#recommend_inner img {
  width: 220px;
}
#recommend li {
  font-size: 18px;
  padding-left: 40px;
  position: relative;
  margin-bottom: 24px;
}
#recommend li:before {
  content: '';
  display: inline-block;
  width: 26px;
  height: 22px;
  background-image: url("../img/icon_check.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -11px;
  background-repeat: no-repeat;
}
#recommend li:last-child {
  margin-bottom: 0;
}
#recommend li em {
  color: #ff008c;
  font-weight: bold;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #recommend li {
    font-size: 15px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #recommend_inner img {
    width: 200px;
  }
  #recommend_inner {
    flex-direction: column;
  }
}
/*------------------------------
choice
------------------------------*/
#choice li {
  font-size: 20px;
  font-weight: bold;
  padding-left: 65px;
  position: relative;
  line-height: 50px;
  margin-bottom: 10px;
}
#choice li:last-child {
  margin-bottom: 0;
}
#choice li:before {
  display: inline-block;
  width: 50px;
  height: 50px;
  background-color: #ff008c;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  border-radius: 5px;
  color: #fff;
  font-size: 24px;
  text-align: center;
  line-height: 50px;
  font-weight: normal;
}
#choice li:nth-child(1):before {
  content: '1';
}
#choice li:nth-child(2):before {
  content: '2';
}
#choice li:nth-child(3):before {
  content: '3';
}
#choice li:nth-child(4):before {
  content: '4';
}
#choice li:nth-child(5):before {
  content: '5';
}
#choice li:nth-child(6):before {
  content: '6';
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #choice li {
    font-size: 17px;
    padding-left: 55px;
    line-height: 40px;
  }
  #choice li:before {
    width: 40px;
    height: 40px;
    font-size: 20px;
    line-height: 40px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {}
/*------------------------------
reason
------------------------------*/
#reason h2 {
  margin-bottom: 30px;
}
#reason {
  padding: 30px 3% 0;
  margin-bottom: 65px;
}
#reason ul {
  max-width: 1200px;
  margin: 0 auto;
}
#reason ul li {
  display: flex;
  gap: 45px;
  margin-bottom: 30px;
}
#reason ul li img {
  width: 373px;
}
#reason ul li:last-child {
  margin-bottom: 0;
}
#reason ul li h3 {
  color: #ff008c;
  font-size: 22px;
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px dashed #ff008c;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
#reason ul li p {
  font-size: 15px;
  line-height: 2;
  letter-spacing: .05em;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #reason ul li img {
    width: 250px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #reason ul li {
    flex-direction: column;
    gap: 20px;
  }
  #reason ul li figure {
    text-align: center;
  }
  #reason ul li p {
    font-size: 14px;
  }
}
/*------------------------------
voice
------------------------------*/
#voice {
  padding: 60px 3% 150px;
  background-color: #fff7fb;
  position: relative;
}
#voice #voice_inner {
  max-width: 1200px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px;
  padding: 40px 60px;
  display: flex;
  gap: 35px;
}
#voice #voice_inner img {
  width: 240px;
}
#voice #voice_inner .more {
  position: absolute;
}
#voice #voice_inner #voice_text {
  width: calc(100% - 240px);
}
#voice #voice_inner #voice_text h3 {
  color: #ff008c;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: .14em;
  margin-bottom: 10px;
}
#voice #voice_inner #voice_text h3 span {
  font-size: 13px;
  letter-spacing: 0;
  font-weight: normal;
  color: #111;
  margin-left: 15px;
}
#voice #voice_inner #voice_text h3 + p {
  font-size: 15px;
  line-height: 2;
  margin-bottom: 20px;
}
#voice #voice_inner #voice_price {
  padding: 20px;
  border: 1px solid #ccc;
  margin-bottom: 18px;
}
#voice #voice_inner #voice_price ul {
  display: flex;
  gap: 100px;
  justify-content: center;
  align-items: center;
  position: relative;
}
#voice #voice_inner #voice_price ul:before {
  content: '';
  display: inline-block;
  width: 52.5px;
  height: 32px;
  background-image: url("../img/yajirushi_big.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 50%;
  margin-left: -55px;
  top: 50%;
  margin-top: -16px;
  background-repeat: no-repeat;
}
#voice #voice_inner #voice_price li {
  text-align: center;
}
#voice #voice_inner #voice_price li span {
  display: block;
  text-align: center;
  margin-bottom: 3px;
}
#voice #voice_inner #voice_price li#before {
  font-size: 26px;
}
#voice #voice_inner #voice_price li#before span {
  background-color: #eee;
  width: 170px;
  font-size: 13px;
  padding: 4px 0;
}
#voice #voice_inner #voice_price li#after {
  font-size: 42px;
  color: #ff008c;
  font-weight: bold;
}
#voice #voice_inner #voice_price li#after span {
  background-color: #ff008c;
  width: 230px;
  font-size: 18px;
  padding: 4px 0;
  color: #fff;
  font-weight: normal;
}
#voice #voice_inner #result {
  display: flex;
  align-items: center;
}
#voice #voice_inner #result span {
  background-color: #ff008c;
  color: #fff;
  font-size: 16px;
  width: 108px;
  display: inline-block;
  text-align: center;
  padding: 3px 0;
  margin: 0 20px;
}
#voice #voice_inner #result em {
  color: #ff008c;
  font-size: 30px;
  font-weight: bold;
}
#voice .more a {
  width: 270px;
  padding: 17px 0;
  margin-left: -135px;
  display: block;
  background-color: #ff008c;
  border-radius: 30px;
  position: absolute;
  left: 50%;
  bottom: 60px;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  text-decoration: none;
  letter-spacing: .14em;
}
#voice .more a:hover {
  background-color: #ff00ac;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #voice #voice_inner #result {
    flex-direction: column;
    gap: 10px;
  }
  #voice #voice_inner #voice_price li#before span {
    width: 120px;
    margin: 0 auto;
  }
  #voice #voice_inner #voice_price li#after span {
    width: 160px;
    margin: 0 auto;
  }
  #voice #voice_inner #voice_price li#before {
    font-size: 22px;
  }
  #voice #voice_inner #voice_price li#after {
    font-size: 36px;
  }
}
/*830px以下*/
@media screen and (max-width: 830px) {
  #voice #voice_inner {
    flex-direction: column;
  }
  #voice #voice_inner figure {
    text-align: center;
  }
  #voice #voice_inner #voice_text {
    width: 100%;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #voice .more a {
    font-size: 14px;
    width: 200px;
    margin-left: -100px;
  }
  #voice #voice_inner {
    padding: 40px 5%;
  }
  #voice #voice_inner #voice_text h3 + p {
    font-size: 14px;
  }
  #voice #voice_inner #voice_price li#after span {
    width: 110px;
    font-size: 13px;
  }
  #voice #voice_inner #voice_price li#before span {
    width: 110px;
  }
  #voice #voice_inner #voice_price ul::before {
    width: 40px;
    height: 25px;
    margin-left: -20px;
  }
  #voice #voice_inner #voice_price li#before {
    font-size: 18px;
  }
  #voice #voice_inner #voice_price li#after {
    font-size: 26px;
  }
}
/*------------------------------
reassurance
------------------------------*/
#reassurance {
  padding: 60px 3% 0;
  margin-bottom: 80px;
}
#reassurance_inner {
  max-width: 1200px;
  margin: 0 auto;
}
#reassurance_inner h2 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  font-size: 20px;
  letter-spacing: .14em;
}
#reassurance_inner h2 span {
  background-color: #aa3977;
  font-size: 46px;
  color: #fff;
  padding: 5px 10px;
  border-radius: 10px;
  margin: 0 10px;
}
#reassurance_inner h2 em {
  font-size: 30px;
}
#reassurance_inner h2 + p {
  text-align: center;
  font-size: 38px;
  font-weight: bold;
  letter-spacing: .14em;
  margin: 15px 0;
}
#reassurance_inner h2 + p em {
  padding: 0 30px;
  position: relative;
}
#reassurance_inner h2 + p em:before {
  content: '';
  display: inline-block;
  width: 2px;
  height: 35px;
  background-color: #111;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  transform: skewX(17deg);
}
#reassurance_inner h2 + p em:after {
  content: '';
  display: inline-block;
  width: 2px;
  height: 35px;
  background-color: #111;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: 0;
  top: 0;
  background-repeat: no-repeat;
  transform: skewX(-17deg);
}
#reassurance_intro {
  text-align: center;
  font-size: 15px;
  letter-spacing: .05em;
}
#reassurance ul {
  display: flex;
  gap: 30px;
  margin: 30px 0 50px 0;
}
#reassurance li {
  display: flex;
  flex-direction: row-reverse;
  gap: 30px;
  border: 1px solid #ff008c;
  border-radius: 10px;
  background-color: #fff7fb;
  padding: 25px 30px;
  width: 50%;
  align-items: center;
}
#reassurance li img {
  width: 130px;
}
#reassurance li h3 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #ff008c;
  font-size: 28px;
  letter-spacing: .14em;
  margin-bottom: 10px;
}
#reassurance li h3 span {
  color: #111;
  display: block;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: .14em;
}
#reassurance li p {
  font-size: 15px;
  line-height: 2;
}
#reassurance_about {
  max-width: 925px;
  margin: 0 auto;
}
#reassurance_about h3 {
  background-color: #aa3977;
  color: #fff;
  font-size: 18px;
  text-align: center;
  width: 190px;
  letter-spacing: .14em;
  padding: 6px 0;
  border-radius: 5px;
  margin: 0 auto;
  font-weight: bold;
}
#reassurance_about p {
  border: 1px solid #aa3977;
  border-radius: 10px;
  padding: 35px 30px;
  margin-top: -20px;
}
#reassurance_about p {
  color: #666;
  font-size: 14px;
  letter-spacing: -.03em;
}
#reassurance_about p em {
  font-size: 16px;
  font-weight: bold;
  display: block;
  letter-spacing: .14em;
  color: #111;
  margin-bottom: 10px;
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #reassurance ul {
    flex-direction: column;
  }
  #reassurance li {
    width: 100%;
  }
  #reassurance_inner h2 span {
    font-size: 36px;
  }
  #reassurance_inner h2 + p {
    font-size: 30px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #reassurance {
    padding-top: 30px;
    }
  #reassurance_inner h2 {
    font-size: 16px;
  }
  #reassurance_inner h2 span {
    display: inline-block;
    font-size: 24px;
  }
  #reassurance_inner h2 br.sp+span {
    margin-top: 6px;
    }
  #reassurance_inner h2 em {
    font-size: 16px;
    display: block;
  }
  #reassurance_inner h2 + p {
    font-size: 20px;
  }
  #reassurance_inner h2 + p em {
    padding: 0 20px;
  }
  #reassurance_inner h2 + p em:before {
    height: 20px;
  }
  #reassurance_inner h2 + p em:after {
    height: 20px;
  }
  #reassurance li {
    flex-direction: column;
  }
  #reassurance li h3 {
    font-size: 24px;
  }
  #reassurance li h3 span {
    font-size: 14px;
  }
}
/*------------------------------
faq
------------------------------*/
#faq {
  background-color: #fff7fb;
  padding: 50px 3% 150px 3%;
  position: relative;
}
#faq div {
  max-width: 1200px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 10px;
  padding: 60px;
}
#faq div ul {
  border-bottom: 1px solid #ccc;
  max-width: 1000px;
  margin: 0 auto;
}
#faq div dt, #faq div dd {
  border-top: 1px solid #ccc;
  letter-spacing: .1em;
  padding: 21px 70px;
  position: relative;
}
#faq div dt {
  font-size: 16px;
}
#faq div dt:before, #faq div dd:before {
  display: inline-block;
  font-size: 23px;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 30px;
  background-repeat: no-repeat;
  font-weight: bold;
}
#faq div dt:before {
  content: 'Q';
  color: #407980;
  top: 13px;
}
#faq div dt:hover {
  background-color: #fff7fb;
  cursor: pointer;
}
#faq div dd {
  display: none;
  font-size: 18px;
  font-weight: bold;
  color: #ff008c;
}
#faq div dd:before {
  content: 'A';
  color: #ff008c;
  top: 15px;
}
#faq div dt span {
  position: relative;
  display: block;
}
#faq div dt span:before {
  content: '';
  display: inline-block;
  width: 25px;
  height: 1px;
  background-color: #ccc;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: -40px;
  top: 13px;
  background-repeat: no-repeat;
}
#faq div dt span:after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 25px;
  background-color: #ccc;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: -29px;
  top: 2px;
  background-repeat: no-repeat;
  transition-property: all;
  transition: 0.1s linear;
}
#faq div dt.active span:after {
  transition-property: all;
  transition: 0.1s linear;
  transform: skewX(-90deg);
}
#faq .more a {
  width: 270px;
  padding: 15px 0;
  margin-left: -135px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: 60px;
  background-color: #ff008c;
  border-radius: 30px;
  color: #fff;
  font-size: 18px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-decoration: none;
  text-align: center;
}
#faq .more a:hover {
  background-color: #ff00ac;
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #faq div dt {
    font-size: 14px;
  }
  #faq div dd {
    font-size: 15px;
  }
  #faq .more a {
    font-size: 14px;
    width: 160px;
    margin-left: -80px;
  }
  #faq div {
    padding: 25px 20px;
  }
}
/*------------------------------
comparison
------------------------------*/
#comparison {
  padding: 60px 3%;
}
#comparison table {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  border-left: 1px solid #ffb2dc;
  border-bottom: 1px solid #ffb2dc;
}
#comparison .item {
  background-color: #fff7fb;
  width: 250px;
  font-size: 16px;
}
#comparison th {
  width: 25%;
  background-color: #fff7fb;
  font-size: 18px;
  padding: 20px 10px;
  letter-spacing: .15em;
  border-top: 1px solid #ffb2dc;
  border-right: 1px solid #ffb2dc;
}
#comparison th em {
  font-size: 22px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #ff008c;
}
#comparison td {
  border-top: 1px solid #ffb2dc;
  border-right: 1px solid #ffb2dc;
  font-size: 20px;
  text-align: center;
  padding: 13px 10px;
}
#comparison td em {
  color: #ff008c;
  font-size: 26px;
}
/* minaoshi */
#comparison th.minaoshi,
#comparison td.minaoshi {
  position: relative;
  border-right: 1px solid #ffb2dc;
  }
#comparison th.minaoshi::before,
#comparison td.minaoshi::before {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-left: 6px solid #fccbe6;
  border-right: 6px solid #fccbe6;
  content: '';
  }
#comparison th.minaoshi::before {
  border-top: 6px solid #fccbe6;
  }
#comparison tr:last-of-type td.minaoshi::before {
  border-bottom: 6px solid #fccbe6;
  }

#comparison .more {
  margin-top: 40px;
}
#comparison .more a {
  background-color: #ff008c;
  text-decoration: none;
  color: #fff;
  font-size: 18px;
  width: 270px;
  display: block;
  text-align: center;
  padding: 15px 0;
  border-radius: 30px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0 auto;
  letter-spacing: .14em;
}
#comparison .more a:hover {
  background-color: #ff00ac;
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #comparison th {
    font-size: 14px;
  }
  #comparison .minaoshi em {
    font-size: 16px;
  }
  #comparison td {
    font-size: 14px;
  }
  #comparison .item {
    font-size: 14px;
  }
  #comparison .more a {
    width: 160px;
    font-size: 14px;
  }
}
/*------------------------------
support
------------------------------*/
#support {
  padding: 30px 3% 0;
}
#support_intro {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  color: #aa3977;
  font-size: 32px;
  display: block;
  letter-spacing: .14em;
  margin-bottom: 20px;
}
#support h2 {
  text-align: center;
  font-size: 35px;
  letter-spacing: .14em;
  font-weight: bold;
  margin-bottom: 30px;
}
#support h2 em {
  color: #ff008c;
  font-weight: bold;
  font-size: 50px;
}
#support figure {
  text-align: center;
}
#support figure img {
  width: 100%;
  max-width: 1200px;
}
#support h2 em span {
  position: relative;
}
#support h2 em span:before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #ff008c;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 50%;
  margin-left: -7px;
  top: -20px;
  border-radius: 5px;
  background-repeat: no-repeat;
}
#support #headline_inner {
  padding: 0 40px;
  position: relative;
}
#support #headline_inner:before {
  content: '';
  display: inline-block;
  width: 2px;
  height: 55px;
  background-color: #111;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: -17px;
  background-repeat: no-repeat;
  transform: skewX(17deg);
}
#support #headline_inner:after {
  content: '';
  display: inline-block;
  width: 2px;
  height: 55px;
  background-color: #111;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: 0;
  top: -17px;
  background-repeat: no-repeat;
  transform: skewX(-17deg);
}
#support #complete {
  text-align: center;
  letter-spacing: .14em;
  margin-top: 30px;
  font-size: 16px;
  font-weight: bold;
}
#support #complete em {
  display: block;
  color: #ff008c;
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 5px;
}
/*1190px以下*/
@media screen and (max-width: 1190px) {
  #support h2 em {
    display: block;
    margin: 15px 0 0 0;
  }
  #support #headline_inner {
    padding: 0;
  }
  #support #headline_inner:before {
    top: 50%;
    margin-top: -27.5px;
    left: -210px;
  }
  #support #headline_inner:after {
    top: 50%;
    margin-top: -27.5px;
    right: -40px;
  }
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #support_intro {
    font-size: 28px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #support_intro {
    font-size: 22px;
    letter-spacing: 0;
  }
  #support h2 {
    font-size: 18px;
  }
  #support #headline_inner::before, #support #headline_inner::after {
    display: none;
  }
  #support #complete em {
    font-size: 20px;
  }
  #support #complete {
    font-size: 13px;
  }
  #support h2 em {
    font-size: 40px;
  }
  #support h2 em span::before {
    width: 8px;
    height: 8px;
    top: -14px;
  }
}
/*------------------------------
inquiry
------------------------------*/
#inquiry {
  margin-bottom: 70px;
  margin-top: 85px;
}
#inquiry ul {
  display: flex;
  gap: 70px;
  justify-content: center;
}
#inquiry li span {
  font-size: 16px;
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
#inquiry #inquiry_mail a {
  background-color: #ffdf00;
  width: 580px;
  display: block;
  text-align: center;
  text-decoration: none;
  font-size: 30px;
  letter-spacing: .16em;
  padding: 20px 0px 20px 90px;
  border-radius: 45px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  position: relative;
}
#inquiry #inquiry_mail a:hover {
  background-color: #ffea00;
}
#inquiry #inquiry_mail a:before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 25px;
  background-image: url("../img/icon_inquiry_mail.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 95px;
  top: 50%;
  margin-top: -12.5px;
  background-repeat: no-repeat;
}
#inquiry #inquiry_tel a {
  color: #ffdf00;
  font-size: 55px;
  text-decoration: none;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding-left: 55px;
  position: relative;
  line-height: 1;
}
#inquiry #inquiry_tel a:before {
  content: '';
  display: inline-block;
  width: 43px;
  height: 44px;
  background-image: url("../img/icon_inquiry_tel.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -22px;
  background-repeat: no-repeat;
}
#inquiry #inquiry_tel em {
  font-size: 13px;
  display: block;
  text-align: center;
  margin-top: 8px;
}
/*1100px以下*/
@media screen and (max-width: 1100px) {
  #inquiry ul {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
}
/*1024px以下*/
@media screen and (max-width: 1024px) {}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #inquiry li span {
    font-size: 14px;
  }
  #inquiry #inquiry_mail a {
    width: 280px;
    font-size: 16px;
    letter-spacing: 0;
    padding: 20px 0px 20px 45px;
  }
  #inquiry #inquiry_mail a::before {
    width: 20px;
    height: 17px;
    left: 40px;
    margin-top: -8px;
  }
  #inquiry #inquiry_tel a {
    font-size: 40px;
    padding-left: 36px;
  }
  #inquiry #inquiry_tel a::before {
    width: 26px;
    height: 27px;
    margin-top: -12px;
  }
  #inquiry ul {
    gap: 20px;
  }
  #inquiry {
    margin-bottom: 50px;
    margin-top: 55px;
  }
}