.mv {
  background-position: center;
  background-size: cover;
  background-image: url(../img/mv-bg_sp.webp)
}

@media screen and (min-width: 768px), print {
  .mv {
    background-image: url(../img/mv-bg.webp)
  }
}

.mv-inner {
  width: 100%;
  padding: calc((135/750)*100vw) 0 calc((110/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .mv-inner {
    margin: auto;
    width: min(calc((1000/1040)*100vw), 1000px);
    padding: min(calc((66/1040)*100vw), 66px) 0 min(calc((60/1040)*100vw), 60px)
  }
}

.mv-inner-ttl {
  line-height: 1;
  text-align: center;
  letter-spacing: .2em;
  font-size: calc((46/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .mv-inner-ttl {
    font-size: min(calc((36/1040)*100vw), 36px)
  }
}

.mv-inner-subTtl {
  line-height: 1;
  text-align: center;
  font-size: calc((25/750)*100vw);
  margin-top: calc((20/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .mv-inner-subTtl {
    font-size: min(calc((15/1040)*100vw), 15px);
    margin-top: min(calc((18/1040)*100vw), 18px)
  }
}

.breadcrumb-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: auto;
  width: calc((690/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .breadcrumb-list {
    width: min(calc((1000/1040)*100vw), 1000px)
  }
}

.breadcrumb-list li {
  color: #666666;
  letter-spacing: 0.05em;
  margin: calc((10/750)*100vw) 0;
  font-size: calc((28/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .breadcrumb-list li {
    font-size: 14px;
    margin: min(calc((13/1040)*100vw), 13px) 0
  }
}

.breadcrumb-list li a {
  color: #666666
}

.breadcrumb-list li a:after {
  content: ">";
  display: inline-block;
  margin: 0 calc((20/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .breadcrumb-list li a:after {
    margin: 0 min(calc((6/1040)*100vw), 6px)
  }
}

.corp .detail-messeage p {
  line-height: 2.1;
  font-size: calc((25*1.12/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage p {
    line-height: 1.72222;
    font-size: min(calc((18/1040)*100vw), 18px)
  }
}

.corp .detail-messeage-tp {
  text-align: center;
  margin: calc((40/750)*100vw) auto calc((20/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-tp {
    letter-spacing: 0.15em;
    margin: min(calc((25/1040)*100vw), 25px) auto min(calc((13/1040)*100vw), 13px)
  }
}

.corp .detail-messeage-ttl {
  font-weight: 500;
  text-align: center;
  line-height: 1.73333;
  font-size: calc((36/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-ttl {
    letter-spacing: 0.2em;
    font-size: min(calc((30/1040)*100vw), 30px)
  }
}

.corp .detail-messeage-ttl::after {
  content: "";
  display: block;
  margin: auto;
  background: linear-gradient(to right, #18c8a5, #91f44f);
  margin: calc((20/750)*100vw) auto calc((40/750)*100vw);
  width: calc((60/750)*100vw);
  height: calc((7/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-ttl::after {
    margin: min(calc((25/1040)*100vw), 25px) auto 0;
    width: min(calc((42/1040)*100vw), 42px);
    height: min(calc((4/1040)*100vw), 4px)
  }
}

.corp .detail-messeage-txtArea {
  margin: auto;
  letter-spacing: 0.05em;
  width: calc((690/750)*100vw);
  margin: calc((42/750)*100vw) auto calc((82/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-txtArea {
    margin: min(calc((45/1040)*100vw), 45px) auto min(calc((90/1040)*100vw), 90px);
    width: min(calc((940/1040)*100vw), 940px)
  }
}

.corp .detail-messeage-txt {
  letter-spacing: 0.05em;
  margin: calc((60/750)*100vw) auto calc((60/750)*100vw)
}

@media screen and (max-width: 767px), print {
  .corp .detail-messeage-txt {
    width: calc((690/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-txt {
    text-align: center;
    margin: min(calc((50/1040)*100vw), 50px) auto min(calc((75/1040)*100vw), 75px)
  }
}

.corp .detail-messeage-list {
  margin: 0 auto calc((100/750)*100vw);
  width: calc((690/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list {
    margin: 0 auto min(calc((100/1040)*100vw), 100px);
    width: min(calc((1040/1040)*100vw), 1040px)
  }
}

.corp .detail-messeage-list li {
  margin: auto;
  margin-bottom: calc((80/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list li {
    margin-bottom: min(calc((60/1040)*100vw), 60px)
  }
}

.corp .detail-messeage-list li:last-child {
  margin-bottom: 0
}

.corp .detail-messeage-list li.menu {
  box-shadow: 0px 0px 16px 1px rgba(0, 0, 0, 0.07);
  padding: calc((60/750)*100vw) calc((40/750)*100vw) calc((60/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list li.menu {
    width: min(calc((1000/1040)*100vw), 1000px);
    padding: min(calc((40/1040)*100vw), 40px) min(calc((25/1040)*100vw), 25px) min(calc((40/1040)*100vw), 40px)
  }
}

.corp .detail-messeage-list li.menu h3 {
  font-weight: 500;
  color: #3DAAC1;
  font-size: calc((30*1.12/750)*100vw);
  margin-bottom: calc((15/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list li.menu h3 {
    letter-spacing: 0.05em;
    font-size: min(calc((24/1040)*100vw), 24px);
    width: min(calc((1000/1040)*100vw), 1000px);
    margin-bottom: min(calc((15/1040)*100vw), 15px)
  }
}

.corp .detail-messeage-list li.menu p {
  line-height: 2.1;
  font-size: calc((25*1.12/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list li.menu p {
    line-height: 2.58333;
    letter-spacing: 0.07em;
    font-size: min(calc((15/1040)*100vw), 15px)
  }
}

.corp .detail-messeage-list li.menu p span {
  display: block;
  font-size: calc((22*1.12/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .corp .detail-messeage-list li.menu p span {
    font-size: min(calc((15/1040)*100vw), 15px)
  }
}

.qa .detail-qaArea {
  width: calc((690/750)*100vw);
  margin: calc((30/750)*100vw) auto calc((100/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea {
    width: min(calc((905/1040)*100vw), 905px);
    margin: min(calc((20/1040)*100vw), 20px) auto min(calc((100/1040)*100vw), 100px)
  }
}

.qa .detail-qaArea-ttl {
  font-size: calc((35/750)*100vw);
  margin-bottom: calc((25/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea-ttl {
    font-size: min(calc((30/1040)*100vw), 30px);
    margin-bottom: min(calc((34/1040)*100vw), 34px)
  }
}

.qa .detail-qaArea dl {
  margin-bottom: calc((55/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea dl {
    margin-bottom: min(calc((48/1040)*100vw), 48px)
  }
}

.qa .detail-qaArea dl dt {
  font-weight: 700;
  position: relative;
  font-size: calc((28*1.12/750)*100vw);
  border-bottom: solid 1px #DADADA;
  padding: calc((15/750)*100vw) 0 calc((15/750)*100vw) calc((45/750)*100vw);
  margin-bottom: calc((15/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea dl dt {
    line-height: 1.72222;
    font-size: min(calc((18/1040)*100vw), 18px);
    padding: 0 0 min(calc((16/1040)*100vw), 16px) min(calc((44/1040)*100vw), 44px);
    margin-bottom: min(calc((10/1040)*100vw), 10px)
  }
}

.qa .detail-qaArea dl dt::before {
  content: '';
  display: inline-block;
  background-image: url(../img/corp/qa_ic-q.svg);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  width: calc((34/750)*100vw);
  height: calc((22/750)*100vw);
  top: calc((32/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea dl dt::before {
    width: min(calc((34/1040)*100vw), 34px);
    height: min(calc((22/1040)*100vw), 22px);
    top: min(calc((6/1040)*100vw), 6px)
  }
}

.qa .detail-qaArea dl dd {
  position: relative;
  margin: 0;
  font-size: calc((25*1.12/750)*100vw);
  padding-left: calc((44/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea dl dd {
    line-height: 1.72222;
    letter-spacing: 0.05em;
    font-size: min(calc((18/1040)*100vw), 18px);
    padding-left: min(calc((44/1040)*100vw), 44px)
  }
}

.qa .detail-qaArea dl dd::before {
  content: '';
  display: inline-block;
  background-image: url(../img/corp/qa_ic-a.svg);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  width: calc((34/750)*100vw);
  height: calc((22/750)*100vw);
  top: calc((15/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea dl dd::before {
    top: min(calc((5/1040)*100vw), 5px);
    width: min(calc((34/1040)*100vw), 32px);
    height: min(calc((22/1040)*100vw), 20px)
  }
}

.qa .detail-qaArea a {
  color: #18c8a5
}

.qa .detail-qaArea table {
  display: table;
  width: 100%;
  line-height: 1.72222;
  letter-spacing: 0.05em
}

@media screen and (max-width: 767px), print {
  .qa .detail-qaArea table {
    font-size: calc((25*1.12/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea table {
    font-size: min(calc((18/1040)*100vw), 18px);
    margin-bottom: min(calc((50/1040)*100vw), 50px);
    margin-top: calc((-35/1040)*100vw)
  }
}

@media screen and (min-width: 1040px), print {
  .qa .detail-qaArea table {
    margin-top: -20px
  }
}

.qa .detail-qaArea table tr {
  font-weight: 500;
  border-bottom: solid 1px #18c8a5;
  height: calc((180/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea table tr {
    height: min(calc((60/1040)*100vw), 60px)
  }
}

.qa .detail-qaArea table tr:nth-child(1) {
  border-top: solid 1px #18c8a5
}

@media screen and (max-width: 767px), print {
  .qa .detail-qaArea table tr td {
    text-align: left;
    padding-left: calc((25/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .qa .detail-qaArea table tr td {
    padding: 0 min(calc((30/1040)*100vw), 30px)
  }
}

@media screen and (max-width: 767px), print {
  .request .mv-inner-ttl {
    line-height: 1.3
  }
}

.request .detail {
  padding: calc((70/750)*100vw) 0 calc((100/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail {
    padding: min(calc((25/1040)*100vw), 25px) 0 min(calc((74/1040)*100vw), 74px)
  }
}

.request .detail-box {
  margin: auto;
  box-shadow: 0px 0px 16px 1px rgba(0, 0, 0, 0.07);
  width: calc((690/750)*100vw);
  padding: calc((40/750)*100vw)
}

@media screen and (max-width: 767px), print {
  .request .detail-box {
    margin: calc((80/750)*100vw) auto calc((80/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .request .detail-box {
    width: min(calc((610/1040)*100vw), 610px);
    padding: min(calc((20/1040)*100vw), 20px);
    margin-bottom: min(calc((65/1040)*100vw), 65px)
  }
}

.request .detail-box-ttl {
  font-weight: 700;
  text-align: center;
  color: #fff;
  background-color: #3DAAC1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: calc((80/750)*100vw);
  font-size: calc((32/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-box-ttl {
    height: min(calc((50/1040)*100vw), 50px);
    font-size: min(calc((20/1040)*100vw), 20px)
  }
}

.request .detail-box-list {
  background-color: #EFFCFF;
  padding: calc((32/750)*100vw) 0 calc((32/750)*100vw) calc((32/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-box-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: min(calc((17/1040)*100vw), 17px) 0 min(calc((25/1040)*100vw), 25px) min(calc((65/1040)*100vw), 65px)
  }
}

.request .detail-box-list li {
  font-weight: 700;
  white-space: nowrap;
  line-height: 2.1;
  font-size: calc((30/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-box-list li {
    letter-spacing: 0.05em;
    line-height: 1.72222;
    font-size: min(calc((16/1040)*100vw), 16px);
    width: 50%
  }
}

@media screen and (min-width: 768px), print {
  .request .detail-box-list li:nth-child(2), .request .detail-box-list li:nth-child(4), .request .detail-box-list li:nth-child(6) {
    width: 45%
  }
}

.request .detail-box-list li::before {
  content: "・";
  color: #3DAAC1
}

.request .detail-box-txt.sml {
  position: relative;
  line-height: 2.1;
  font-size: calc((25*1.12/750)*100vw);
  padding: calc((20/750)*100vw) 0 0 calc((25*1.12/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-box-txt.sml {
    letter-spacing: 0.05em;
    line-height: 1.9375;
    font-size: min(calc((14/1040)*100vw), 14px);
    padding: min(calc((10/1040)*100vw), 10px) min(calc((10/1040)*100vw), 10px) min(calc((10/1040)*100vw), 10px) min(calc((15/1040)*100vw), 15px)
  }
}

.request .detail-box-txt.sml::before {
  content: "※";
  position: absolute;
  left: 0
}

.request .detail p {
  line-height: 2.1;
  font-size: calc((25*1.12/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail p {
    letter-spacing: 0.05em;
    line-height: 1.72222;
    font-size: min(calc((18/1040)*100vw), 18px)
  }
}

.request .detail-ttl {
  font-weight: 500;
  text-align: center;
  line-height: 1.73333;
  font-size: calc((36/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-ttl {
    letter-spacing: 0.2em;
    font-size: min(calc((30/1040)*100vw), 30px)
  }
}

.request .detail-ttl::after {
  content: "";
  display: block;
  margin: auto;
  background: linear-gradient(to right, #18c8a5, #91f44f);
  margin: calc((20/750)*100vw) auto calc((40/750)*100vw);
  width: calc((60/750)*100vw);
  height: calc((7/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-ttl::after {
    margin: min(calc((25/1040)*100vw), 25px) auto 0;
    width: min(calc((42/1040)*100vw), 42px);
    height: min(calc((4/1040)*100vw), 4px)
  }
}

.request .detail-txtArea {
  width: calc((690/750)*100vw);
  margin: calc((40/750)*100vw) auto calc((40/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-txtArea {
    margin: min(calc((47/1040)*100vw), 47px) auto min(calc((112/1040)*100vw), 112px);
    width: min(calc((940/1040)*100vw), 940px)
  }
}

.request .detail-txtArea .blue {
  color: #3DAAC1
}

@media screen and (min-width: 768px), print {
  .request .detail-txtArea .blue {
    font-size: min(calc((15/1040)*100vw), 15px)
  }
}

.request .detail-flow {
  margin: auto;
  width: calc((690/750)*100vw)
}

@media screen and (max-width: 767px), print {
  .request .detail-flow {
    margin: calc((50/750)*100vw) auto calc((50/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .request .detail-flow {
    width: min(calc((705/1040)*100vw), 705px)
  }
}

.request .detail-flow .bold {
  text-align: center;
  font-weight: 700;
  margin: calc((40/750)*100vw) auto calc((40/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-flow .bold {
    margin: min(calc((28/1040)*100vw), 28px) auto min(calc((56/1040)*100vw), 56px)
  }
}

.request .detail-flow .bold a {
  color: #18C8A5
}

@media screen and (min-width: 768px), print {
  .request .detail-flow .link {
    margin: min(calc((40/1040)*100vw), 40px) auto min(calc((24/1040)*100vw), 24px)
  }
}

.request .detail-flow .link a {
  margin: auto;
  color: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-weight: 700;
  background: #18C8A5;
  font-size: calc((30/750)*100vw);
  width: calc((500/750)*100vw);
  height: calc((100/750)*100vw)
}

@media screen and (max-width: 767px), print {
  .request .detail-flow .link a {
    margin: calc((60/750)*100vw) auto calc((70/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .request .detail-flow .link a {
    font-size: min(calc((20/1040)*100vw), 20px);
    width: min(calc((340/1040)*100vw), 340px);
    height: min(calc((80/1040)*100vw), 80px)
  }
}

.request .detail-list {
  width: calc((690/750)*100vw);
  margin: 0 auto calc((90/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-list {
    width: min(calc((810/1040)*100vw), 810px);
    margin: min(calc((50/1040)*100vw), 50px) auto min(calc((100/1040)*100vw), 100px)
  }
}

.request .detail-list li {
  position: relative;
  line-height: 2.1;
  font-size: calc((25*1.12/750)*100vw);
  letter-spacing: 0.05em;
  padding-left: calc((27/750)*100vw)
}

@media screen and (max-width: 767px), print {
  .request .detail-list li {
    margin-bottom: calc((27/750)*100vw)
  }
}

@media screen and (min-width: 768px), print {
  .request .detail-list li {
    letter-spacing: 0.05em;
    line-height: 1.72222;
    font-size: min(calc((18/1040)*100vw), 18px);
    padding-left: min(calc((24/1040)*100vw), 24px)
  }
}

.request .detail-list li::before {
  content: "・";
  color: #18C8A5;
  position: absolute;
  left: 0
}

.request .detail-address {
  /*text-align: center;*/
  width: calc((690/750)*100vw);
  margin: calc((50/750)*100vw) auto calc((20/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail-address {
    width: min(calc((502/1040)*100vw), 502px);
    margin: min(calc((47/1040)*100vw), 47px) auto min(calc((25/1040)*100vw), 25px)
  }
}

.request .detail .cap {
  text-align: center;
  font-size: calc((25/750)*100vw);
  margin: calc((40/750)*100vw) auto calc((80/750)*100vw)
}

@media screen and (min-width: 768px), print {
  .request .detail .cap {
    font-size: min(calc((14/1040)*100vw), 14px);
    margin: min(calc((42/1040)*100vw), 42px) auto min(calc((95/1040)*100vw), 95px)
  }
}

.corp .login, .qa .login, .request .login {
  position: fixed;
  z-index: 1000;
  right: min(calc((20/1040)*100vw), 20px);
  bottom: min(calc((20/1040)*100vw), 20px);
  padding: min(calc((20/1040)*100vw), 20px) min(calc((20/1040)*100vw), 20px) min(calc((10/1040)*100vw), 10px);
  background-color: #EFFCFF
}

.corp .login-btn:nth-child(1), .qa .login-btn:nth-child(1), .request .login-btn:nth-child(1) {
  margin-bottom: min(calc((15/1040)*100vw), 15px)
}

.corp .login-btn .link a, .qa .login-btn .link a, .request .login-btn .link a {
  color: #fff;
  background-color: #18C8A5;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  font-weight: 700;
  line-height: 1.39286;
  font-size: min(calc((14/1040)*100vw), 14px);
  width: min(calc((200/1040)*100vw), 200px);
  height: min(calc((50/1040)*100vw), 50px)
}

.corp .login-btn .cap, .qa .login-btn .cap, .request .login-btn .cap {
  text-align: center;
  line-height: 2.625;
  letter-spacing: 0.05em;
  font-size: min(calc((12/1040)*100vw), 12px)
}
.detail_button {
  margin-top: -40px;
}
.detail_button a {
  display: block;
  font-weight: bold;
  color: #fff;
  text-align: center;
  font-size: min(calc((18/390)*100vw), 18px);
  background: #18C8A5;
  border-radius: 0;
  padding: min(calc((20/750)*100vw), 20px);
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: min(calc((80/1040)*100vw), 80px);
  width: 80%;
  max-width: 480px;
}
.detail_button a::after {
  content: '';
  display: inline-block;
  vertical-align: -10%;
  width: 0;
  height: 0;
  margin: 0 0 0 10px;
  border: 0.6em solid transparent;
  border-left-width: 0.6em;
  border-left-style: solid;
  border-left-color: transparent;
  border-left: 0.6em solid #fff;
}

@media screen and (max-width: 768px) {
  .detail_button {
    margin-top: -20px;
  }
  .detail_button a {
      font-size: calc((24*1.12/750)*100vw);
      padding: calc((20*1.12/750)*100vw);
      margin: 0 auto calc((80/750)*100vw);
      width: 90%;
  }
}