@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500;600;700&display=swap');
/* ------------------------------------------
  Utility Class
------------------------------------------ */

/* clearfix */

.clearfix:after {
  clear: both;
  content: '.';
  display: block;
  height: 0;
  visibility: hidden;
}

/* ------------------------------------------
  Common
------------------------------------------ */

* {
  box-sizing: border-box;
  word-break: normal;
  word-wrap: break-word;
}

html {
  font-size: 10px;
  height: 100%;
}

body {
  color: #333;
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 400;
  line-height: 1.7;
  min-width: 1080px;
  position: relative;
  -webkit-text-size-adjust: none;
}

body.layer {
  height: 100%;
  overflow: hidden;
}

a, a img {
  color: inherit;
  text-decoration: none;
  transition: color .3s ease, background .3s ease, opacity .3s ease;
}

a:hover {
  opacity: .75;
  text-decoration: none;
}

a:hover * {
  opacity: .75;
}

a:focus {
  outline: none;
}

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

h1, h2, h3, h4, h5, h6 {
  line-height: inherit;
  margin: 0;
}

ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
}

.clear {
  clear: both;
}

.only_pc {
  display: block !important;
}

.only_sp {
  display: none !important;
}

input, button, select, textarea {
  -webkit-appearance: none;
  background: none;
  border: none;
  border-radius: 0;
  font-family: 'Noto Sans JP', sans-serif;
}

input[type=checkbox], input[type=radio] {
  height: 1px;
  margin: 0;
  opacity: 0;
  position: absolute;
  width: 1px;
  z-index: -1;
}

.container {
  margin: 0 auto;
  width: 1000px;
}

@media screen and (max-width: 767px) {
  body {
    min-width: inherit;
  }
  .container {
    margin: 0 20px;
    width: auto;
  }
  .only_pc {
    display: none !important;
  }
  .only_sp {
    display: block !important;
  }
}

/* ------------------------------------------
  lp_mv
------------------------------------------ */

.lp_mv {
  position: relative;
  z-index: 0;
}

.lp_mv_banner {
  bottom: 100px;
  display: block;
  left: calc(50% - 500px);
  position: absolute;
  width: 520px;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  .lp_mv_banner {
    margin: 20px auto 0;
    position: static;
    width: 300px;
  }
}

/* ------------------------------------------
  lp_concept
------------------------------------------ */

.lp_concept {
  padding: 100px 0 120px;
  position: relative;
  z-index: 0;
}

.lp_concept::before {
  background-image: url(../img/lp_concept_left.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 188px;
  left: 0;
  position: absolute;
  top: 0;
  width: 300px;
  z-index: -1;
}

.lp_concept::after {
  background-image: url(../img/lp_concept_right.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 50px;
  content: '';
  height: 222px;
  position: absolute;
  right: 0;
  width: 400px;
  z-index: -1;
}

.lp_concept_title {
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.lp_concept_main {
  margin-top: 50px;
}

.lp_concept_main_item {
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
}

.lp_concept_main_item + .lp_concept_main_item {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .lp_concept {
    padding: 60px 0;
  }
  .lp_concept::before {
    height: 94px;
    width: 110px;
  }
  .lp_concept::after {
    bottom: 0;
    height: 111px;
    width: 150px;
  }
  .lp_concept_title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .lp_concept_main {
    margin-top: 30px;
  }
  .lp_concept_main_item {
    font-size: 1.3rem;
  }
  .lp_concept_main_item + .lp_concept_main_item {
    margin-top: 15px;
  }
}

/* ------------------------------------------
  lp_reason
------------------------------------------ */

.lp_reason {
  background-image: url(../img/lp_reason_back.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 120px 0;
}

.lp_reason_title {
  color: #fff;
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.lp_reason_flex {
  display: flex;
  margin-top: 80px;
}

.lp_reason_flex_item {
  padding-right: 25px;
  width: 50%;
}

.lp_reason_flex_item:nth-child(2n) {
  padding-left: 25px;
  padding-right: 0;
}

.lp_reason_flex_item_title {
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.416666666666667;
}

.lp_reason_flex_item_text {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.866666666666667;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .lp_reason {
    padding: 60px 0;
  }
  .lp_reason_title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .lp_reason_flex {
    align-items: center;
    flex-direction: column;
    margin-top: 40px;
  }
  .lp_reason_flex.right {
    flex-direction: column-reverse;
  }
  .lp_reason_flex_item {
    margin-top: 20px;
    padding-right: 0;
    width: 100%;
  }
  .lp_reason_flex_item.img {
    margin: 0 auto;
    max-width: 335px;
  }
  .lp_reason_flex_item:nth-child(2n) {
    padding-left: 0;
    padding-right: 0;
  }
  .lp_reason_flex_item_title {
    font-size: 1.8rem;
  }
  .lp_reason_flex_item_text {
    font-size: 1.3rem;
    margin-top: 10px;
  }
}

/* ------------------------------------------
  lp_chance
------------------------------------------ */

.lp_chance {
  background-image: url(../img/lp_chance_back.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 170px 0 120px;
}

.lp_chance_title {
  text-align: center;
}

.lp_chance_title span {
  background: linear-gradient(transparent 80%, #e10000 80%);
  color: #000;
  font-size: 4.8rem;
  font-weight: 900;
  line-height: 1.6;
  padding: 0 10px;
  text-align: center;
}

.lp_chance_desc {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.866666666666667;
  margin-top: 50px;
  text-align: center;
}

.lp_chance_banner {
  display: block;
  margin: 50px auto 0;
  max-width: 800px;
}

@media screen and (max-width: 767px) {
  .lp_chance {
    padding: 60px 0;
  }
  .lp_chance_title {
    text-align: center;
  }
  .lp_chance_title span {
    font-size: 2.4rem;
    line-height: 1.6;
    padding: 0 10px;
  }
  .lp_chance_desc {
    font-size: 1.3rem;
    margin-top: 20px;
    text-align: left;
  }
  .lp_chance_banner {
    margin: 20px auto 0;
  }
}

/* ------------------------------------------
  lp_trainer
------------------------------------------ */

.lp_trainer {
  background-image: url(../img/lp_trainer_back.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 150px 0;
}

.lp_trainer_title {
  color: #fff;
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.lp_trainer_item {
  display: flex;
  margin-top: 100px;
}

.lp_trainer_item_left {
  padding-right: 20px;
  width: 50%;
}

.lp_trainer_item_left_img img {
  width: 100%;
}

.lp_trainer_item_left_text {
  margin-top: 20px;
}

.lp_trainer_item_left_text_name {
  border-bottom: 2px #fff solid;
  color: #fff;
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  padding-bottom: 10px;
}

.lp_trainer_item_left_text_desc {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.388888888888889;
  margin-top: 10px;
}

.lp_trainer_item_right {
  padding-left: 20px;
  width: 50%;
}

.lp_trainer_item_right_item {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: -.04em;
  line-height: 1.866666666666667;
  margin-top: 20px;
}

.lp_trainer_item_right_item:nth-child(1) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .lp_trainer {
    padding: 60px 0;
  }
  .lp_trainer_title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .lp_trainer_item {
    display: block;
    margin-top: 40px;
  }
  .lp_trainer_item_left {
    padding-right: 0;
    width: 100%;
  }
  .lp_trainer_item_left_img {
    margin: 0 auto;
    max-width: 335px;
    width: 100%;
  }
  .lp_trainer_item_left_img img {
    width: 100%;
  }
  .lp_trainer_item_left_text {
    margin-top: 20px;
  }
  .lp_trainer_item_left_text_name {
    font-size: 2rem;
    padding-bottom: 7px;
  }
  .lp_trainer_item_left_text_desc {
    font-size: 1.5rem;
    margin-top: 7px;
  }
  .lp_trainer_item_right {
    margin-top: 20px;
    padding-left: 0;
    width: 100%;
  }
  .lp_trainer_item_right_item {
    font-size: 1.3rem;
    letter-spacing: 0;
    margin-top: 10px;
  }
  .lp_trainer_item_right_item:nth-child(1) {
    margin-top: 0;
  }
}

/* ------------------------------------------
  lp_voice
------------------------------------------ */

.lp_voice {
  padding: 150px 0;
  position: relative;
  z-index: 0;
}

.lp_voice::before {
  background-image: url(../img/lp_voice_left.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 222px;
  left: 0;
  position: absolute;
  top: 70px;
  width: 400px;
  z-index: -1;
}

.lp_voice::after {
  background-image: url(../img/lp_voice_right.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 50px;
  content: '';
  height: 188px;
  position: absolute;
  right: 0;
  width: 300px;
  z-index: -1;
}

.lp_voice_title {
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.lp_voice_item {
  display: flex;
  margin-top: 100px;
}

.lp_voice_item_left {
  padding-right: 20px;
  width: 50%;
}

.lp_voice_item_left_img.first {
  margin: 0 auto;
  max-width: 400px;
}

.lp_voice_item_left_img img {
  width: 100%;
}

.lp_voice_item_left_before {
  display: flex;
  margin-top: 20px;
}

.lp_voice_item_left_before_item {
  padding-right: 20px;
  width: 50%;
}

.lp_voice_item_left_before_item + .lp_voice_item_left_before_item {
  padding-left: 20px;
  padding-right: 0;
}

.lp_voice_item_left_before_item_title {
  background-color: #e10000;
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 27px;
  padding: 0 10px;
  width: 100%;
}

.lp_voice_item_left_before_item_desc {
  margin-top: 10px;
}

.lp_voice_item_left_before_item_desc_item {
  display: flex;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

.lp_voice_item_left_before_item_desc_item .title {
  display: block;
  width: 100px;
}

.lp_voice_item_left_before_item_desc_item .score {
  display: block;
  width: calc(100% - 100px);
}

.lp_voice_item_right {
  padding-left: 20px;
  width: 50%;
}

.lp_voice_item_right_top {
  align-items: center;
  display: flex;
}

.lp_voice_item_right_top_month {
  background-color: #e10000;
  color: #fff;
  font-size: 2.8rem;
  line-height: 103px;
  text-align: center;
  width: 150px;
}

.lp_voice_item_right_top_score {
  padding-left: 25px;
  width: calc(100% - 150px);
}

.lp_voice_item_right_top_score_item {
  display: flex;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.428571428571429;
}

.lp_voice_item_right_top_score_item .title {
  display: block;
  width: 140px;
}

.lp_voice_item_right_top_score_item .score {
  color: #e10000;
  display: block;
  width: calc(100% - 140px);
}

.lp_voice_item_right_main {
  border-top: 2px #333 solid;
  margin-top: 34px;
  padding-top: 30px;
}

.lp_voice_item_right_main_title {
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 1.3;
}

.lp_voice_item_right_main_content {
  margin-top: 10px;
}

.lp_voice_item_right_main_content_item {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .lp_voice {
    padding: 60px 0;
  }
  .lp_voice::before {
    height: 111px;
    top: 30px;
    width: 200px;
  }
  .lp_voice::after {
    bottom: 20px;
    height: 94px;
    width: 150px;
  }
  .lp_voice_title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .lp_voice_item {
    display: block;
    margin-top: 40px;
  }
  .lp_voice_item_left {
    margin: 0 auto;
    max-width: 335px;
    padding-right: 0;
    width: 100%;
  }
  .lp_voice_item_left_img {
    margin: 0 auto;
    max-width: 335px;
  }
  .lp_voice_item_left_img.first {
    margin: 0 auto;
    max-width: 335px;
  }
  .lp_voice_item_left_before {
    display: flex;
    margin-top: 20px;
  }
  .lp_voice_item_left_before_item {
    padding-right: 10px;
    width: 50%;
  }
  .lp_voice_item_left_before_item + .lp_voice_item_left_before_item {
    padding-left: 10px;
    padding-right: 0;
  }
  .lp_voice_item_left_before_item_title {
    font-size: 1.5rem;
    line-height: 19px;
    padding: 0 7px;
  }
  .lp_voice_item_left_before_item_desc {
    margin-top: 10px;
  }
  .lp_voice_item_left_before_item_desc_item {
    display: flex;
    font-size: 1.5rem;
  }
  .lp_voice_item_left_before_item_desc_item .title {
    width: 70px;
  }
  .lp_voice_item_left_before_item_desc_item .score {
    width: calc(100% - 70px);
  }
  .lp_voice_item_right {
    margin-top: 20px;
    padding-left: 0;
    width: 100%;
  }
  .lp_voice_item_right_top {
    align-items: center;
    display: flex;
  }
  .lp_voice_item_right_top_month {
    font-size: 2rem;
    line-height: 70px;
    width: 100px;
  }
  .lp_voice_item_right_top_score {
    padding-left: 20px;
    width: calc(100% - 100px);
  }
  .lp_voice_item_right_top_score_item {
    display: flex;
    font-size: 2rem;
  }
  .lp_voice_item_right_top_score_item .title {
    width: 100px;
  }
  .lp_voice_item_right_top_score_item .score {
    width: calc(100% - 100px);
  }
  .lp_voice_item_right_main {
    border-top: 2px #333 solid;
    margin-top: 20px;
    padding-top: 20px;
  }
  .lp_voice_item_right_main_title {
    font-size: 1.5rem;
  }
  .lp_voice_item_right_main_content {
    margin-top: 10px;
  }
  .lp_voice_item_right_main_content_item {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.7;
  }
}

/* ------------------------------------------
  lp_contact
------------------------------------------ */

.lp_contact {
  padding: 150px 0 150px;
}

.lp_contact .container {
  max-width: 600px;
}

.lp_contact_title {
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.lp_contact_table {
  display: block;
  margin-top: 100px;
  width: 100%;
}

.lp_contact_table tbody {
  display: block;
}

.lp_contact_table tr {
  display: block;
  margin-top: 30px;
}

.lp_contact_table th {
  display: table;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.3;
  position: relative;
  text-align: left;
}

.lp_contact_table th .must {
  background-color: #e10000;
  border-radius: 2px;
  color: #fff;
  font-size: 1.5rem;
  line-height: 20px;
  position: absolute;
  right: -55px;
  text-align: center;
  top: 2px;
  width: 45px;
}

.lp_contact_table td {
  display: block;
  font-size: 1.8rem;
  margin-top: 7px;
}



.lp_contact_table td .error {
  color: #e10000;
  font-size: 1.4rem;
  margin-top: 3px;
}

.lp_contact_table td input[type='text'] {
  background-color: #fff;
  border: 1px #b3b3b3 solid;
  border-radius: 4px;
  font-size: 1.8rem;
  font-weight: 400;
  height: 50px;
  padding: 0 20px;
  width: 100%;
}

.lp_contact_table td textarea {
  background-color: #fff;
  border: 1px #b3b3b3 solid;
  border-radius: 4px;
  font-size: 1.8rem;
  font-weight: 400;
  height: 300px;
  line-height: 1.388888888888889;
  padding: 10px 20px;
  width: 100%;
}

.lp_contact_table td .checkbox {
  display: flex;
  flex-wrap: wrap;
}

.lp_contact_table td input[type='checkbox'] + label {
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.388888888888889;
  margin-right: 30px;
  padding-left: 20px;
  position: relative;
}

.lp_contact_table td input[type='checkbox'] + label::before {
  background-color: #fff;
  content: '';
  height: 12px;
  left: 0;
  position: absolute;
  top: 7px;
  width: 12px;
}

.lp_contact_table td input[type='checkbox']:checked + label::after {
  border: solid #000;
  border-width: 2px 2px 0 0;
  content: '';
  height: 3px;
  left: 2px;
  position: absolute;
  top: 9px;
  transform: rotate(136deg);
  width: 7px;
}

.lp_contact_table td .file {
  background-color: #fff;
  border-radius: 4px;
  height: 50px;
  padding: 8px 20px;
  width: 100%;
}

.lp_contact_table td .file input[type='file'] {
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 400;
}

.contact_submit {
  align-items: center;
  background: rgb(77, 77, 77);
  background: linear-gradient(90deg, rgba(77, 77, 77, 1) 0%, rgba(26, 26, 26, 1) 100%);
  color: #fff;
  cursor: pointer;
  display: flex;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: 900;
  height: 60px;
  justify-content: center;
  line-height: 1;
  margin: 80px auto 0;
  position: relative;
  transition: .3s;
  width: 100%;
}

.contact_submit.confirm {
  background: rgb(255, 0, 0);
  background: linear-gradient(90deg, rgba(255, 0, 0, 1) 0%, rgba(190, 0, 0, 1) 100%);
}

.contact_submit:hover {
  opacity: .7;
}

.lp_contact_attention {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 30px;
}

.lp_contact_attention span {
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .lp_contact {
    padding: 60px 0;
  }
  .lp_contact_title {
    font-size: 2.4rem;
  }
  .lp_contact_table {
    margin-top: 40px;
  }
  .lp_contact_table tr {
    display: block;
    margin-top: 20px;
  }
  .lp_contact_table th {
    font-size: 1.5rem;
  }
  .lp_contact_table th .must {
    font-size: 1.3rem;
    line-height: 17px;
    right: -45px;
    top: 2px;
    width: 35px;
  }
  .lp_contact_table td {
    font-size: 1.5rem;
    margin-top: 5px;
  }
  .lp_contact_table td .error {
    font-size: 1.4rem;
    font-weight: bold;
    margin-top: 3px;
  }
  .lp_contact_table td input[type='text'] {
    font-size: 1.5rem;
    height: 40px;
    padding: 0 15px;
  }
  .lp_contact_table td textarea {
    font-size: 1.5rem;
    height: 300px;
    padding: 10px 15px;
  }
  .contact_submit {
    font-size: 2rem;
    height: 40px;
    margin: 20px auto 0;
  }
  .lp_contact_attention {
    font-size: 1.2rem;
    margin-top: 20px;
  }
  .lp_contact_attention span {
    font-size: 1.3rem;
  }
}

/* ------------------------------------------
  footer
------------------------------------------ */

.footer {
  background: rgb(255, 0, 0);
  background: linear-gradient(90deg, rgba(255, 0, 0, 1) 0%, rgba(190, 0, 0, 1) 100%);
  padding: 60px 0;
}

.footer .container {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.footer_logo {
  display: block;
  width: 350px;
}

.footer_logo img {
  width: 100%;
}

.footer_right_top {
  align-items: center;
  display: flex;
}

.footer_right_top_title {
  color: #fff;
  display: block;
  font-size: 1.5rem;
  line-height: 1;
}

.footer_right_top_sns {
  align-items: center;
  display: flex;
  margin-left: 20px;
}

.footer_right_top_sns_item {
  display: block;
  width: 25px;
}

.footer_right_top_sns_item + .footer_right_top_sns_item {
  margin-left: 12px;
}

.footer_right_top_sns_line {
  display: block;
  margin-left: 12px;
  width: 80px;
}

.footer_right_copy {
  color: #fff;
  font-size: 1rem;
  margin-top: 40px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .footer {
    margin-top: 0;
    padding: 40px 0;
  }
  .footer .container {
    align-items: center;
    flex-direction: column;
  }
  .footer_logo {
    display: block;
    margin: 0 auto;
    width: 230px;
  }
  .footer_right_top {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 20px;
  }
  .footer_right_top_title {
    font-size: 1.5rem;
  }
  .footer_right_top_sns {
    align-items: center;
    display: flex;
    margin-left: 0;
    margin-top: 20px;
  }
  .footer_right_top_sns_item {
    display: block;
    width: 25px;
  }
  .footer_right_top_sns_item + .footer_right_top_sns_item {
    margin-left: 12px;
  }
  .footer_right_top_sns_line {
    display: block;
    margin-left: 12px;
    width: 80px;
  }
  .footer_right_copy {
    color: #fff;
    font-size: 1rem;
    margin: 40px auto 0;
    text-align: center;
    width: 240px;
  }
}

.contact_main.thanks {
  padding-bottom: 100px;
  padding-top: 100px;
}

.contact_main.confirm form {
  padding-bottom: 60px;
}

.contact_main_thanks_title {
  color: #333;
  font-size: 4.2rem;
  line-height: 1.142857142857143;
  text-align: center;
}

.contact_main_thanks_desc {
  color: #333;
  font-size: 2rem;
  line-height: 1.666666666666667;
  margin-top: 60px;
  text-align: center;
}

.sub_contact {
  align-items: center;
  background: rgb(255, 0, 0);
  background: linear-gradient(90deg, rgba(255, 0, 0, 1) 0%, rgba(190, 0, 0, 1) 100%);
  display: flex;
  height: 100px;
  justify-content: center;
  margin: 60px auto 0;
  position: relative;
  width: 600px;
}

.sub_contact span {
  color: #fff;
  display: block;
  font-size: 3.6rem;
  font-weight: 900;
  line-height: 1;
  padding-right: 0;
  position: absolute;
}

@media screen and (max-width: 767px) {
  .contact_main.thanks {
    padding-bottom: 60px;
    padding-top: 60px;
  }
  .contact_main.confirm form {
    padding-bottom: 40px;
  }
  .contact_main_thanks_title {
    font-size: 2.4rem;
  }
  .contact_main_thanks_desc {
    font-size: 1.6rem;
    margin-top: 40px;
  }
  .sub_contact {
    height: 70px;
    margin: 40px auto 0;
    width: calc(100% - 40px);
  }
  .sub_contact span {
    background-size: 16px 19px;
    font-size: 2.5rem;
  }
}

/* ------------------------------------------
  lp_access
------------------------------------------ */

.lp_access {
  background-image: url(../img/lp_access_back.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 150px 0 120px;
}

.access_main_inner {
  align-items: center;
  display: flex;
}

.access_main_inner_map {
  padding-top: 400px;
  position: relative;
  width: 500px;
}

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

.access_main_inner_text {
  margin-left: 70px;
  width: calc(100% - 570px);
}

.access_main_inner_text_top {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.666666666666667;
}

.access_main_inner_text_place {
  margin-top: 30px;
}

.access_main_inner_text_place_name {
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 3rem;
  font-weight: 900;
  line-height: 1.133333333333333;
}

.access_main_inner_text_place_desc {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.666666666666667;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .lp_access {
    padding: 60px 0;
  }
  .access_main {
    padding-bottom: 60px;
  }
  .access_main_content {
    padding-bottom: 14.2857142857143vw;
    padding-top: 14.2857142857143vw;
  }
  .access_main_content .container2 {
    padding-top: 20px;
  }
  .access_main_inner {
    display: block;
  }
  .access_main_inner_map {
    margin-top: 0;
    padding-top: 50vw;
    width: 100%;
  }
  .access_main_inner_text {
    margin-left: 0;
    margin-top: 20px;
    width: 100%;
  }
  .access_main_inner_text_top {
    font-size: 1.3rem;
  }
  .access_main_inner_text_place {
    margin-top: 20px;
  }
  .access_main_inner_text_place_name {
    font-size: 2.4rem;
  }
  .access_main_inner_text_place_desc {
    font-size: 1.3rem;
    margin-top: 10px;
  }
}

/* ------------------------------------------
  lp_contact_line
------------------------------------------ */
.lp_contact_line {
  margin-top: 60px;
}

.lp_contact_line_title {
  font-size: 2rem;
  font-weight: 400;
  text-align: center;
}

.lp_contact_line_btn {
  background-color: #4ea54b;
  border-radius: 40px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
  color: #fff;
  display: table;
  font-size: 3rem;
  font-weight: bold;
  line-height: 80px;
  margin: 40px auto 0;
  padding: 0 20px;
  text-align: center;
  width: 400px;
}

@media screen and (max-width: 767px) {
  .lp_contact_line {
    margin-top: 40px;
  }

  .lp_contact_line_title {
    font-size: 1.6rem;
    font-weight: 400;
    text-align: center;
  }

  .lp_contact_line_btn {
    border-radius: 20px;
    font-size: 2.4rem;
    line-height: 60px;
    margin: 20px auto 0;
    padding: 0 20px;
    text-align: center;
    width: 250px;
  }
}
