@charset "UTF-8";
/* all
------------------------------------------------------------------ */
@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

.forcms_block * {
	max-width: unset;
	box-sizing: inherit;
	vertical-align: inherit;
	word-break: normal;
	line-height: 1.4;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

#lp_re-megane * {
	box-sizing: content-box;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* header
------------------------------------------------------------------ */
@media screen and (min-width: 1366px) {
  header {
    background: -webkit-gradient(linear, left top, right top, color-stop(50%, #0F1670), color-stop(50%, #80191D));
    background: linear-gradient(left, #0F1670 50%, #80191D 50%);
    background: -ms-linear-gradient(left, #0F1670 50%, #80191D 50%);
    height: 603px;
  }
}

@media screen and (max-width: 1365px) {
  header {
    height: 43vw;
    width: 100%;
  }
}

@media (max-width: 767px) {
  header {
    height: 100vw;
  }
}

header h1 {
  text-align: center;
}

@media screen and (min-width: 1366px) {
  header h1 img {
    width: 1366px;
  }
}

@media screen and (max-width: 1365px) {
  header h1 img {
    width: 100%;
  }
}

@media (max-width: 767px) {
  header h1 img {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* about
------------------------------------------------------------------ */
@media (min-width: 1060px) {
  .about {
    background: url(/cms/images/products/other/re-megane/img/about-bg_pc.png);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #edf1f2;
    background-size: cover;
    padding: 70px 0 75px;
  }
}

@media (max-width: 1060px) {
  .about {
    background: url(/cms/images/products/other/re-megane/img/about-bg_pc.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 7vw 0 7vw;
  }
}

@media (max-width: 767px) {
  .about {
    background: url(/cms/images/products/other/re-megane/img/about-bg_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 14vw 0 13vw;
  }
}

.about p {
  text-align: center;
  color: #0f1670;
  letter-spacing: 0.02em;
  line-height: 2.3;
}

@media (min-width: 1060px) {
  .about p {
    font-size: 18px;
  }
  .about p span {
    font-size: 18px;
  }
}

@media (max-width: 1060px) {
  .about p {
    font-size: 2vw;
  }
  .about p span {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .about p {
    font-size: 3.5vw;
  }
  .about p span {
    font-size: 3.5vw;
  }
}

@media (min-width: 1060px) {
  .about p:nth-last-child(1) {
    margin-top: 35px;
  }
}

@media (max-width: 767px) {
  .about p:nth-last-child(1) {
    margin-top: 6vw;
  }
}

@media (min-width: 1060px) {
  .about p .money {
    font-size: 29px;
  }
}

@media (max-width: 1060px) {
  .about p .money {
    font-size: 3vw;
  }
}

@media (max-width: 767px) {
  .about p .money {
    font-size: 4.5vw;
  }
}

.about p span {
  font-weight: bold;
}

.about span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #f1cf86));
  background: linear-gradient(transparent 70%, #f1cf86 0%);
}

@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* step
------------------------------------------------------------------ */
.step {
  background: #0f1670;
}

@media (min-width: 1060px) {
  .step {
    padding: 90px 0;
  }
}

@media (max-width: 1060px) {
  .step {
    padding: 9vw 0;
  }
}

@media (max-width: 767px) {
  .step {
    padding: 15vw 8vw;
  }
}

@media (min-width: 1060px) {
  .step-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 85px;
  }
}

@media (max-width: 1060px) {
  .step-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 8vw;
  }
}

@media (max-width: 767px) {
  .step-list {
    display: block;
    margin-top: 14vw;
  }
}

.step-list li {
  position: relative;
  text-align: center;
}

@media (min-width: 1060px) {
  .step-list li {
    width: 310px;
  }
}

@media (max-width: 1060px) {
  .step-list li {
    width: 30vw;
  }
}

@media (max-width: 1060px) {
  .step-list li {
    width: 100%;
  }
}

@media (min-width: 1060px) {
  .step-list li:not(:first-child) {
    margin-left: 50px;
  }
  .step-list li:not(:first-child)::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: 124px;
    left: -12px;
    border-style: solid;
    border-width: 15px 0 15px 16px;
    border-color: transparent transparent transparent #fff;
  }
}

@media (max-width: 1060px) {
  .step-list li:not(:first-child)::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: 12vw;
    left: 1vw;
    border-style: solid;
    border-width: 15px 0 15px 16px;
    border-color: transparent transparent transparent #fff;
  }
}

@media (max-width: 767px) {
  .step-list li:not(:first-child) {
    margin-top: 20vw;
  }
  .step-list li:not(:first-child)::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: -14vw;
    left: 35vw;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4vw 4vw 0 4vw;
    border-color: #fff transparent transparent transparent;
  }
}

@media (max-width: 1060px) {
  .step-list img {
    width: 28vw;
  }
}

@media (max-width: 767px) {
  .step-list img {
    width: 100%;
    margin-left: -7vw;
  }
}

.step-list h3 {
  color: #fff;
  font-weight: bold;
  letter-spacing: -0.06em;
  line-height: 1.7;
}

@media (min-width: 1060px) {
  .step-list h3 {
    font-size: 28px;
    margin-top: 12px;
    margin-left: 30px;
  }
}

@media (max-width: 1060px) {
  .step-list h3 {
    font-size: 2vw;
    margin-top: 1vw;
    margin-left: 3vw;
  }
}

@media (max-width: 767px) {
  .step-list h3 {
    font-size: 7vw;
    margin-top: 2vw;
  }
}

.step-list p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 1060px) {
  .step-list p {
    font-size: 14px;
    margin-top: 8px;
    margin-left: 36px;
  }
}

@media (max-width: 1060px) {
  .step-list p {
    font-size: 1.5vw;
    margin-top: 1vw;
    margin-left: 3vw;
  }
}

@media (max-width: 767px) {
  .step-list p {
    font-size: 4.5vw;
    margin-top: 2vw;
    margin-left: 3vw;
  }
}

.step-caution {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px dashed #edf1f2;
  border-radius: 10px;
	box-sizing: border-box !important;
}

@media (min-width: 1060px) {
  .step-caution {
    margin: 50px auto 0;
    padding: 30px 36px 22px;
    width: 92%;
  }
}

@media (max-width: 1060px) {
  .step-caution {
    margin: 5vw auto 0;
    padding: 3vw 3vw 2vw;
    width: 92%;
  }
}

@media (max-width: 767px) {
  .step-caution {
    margin-top: 12vw;
    padding: 8vw 8vw 6vw;
    width: 100%;
  }
}

.step-caution h4 {
  color: #edf1f2;
  letter-spacing: 0.02em;
  line-height: 0.7;
}

@media (min-width: 1060px) {
  .step-caution h4 {
    text-align: center;
    font-size: 17px;
  }
}

@media (max-width: 1060px) {
  .step-caution h4 {
    text-align: center;
    font-size: 1.5vw;
  }
}

@media (max-width: 767px) {
  .step-caution h4 {
    text-align: left;
    font-size: 3vw;
  }
}

@media (min-width: 1060px) {
  .step-caution_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    padding-top: 20px;
    background-image: linear-gradient(to right, #edf1f2, #edf1f2 4px, transparent 4px, transparent 8px);
    /* 幅2の線を作る */
    background-size: 8px 1px;
    background-position: left top;
    background-repeat: repeat-x;
  }
}

@media (max-width: 1060px) {
  .step-caution_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2vw;
    padding-top: 2vw;
    background-image: linear-gradient(to right, #edf1f2, #edf1f2 4px, transparent 4px, transparent 8px);
    /* 幅2の線を作る */
    background-size: 8px 1px;
    background-position: left top;
    background-repeat: repeat-x;
  }
}

@media (max-width: 767px) {
  .step-caution_list {
    display: block;
    margin-top: 5vw;
    padding-top: 4vw;
    background-image: linear-gradient(to right, #edf1f2, #edf1f2 4px, transparent 4px, transparent 8px);
    /* 幅2の線を作る */
    background-size: 10px 1px;
    background-position: left top;
    background-repeat: repeat-x;
  }
}

@media (min-width: 1060px) {
  .step-caution_list ul:not(:first-child) {
    margin-left: 26px;
  }
}

@media (max-width: 1060px) {
  .step-caution_list ul:not(:first-child) {
    margin-left: 2vw;
  }
}

@media (max-width: 767px) {
  .step-caution_list ul:not(:first-child) {
    margin-left: 0;
  }
}

.step-caution_list ul li {
  color: #edf1f2;
  letter-spacing: 0.02em;
  line-height: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.step-caution_list ul li + li {
	margin-top: 8px;
}

@media (min-width: 1060px) {
  .step-caution_list ul li {
    font-size: 12px;
  }
}

@media (max-width: 1060px) {
  .step-caution_list ul li {
    font-size: 1vw;
  }
}

@media (max-width: 767px) {
  .step-caution_list ul li {
    font-size: 3vw;
  }
}

@media (max-width: 767px) {
  .step-caution_list ul p {
    margin-left: 1vw;
  }
}

@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* actions
------------------------------------------------------------------ */
@media (min-width: 1060px) {
  .actions {
    background: url(/cms/images/products/other/re-megane/img/actions-bg_pc.png);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #edf1f2;
    background-size: cover;
    padding: 80px 0 120px;
  }
}

@media (max-width: 1060px) {
  .actions {
    background: url(/cms/images/products/other/re-megane/img/actions-bg_pc.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 8vw 0 8vw;
  }
}

@media (max-width: 767px) {
  .actions {
    background: url(/cms/images/products/other/re-megane/img/actions-bg_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 14vw 8vw 14vw;
  }
}

.actions .section-ttl p, .actions .section-ttl h2 {
  color: #0f1670;
}

@media (min-width: 1060px) {
  .actions-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-top: 60px;
  }
}

@media (max-width: 1060px) {
  .actions-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-top: 6vw;
  }
}

@media (max-width: 767px) {
  .actions-media {
    margin-top: 5vw;
    display: block;
  }
}

.actions-media p {
  color: #0f1670;
  letter-spacing: 0.06em;
  line-height: 2;
}

@media (min-width: 1060px) {
  .actions-media p {
    font-size: 16px;
    width: 33%;
  }
}

@media (max-width: 1060px) {
  .actions-media p {
    font-size: 1.5vw;
    width: 33%;
  }
}

@media (max-width: 767px) {
  .actions-media p {
    margin-top: 6vw;
    font-size: 3.5vw;
    width: 100%;
  }
}

@media (min-width: 1060px) {
  .actions-media img {
    margin-left: 38px;
    width: 686px;
  }
}

@media (max-width: 1060px) {
  .actions-media img {
    margin-left: 3vw;
    width: 66%;
  }
}

@media (max-width: 767px) {
  .actions-media img {
    margin-left: 0;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* other
------------------------------------------------------------------ */
.other {
  background: #80191d;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (min-width: 1060px) {
  .other {
    padding: 89px 0 151px;
  }
}

@media (max-width: 1060px) {
  .other {
    padding: 8vw 0 15vw;
  }
}

@media (max-width: 767px) {
  .other {
    padding: 15vw 8vw 22vw;
  }
}

@media (min-width: 1060px) {
  .other-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media (max-width: 1060px) {
  .other-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 5vw;
  }
}

@media (max-width: 767px) {
  .other-media {
    display: block;
    margin-top: 5vw;
  }
}

@media (min-width: 1060px) {
  .other-media img {
    width: 685px;
  }
}

@media (max-width: 1060px) {
  .other-media img {
    width: 60%;
  }
}

@media (max-width: 767px) {
  .other-media img {
    width: 100%;
  }
}

@media (min-width: 1060px) {
  .other-txt {
    margin-left: 36px;
    width: 40%;
  }
}

@media (max-width: 1060px) {
  .other-txt {
    margin-left: 3vw;
    width: 40%;
  }
}

@media (max-width: 767px) {
  .other-txt {
    margin-top: 5vw;
    margin-left: 0;
    width: 100%;
  }
}

.other-txt p {
  line-height: 2;
  color: #fff;
  letter-spacing: 0.08em;
}

@media (min-width: 1060px) {
  .other-txt p {
    font-size: 16px;
  }
}

@media (max-width: 1060px) {
  .other-txt p {
    font-size: 1.5vw;
  }
}

@media (max-width: 767px) {
  .other-txt p {
    font-size: 3vw;
    width: 100%;
  }
}

.other-txt a {
  position: relative;
  border-radius: 1px;
  border: 1px solid #fff;
  letter-spacing: 0.02em;
  color: #fff;
  border-radius: 1px;
  -webkit-transition: .4s;
  transition: .4s;
}

@media (min-width: 1060px) {
  .other-txt a {
    padding: 12px 109px;
    margin-top: 16px;
    display: inline-block;
  }
  .other-txt a:before, .other-txt a:after {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 1.5px;
    background: #fff;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 16px;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-txt a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
  .other-txt a:hover {
    background: #fff;
    color: #80191d;
  }
  .other-txt a:hover:before, .other-txt a:hover:after {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 1.5px;
    background: #80191d;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 16px;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-txt a:hover::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
}

@media (max-width: 1060px) {
  .other-txt a {
    padding: 1vw 10vw;
    margin-top: 1vw;
    display: inline-block;
  }
  .other-txt a:before, .other-txt a:after {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 1.5px;
    background: #fff;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 16px;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-txt a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
}

@media (max-width: 767px) {
  .other-txt a {
    padding: 3.5vw 0;
    margin-top: 4vw;
    display: block;
    text-align: center;
    font-size: 4vw;
  }
  .other-txt a:before, .other-txt a:after {
    position: absolute;
    content: "";
    display: block;
    width: 3vw;
    height: 1.5px;
    background: #fff;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 4vw;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-txt a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
}

@media (min-width: 1060px) {
  .other-img_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
  }
}

@media (max-width: 1060px) {
  .other-img_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 5vw;
  }
}

@media (max-width: 767px) {
  .other-img_list {
    display: block;
    margin-top: 12vw;
  }
}

@media (min-width: 1060px) {
  .other-img_list li {
    width: 50%;
  }
  .other-img_list li:not(:first-child) {
    margin-left: 38px;
  }
}

@media (max-width: 1060px) {
  .other-img_list li {
    width: 50%;
  }
  .other-img_list li:not(:first-child) {
    margin-left: 3vw;
  }
}

@media (max-width: 767px) {
  .other-img_list li {
    width: 100%;
  }
  .other-img_list li:not(:first-child) {
    margin-top: 7vw;
    margin-left: 0;
  }
}

@media (max-width: 1060px) {
  .other-img_list img {
    width: 46vw;
  }
}

@media (max-width: 767px) {
  .other-img_list img {
    width: 100%;
  }
}

.other-img_list a {
  position: relative;
  color: #fff;
  letter-spacing: 0.04em;
  line-height: 1.6;
}

@media (min-width: 1060px) {
  .other-img_list a {
    display: inline-block;
    font-size: 18px;
    margin-top: 14px;
  }
  .other-img_list a:before, .other-img_list a:after {
    position: absolute;
    content: "";
    display: block;
    width: 14px;
    height: 1.5px;
    background: #fff;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: -40px;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-img_list a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
  .other-img_list a:hover {
    opacity: .55;
  }
}

@media (max-width: 1060px) {
  .other-img_list a {
    display: inline-block;
    font-size: 1.5vw;
    margin-top: 2vw;
  }
  .other-img_list a:before, .other-img_list a:after {
    position: absolute;
    content: "";
    display: block;
    width: 1vw;
    height: 1.5px;
    background: #fff;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: -4vw;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-img_list a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
}

@media (max-width: 767px) {
  .other-img_list a {
    display: block;
    font-size: 3vw;
    margin-top: 3vw;
  }
  .other-img_list a:before, .other-img_list a:after {
    position: absolute;
    content: "";
    display: block;
    width: 2.5vw;
    height: 1.5px;
    background: #fff;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 4vw;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    -webkit-transform-origin: calc(100%);
            transform-origin: calc(100%);
    border-radius: 1px;
  }
  .other-img_list a::after {
    -webkit-transform: rotate(-25deg);
            transform: rotate(-25deg);
  }
}

@media (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .is-sp {
    display: block !important;
  }
}

@media (max-width: 1060px) {
  .is-sp {
    display: none;
  }
}

@media (min-width: 1060px) {
  .is-sp {
    display: none;
  }
}

body {
  overflow-x: hidden;
  font-family: 'Roboto', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 100%;
}

a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .4s;
  transition: .4s;
}

img {
  height: auto;
  border: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.inner {
  margin: 0 auto;
}

@media (min-width: 1060px) {
  .inner {
    padding: 0 20px;
    max-width: 1060px;
  }
}

@media (max-width: 1060px) {
  .inner {
    padding: 0 2vw;
  }
}

@media (max-width: 767px) {
  .inner {
    padding: 0;
  }
}

h2 {
  text-align: center;
}

.section-ttl {
  text-align: center;
}

.section-ttl p {
  color: #fff;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

@media (min-width: 1060px) {
  .section-ttl p {
    font-size: 21px;
  }
}

@media (max-width: 1060px) {
  .section-ttl p {
    font-size: 2vw;
  }
}

@media (max-width: 767px) {
  .section-ttl p {
    font-size: 4vw;
  }
}

.section-ttl h2 {
  color: #fff;
  letter-spacing: 0.02em;
  font-weight: bold;
}

@media (min-width: 1060px) {
  .section-ttl h2 {
    font-size: 36px;
  }
}

@media (max-width: 1060px) {
  .section-ttl h2 {
    font-size: 4vw;
  }
}

@media (max-width: 767px) {
  .section-ttl h2 {
    font-size: 7vw;
    white-space: nowrap;
  }
}

.icon:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}

/* footer
------------------------------------------------------------------ */
@media (min-width: 1060px) {
  .footer-inner {
    padding: 38px 40px;
  }
}

@media (max-width: 1060px) {
  .footer-inner {
    padding: 3vw 10vw;
  }
}

@media (max-width: 767px) {
  .footer-inner {
    padding: 8vw 0 13vw;
  }
}

@media (min-width: 1060px) {
  .footer-pagetop {
    display: block;
    position: fixed;
    bottom: 30px;
    right: 0;
    width: 80px;
    height: 50px;
    padding: 10px 0;
    background-color: #fff;
    color: #000;
    opacity: 1;
    text-align: center;
    font-size: 12px;
    z-index: 1;
    -webkit-transition: .4s;
    transition: .4s;
  }
}

@media (min-width: 1060px) {
  .footer-pagetop span {
    display: block;
    margin-top: 30px;
  }
}

@media (max-width: 1060px) {
  .footer-pagetop span {
    display: none;
  }
}

.icon-arrow:before, .icon-arrow:after {
  position: absolute;
  content: "";
  display: block;
  width: 14px;
  height: 1.5px;
  background: #000;
  top: 20%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 50%;
  -webkit-transform: rotate(-120deg);
          transform: rotate(-120deg);
  -webkit-transform-origin: calc(100%);
          transform-origin: calc(100%);
  border-radius: 1px;
}

.icon-arrow::after {
  -webkit-transform: rotate(-60deg);
          transform: rotate(-60deg);
}

.footer-nav {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 1060px) {
  .footer-nav {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media (max-width: 1060px) {
  .footer-nav {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media (max-width: 767px) {
  .footer-logo {
    margin: 0 auto;
  }
  .footer-logo img {
    width: 52vw;
    display: block;
  }
}

@media (min-width: 1060px) {
  .footer-logo:hover {
    opacity: .55;
  }
}

@media (min-width: 1060px) {
  .footer-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media (max-width: 1060px) {
  .footer-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media (max-width: 767px) {
  .footer-sns {
    display: none;
  }
}

@media (min-width: 1060px) {
  .footer-sns_item:not(:first-child) {
    margin-left: 14px;
  }
}

@media (max-width: 1060px) {
  .footer-sns_item:not(:first-child) {
    margin-left: 1vw;
  }
}

@media (min-width: 1060px) {
  .footer-sns_item i {
    font-size: 20px;
  }
}

@media (max-width: 1060px) {
  .footer-sns_item i {
    font-size: 2vw;
  }
}

.footer-sns_item a {
  color: #b8b6b5;
  -webkit-transition: .4s;
  transition: .4s;
}

@media (min-width: 1060px) {
  .footer-sns_item a:hover {
    color: #14195a;
  }
}

.footer-copyright {
  background: #0f1670;
}

@media (min-width: 1060px) {
  .footer-copyright {
    padding: 35px 40px;
  }
}

@media (max-width: 1060px) {
  .footer-copyright {
    padding: 3vw 4vw;
  }
}

@media (max-width: 767px) {
  .footer-copyright {
    text-align: center;
    padding: 6vw 0;
  }
}

.footer-copyright p {
  color: #676db5;
}

@media (min-width: 1060px) {
  .footer-copyright p {
    font-size: 16px;
  }
}

@media (max-width: 1060px) {
  .footer-copyright p {
    font-size: 1.5vw;
  }
}

@media (max-width: 767px) {
  .footer-copyright p {
    font-size: 3vw;
  }
}
/*# sourceMappingURL=style.css.map */