@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*! 111226 japan font on
YUI 3.4.1 (build 4118)
Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
body {
  font: 13px/1.231 "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
  /*font:13px/1.231 arial,helvetica,clean,sans-serif;*/
  *font-size: small;
  /* for IE */
  *font: x-small;
  /* for IE in quirks mode */
}

select,
input,
button,
textarea {
  font: 99% "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;;
  /*font:99% arial,helvetica,clean,sans-serif;*/
}

table {
  font-size: inherit;
  font: 100%;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%;
}

/* for modern brouser */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
}

* html .clearfix {
  zoom: 1;
}

/* IE6 */
*:first-child + html .clearfix {
  zoom: 1;
}

/* IE7 */
/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
.clearfix:after {
  font-size: 0;
}

html {
  box-sizing: border-box;
  overflow-y: scroll;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  background-color: #FFFFFF;
  color: #333333;
  -webkit-text-size-adjust: 100%;
}

a, a:link {
  color: #333333;
  text-decoration: underline;
  outline: 0 none;
}

a:visited {
  color: #333333;
  text-decoration: underline;
  outline: 0 none;
}

a:hover {
  color: #333333;
  text-decoration: underline;
}

a:active {
  color: #333333;
  text-decoration: underline;
  outline: 0 none;
}

img {
  vertical-align: bottom;
}

.forGtm,
.forSp {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .forPc {
    display: none !important;
  }

  .forSp {
    display: block !important;
  }
}
html {
  overflow-y: scroll;
}

body {
  min-width: 1040px;
}
@media screen and (max-width: 767px) {
  body {
    min-width: 100%;
  }
}

@keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }
  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}
@-moz-keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }
  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}
@-webkit-keyframes rotate {
  0% {
    transform: rotateZ(-360deg);
    -webkit-transform: rotateZ(-360deg);
    -moz-transform: rotateZ(-360deg);
    -o-transform: rotateZ(-360deg);
  }
  100% {
    transform: rotateZ(0deg);
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
  }
}
#throbber {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  z-index: 0;
}
#throbber::after {
  content: '';
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  animation: rotate 0.8s linear infinite;
  -moz-animation: rotate 0.8s linear infinite;
  -webkit-animation: rotate 0.8s linear infinite;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -webkit-animation-fill-mode: both;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border-top: 1px solid #666666;
  border-left: 1px solid #999999;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid white;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
  opacity: 0.5;
}
#throbber.hide {
  display: none;
}

.allWrap {
  height: 0;
  overflow: hidden;
  position: relative;
}
.allWrap .headerWrap {
  display: none;
}
.allWrap.show {
  height: auto;
  overflow: visible;
}
.allWrap.show .headerWrap {
  display: block;
}
.allWrap.show .faqWrap .movieWrap {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .allWrap.show .faqWrap .movieWrap {
    padding-bottom: 0;
  }
}

button {
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 0;
  line-height: 1.23;
  text-align: left;
  cursor: pointer;
  overflow: visible;
}

.headerWrap {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 15px 17px 15px 31px;
  background-color: rgba(255,255,255,.5);
  border-top: 3px solid #3F3F99;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .headerWrap {
    padding: 0 1.33333% 1.33333% 2.66667%;
    border-top-width: 2px;
  }
}
.headerWrap h1 {
  float: left;
  width: 327px;
  padding-top: 8px;
}
@media screen and (max-width: 767px) {
  .headerWrap h1 {
    width: 51.38889%;
    padding-top: 3.61111%;
  }
}
.headerWrap .btn {
  float: right;
  width: 320px;
}
@media screen and (max-width: 767px) {
  .headerWrap .btn {
    width: 40.27778%;
  }
}
.headerWrap .btn button {
  position: relative;
  display: block;
  width: 100%;
  padding: 16px 40px 15px 40px;
  background-color: #D451AE;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .headerWrap .btn button {
    -moz-transition: background-color 0.2s ease-out;
    -o-transition: background-color 0.2s ease-out;
    -webkit-transition: background-color 0.2s ease-out;
    transition: background-color 0.2s ease-out;
  }
  .headerWrap .btn button:hover {
    background-color: #e085c6;
  }
}
@media screen and (max-width: 767px) {
  .headerWrap .btn button {
    padding: 7.58621% 6.89655% 9.65517% 6.89655%;
    -moz-border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0;
    border-radius: 0 0 5px 5px;
  }
}
.headerWrap .btn button::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 1px solid rgba(255, 255, 255, 0.5);
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .headerWrap .btn button::before {
    top: 0;
    height: calc(100% - 2px);
    border-top: none;
    -moz-border-radius: 0 0 4px 4px;
    -webkit-border-radius: 0;
    border-radius: 0 0 4px 4px;
  }
}
.headerWrap img {
  width: 100%;
  height: auto;
}

.goalWrap {
  width: 674px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .goalWrap {
    width: 86.66667%;
  }
}
.goalWrap button {
  position: relative;
  display: block;
  width: 100%;
  padding: 25px 0 21px 52px;
  background-color: #D451AE;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
  -webkit-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  font-size: 276.9%;
  font-weight: bold;
  color: #FFFFFF;
  text-decoration: none;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .goalWrap button {
    height: 0;
    padding: 0 0 29.23077% 0;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -o-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
  }
  .goalWrap button img {
    position: absolute;
    left: -4.61538%;
    top: 0;
    width: 99.07692%;
    height: auto;
    margin-top: -4.92308%;
  }
}
@media screen and (min-width: 768px) {
  .goalWrap button {
    -moz-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
  }
  .goalWrap button:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
  }
}
.goalWrap button::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 1px solid rgba(255, 255, 255, 0.5);
  -moz-border-radius: 18px;
  -webkit-border-radius: 18px;
  border-radius: 18px;
}
@media screen and (max-width: 767px) {
  .goalWrap button::before {
    left: 3px;
    top: 3px;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
  }
}
.goalWrap button i {
  position: absolute;
  left: 11px;
  bottom: 12px;
  display: block;
  width: 89px;
  height: 110px;
  background: url(../../img/goal.png) no-repeat 0 0;
  background-size: contain;
}
.goalWrap button::after {
  content: '';
  position: absolute;
  right: 30px;
  top: 50%;
  display: block;
  width: 15px;
  height: 24px;
  margin-top: -12px;
  background: url(../../img/arrow_white_15.png) no-repeat 0 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .goalWrap button::after {
    content: none;
  }
}
.goalWrap button .small {
  font-size: 83.33333%;
}



.faqWrap {
  width: 960px;
  margin: 146px auto 0 auto;
  padding-top: 57px;
  background-color: #F7F7F7;
}
@media screen and (max-width: 767px) {
  .faqWrap {
    width: 97.33333%;
    margin-top: 60px;
    padding-top: 44px;
  }
}
.faqWrap h2 {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .faqWrap h2 {
    position: relative;
    width: 91.78082%;
    height: 0;
    padding-bottom: 8.21918%;
    overflow: hidden;
  }
}
.faqWrap h2 img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .faqWrap h2 img {
    position: absolute;
    left: 50%;
    top: 0;
    width: 198.50746%;
    margin-left: -99.25373%;
  }
}
.faqWrap .read {
  padding-top: 44px;
  font-size: 123.1%;
  line-height: 1.875;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .faqWrap .read {
    width: 91.78082%;
    margin: 0 auto;
    padding-top: 32px;
    font-size: 108%;
    line-height: 1.5;
    text-align: left;
  }
}
.faqWrap dl {
  padding: 63px 60px 58px 40px;
}
@media screen and (max-width: 767px) {
  .faqWrap dl {
    padding: 26px 4.10959% 34px 4.10959%;
  }
}
.faqWrap dt {
  position: relative;
  margin: 0 -20px 21px 0;
  padding: 8px 40px 21px 55px;
  border-bottom: 2px solid #D1CDC3;
  font-size: 169.2%;
  font-weight: bold;
  line-height: 1.36364;
  color: #30305D;
}
@media screen and (min-width: 768px) {
  .faqWrap dt {
    -moz-transition: border-color 0.2s ease-out;
    -o-transition: border-color 0.2s ease-out;
    -webkit-transition: border-color 0.2s ease-out;
    transition: border-color 0.2s ease-out;
  }
  .faqWrap dt:hover {
    border-color: #dcd9d2;
    color: #6b6b8b;
    cursor: pointer;
  }
  .faqWrap dt:hover img,
  .faqWrap dt:hover i {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .faqWrap dt {
    margin: 0 0 15px 0;
    padding: 9px 32px 15px 42px;
    font-size: 123.1%;
    line-height: 1.3125;
  }
}
.faqWrap dt.open i::after {
  margin-top: -7px;
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
@media screen and (max-width: 767px) {
  .faqWrap dt.open i::after {
    margin: -5px 0 0 -6px;
  }
}
.faqWrap dt.open + dd {
  height: auto;
  overflow: visible;
}
.faqWrap dt img {
  position: absolute;
  left: 0;
  top: 0;
  width: 40px;
  height: auto;
}
@media screen and (min-width: 768px) {
  .faqWrap dt img {
    -moz-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
  }
}
@media screen and (max-width: 767px) {
  .faqWrap dt img {
    width: 30px;
  }
}
.faqWrap dt i {
  display: block;
  position: absolute;
  right: 0;
  top: 6px;
  width: 30px;
  height: 30px;
  background-color: #30305D;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .faqWrap dt i {
    -moz-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
  }
}
@media screen and (max-width: 767px) {
  .faqWrap dt i {
    width: 22px;
    height: 22px;
    margin-bottom: 13px;
  }
}
.faqWrap dt i::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 18px;
  height: 12px;
  margin: -5px 0 0 -9px;
  background: url(../../img/arrow_up_white_18.png) no-repeat 0 0;
  background-size: contain;
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  .faqWrap dt i::after {
    width: 13px;
    height: 8px;
    margin: -3px 0 0 -7px;
  }
}
.faqWrap dd {
  position: relative;
  height: 0;
  padding-left: 55px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .faqWrap dd {
    padding-left: 42px;
  }
}
.faqWrap dd > div {
  padding-bottom: 82px;
}
@media screen and (max-width: 767px) {
  .faqWrap dd > div {
    padding-bottom: 52px;
  }
}
.faqWrap dd:last-child > div {
  padding-bottom: 44px;
}
@media screen and (max-width: 767px) {
  .faqWrap dd:last-child > div {
    padding-bottom: 33px;
  }
}
.faqWrap dd span {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 45px;
  font-size: 153.9%;
  font-weight: bold;
  color: #BF8C1F;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .faqWrap dd span {
    width: 26px;
    font-size: 108%;
  }
}
.faqWrap dd .txt {
  
}
@media screen and (max-width: 767px) {
  .faqWrap dd .txt {
    float: none;
    width: 100%;
  }
}
.faqWrap dd .img {
  float: right;
  width: 320px;
  margin-top: 3px;
}
@media screen and (max-width: 767px) {
  .faqWrap dd .img {
    float: none;
  }
}
.faqWrap dd strong {
  display: block;
  font-size: 123.1%;
  font-weight: bold;
  line-height: 1.625;
}
@media screen and (max-width: 767px) {
  .faqWrap dd strong {
    font-size: 108%;
    line-height: 1.42857;
  }
}
.faqWrap dd p {
  font-size: 123.1%;
  line-height: 1.625;
}
@media screen and (max-width: 767px) {
  .faqWrap dd p {
    font-size: 100%;
    line-height: 1.53846;
  }
}
.faqWrap .movieWrap {
  position: relative;
  height: 0;
  margin: 0 auto;
  width: 690px;
  margin: 32px 0 0 39px;
  padding-bottom: 390px;
}
.faqWrap .movieWrap iframe {
  position: absolute;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  width: 100%;
  height: 100%;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .faqWrap .movieWrap {
    width: 100%;
    margin: 20px 0 0 0;
    padding-bottom: 56.65529%;
  }
}
.faqWrap .a2Wrap .img {
  padding: 23px 0 27px 0;
  background-color: #FFFFFF;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .faqWrap .a2Wrap .img {
    width: 71.67235%;
    margin: 19px 0 0 13.31058%;
    padding: 17px 0 14px 4.43686%;
    text-align: left;
  }
}
.faqWrap .a2Wrap .img img {
  width: 270px;
  height: auto;
}
@media screen and (max-width: 767px) {
  .faqWrap .a2Wrap .img img {
    width: 87.81726%;
  }
}
.faqWrap .a3Wrap .img {
  position: relative;
  height: 0;
  padding-bottom: 270px;
}
@media screen and (max-width: 767px) {
  .faqWrap .a3Wrap .img {
    width: 81.91126%;
    margin: 19px 0 0 7.50853%;
    padding-bottom: 69.28328%;
  }
}
.faqWrap .a3Wrap .img img {
  width: 230px;
  height: auto;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .faqWrap .a3Wrap .img img {
    width: 72.08333%;
  }
}
.faqWrap .a3Wrap .img img:nth-child(1) {
  position: absolute;
  right: 0;
  top: 0;
}
.faqWrap .a3Wrap .img img:nth-child(2) {
  position: absolute;
  left: 0;
  bottom: 0;
}
.faqWrap .a4Wrap .img {
  padding: 16px 0;
  background-color: #FFFFFF;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .faqWrap .a4Wrap .img {
    width: 71.67235%;
    margin: 19px 0 0 13.31058%;
    padding: 9px 0 6px 3.75427%;
    text-align: left;
  }
}
.faqWrap .a4Wrap .img img {
  width: 285px;
  height: auto;
}
@media screen and (max-width: 767px) {
  .faqWrap .a4Wrap .img img {
    width: 93.46734%;
  }
}
.faqWrap .a5Wrap .img {
  padding: 14px 0 28px 0;
  background-color: #FFFFFF;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .faqWrap .a5Wrap .img {
    width: 71.67235%;
    margin: 19px 0 0 13.31058%;
    padding: 9px 0 14px 3.75427%;
    text-align: left;
  }
}
.faqWrap .a5Wrap .img img {
  width: 293px;
  height: auto;
}
@media screen and (max-width: 767px) {
  .faqWrap .a5Wrap .img img {
    width: 95.9799%;
  }
}

.allWrap.show .faqWrap dt.open + dd .movieWrap {
  padding-bottom: 390px;
}
@media screen and (max-width: 767px) {
  .allWrap.show .faqWrap dt.open + dd .movieWrap {
    padding-bottom: 56.65529%;
  }
}

.finWrap {
  margin-top: 179px;
  padding: 73px 0 1px 0;
  background: url(../../img/fin_bg.jpg) no-repeat 0 0;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .finWrap {
    margin-top: 60px;
    padding: 34px 0 35px 0;
  }
}
.finWrap ul {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .finWrap ul {
    width: 93.33333%;
  }
}
.finWrap li {
  background-color: #FFFFFF;
  border: 6px solid #3F3F99;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .finWrap li {
    border-width: 3px;
  }
}

.guidanceWrap {
  padding: 4px;
}
@media screen and (max-width: 767px) {
  .guidanceWrap {
    padding: 3px;
  }
}
.guidanceWrap a {
  position: relative;
  display: block;
  background: url(../../img/fin_2_img.jpg) no-repeat right top;
  background-size: auto 100%;
  text-decoration: none;
  padding-top: 30px;
}

.guidanceWrap a.second {
  background: url(../../img/fin_1_img.jpg) no-repeat right top;
}

.guidanceWrap a::before{
  content: "";
  background: url(../../img/guidance-border.png) no-repeat 50% 50% / cover ;
  display: inline-block;
  width: 31px;
  height: 36px;
  position: absolute;
  top: 36px;
  left: -4px;
}

@media screen and (max-width: 767px) {

  .guidanceWrap a {
    background-size: auto 94px;
    padding-top: 20px;
  }

  .guidanceWrap a.second {
    background: url(../../img/fin_1_img.jpg) no-repeat right top;
    background-size: auto 94px;
  }

  .guidanceWrap a::before{
    width: 15px;
    height: 18px;
    position: absolute;
    top: 28px;
    left: -2px;
  }

}


.guidanceWrap h2 {
 font-size: 42px;
 font-weight: bold;
 color: #3f3f99;
 letter-spacing: -0.04em;
 margin-left: 42px;
 font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .guidanceWrap h2 {
    font-size: 7vw;
    margin-left: 22px;
  }
}



.guidanceWrap p {
  padding: 15px 0 50px 42px;
  font-size: 138.5%;
  line-height: 1.66667;
}
@media screen and (max-width: 767px) {
  .guidanceWrap p {
    width: 86.09467%;
    padding: 12px 0 60px 7.39645%;
    font-size: 108%;
    line-height: 1.5;
  }
}
.guidanceWrap .btn {
  position: absolute;
  right: 20px;
  bottom: 0;
  margin-bottom: 15px;
  padding: 14px 57px 12px 43px;
  background-color: #D451AE;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  -webkit-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  font-size: 153.9%;
  font-weight: bold;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .guidanceWrap .btn {
    -moz-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
  }
}
@media screen and (max-width: 767px) {
  .guidanceWrap .btn {
    right: 3.5503%;
    width: 57.69231%;
    margin-bottom: 12px;
    padding: 13px 0 13px 9.76331%;
    -webkit-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -o-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    text-align: left;
  }
}
.guidanceWrap .btn::before {
  content: '';
  position: absolute;
  left: 3px;
  top: 3px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border: 1px solid rgba(255, 255, 255, 0.5);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}
.guidanceWrap .btn::after {
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 9px;
  height: 14px;
  margin-top: -7px;
  background: url(../../img/arrow_white_9.png) no-repeat 0 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .guidanceWrap .btn::after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .guidanceWrap .btn img {
    width: 91.35802%;
    height: auto;
  }
}

.inquiryWrap {
  margin-top: 40px;
  padding-top: 50px;
  position: relative;
}

.inquiryWrap .check{
  position: absolute;
  top: -55px;
  left: -30px;
}

.inquiryWrap .check img{
  width: 261px;
}

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

  .inquiryWrap .check{
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 0;
  }

  .inquiryWrap .check img{
    width: 130px;
  }
}

.inquiryWrap h2 {
  text-align: center;
  font-size: 48px;
  font-weight: bold;
  color: #3f3f99;
  letter-spacing: -0.04em;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .inquiryWrap h2 {
  font-size: 9vw;
  }
}
.inquiryWrap h2 img {
  position: absolute;
  right: 0;
  bottom: 0;
}

.inquiryWrap > div {
  margin-top: 28px;
  padding-bottom: 43px;
  background: url(../../img/fin_bg.png) repeat center top;
  background-size: 16px 16px;
}
@media screen and (max-width: 767px) {
  .inquiryWrap > div {
    margin-top: 23px;
    padding-bottom: 20px;
    background-size: 8px 8px;
  }
}
.inquiryWrap p {
  padding: 23px 0 16px 0;
  font-size: 200%;
  font-weight: bold;
  line-height: 1.38462;
  color: #BF8C1F;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .inquiryWrap p {
    padding: 18px 11px;
    font-size: 138.5%;
    line-height: 1.33333;
  }
}
.inquiryWrap .goalWrap {
  width: 750px;
}
@media screen and (max-width: 767px) {
  .inquiryWrap .goalWrap {
    width: 94.47674%;
  }
}
.inquiryWrap .goalWrap button {
  padding: 36px 0 30px 90px;
  font-size: 338.4%;
}
@media screen and (max-width: 767px) {
  .inquiryWrap .goalWrap button {
    padding: 0 0 29.23077% 0;
  }
}
.inquiryWrap .goalWrap button::before {
  left: 3px;
  top: 3px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border-width: 2px;
}
@media screen and (max-width: 767px) {
  .inquiryWrap .goalWrap button::before {
    border-width: 1px;
  }
}
.inquiryWrap .goalWrap button i {
  left: 17px;
  bottom: 15px;
  width: 116px;
  height: 143px;
}
.inquiryWrap .goalWrap button .small {
  font-size: 68.18182%;
}

.bnrWrap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 960px;
  margin: 0 auto;
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .bnrWrap {
    display: block;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: 86.93333%;
    padding-top: 0;
  }
}
.bnrWrap li {
  width: 437px;
  margin: 0 22px 0 21px;
}
@media screen and (max-width: 767px) {
  .bnrWrap li {
    width: 100%;
    margin: 0;
    padding: 42px 0 11px 0;
  }
}
.bnrWrap strong {
  display: block;
  position: relative;
  padding: 4px 0 21px 0;
  font-size: 169.2%;
  font-weight: bold;
  color: #3F3F99;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bnrWrap strong {
    padding: 4px 0 17px 0;
    font-size: 123.1%;
  }
}
.bnrWrap strong::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 16px;
  height: 36px;
  background: url(../../img/icn_naname_l.png) no-repeat 0 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bnrWrap strong::before {
    width: 12px;
    height: 27px;
  }
}
.bnrWrap strong::after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  width: 16px;
  height: 36px;
  background: url(../../img/icn_naname_r.png) no-repeat 0 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bnrWrap strong::after {
    width: 12px;
    height: 27px;
  }
}
.bnrWrap a {
  display: block;
  width: 420px;
  margin: 0 auto;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .bnrWrap a {
    width: 96.62577%;
  }
}
.bnrWrap a > img {
  width: 100%;
  height: auto;
}
.bnrWrap a:hover .btn {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.bnrWrap p {
  padding-top: 18px;
  font-size: 123.1%;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .bnrWrap p {
    padding-top: 13px;
    font-size: 100%;
    line-height: 1.84615;
  }
}
.bnrWrap .btn {
  position: relative;
  width: 260px;
  margin: 12px auto 0 auto;
  padding: 13px 16px 11px 0;
  border: 1px solid #CCCCCC;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  -webkit-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.1);
  font-size: 153.9%;
  font-weight: bold;
  color: #D451AE;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .bnrWrap .btn {
    -moz-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
  }
}
@media screen and (max-width: 767px) {
  .bnrWrap .btn {
    width: 61.90476%;
    margin-top: 13px;
    padding: 12px 0 12px 10.47619%;
    -webkit-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    -o-box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.1);
    text-align: left;
  }
}
.bnrWrap .btn::after {
  content: '';
  position: absolute;
  right: 18px;
  top: 50%;
  display: block;
  width: 9px;
  height: 14px;
  margin-top: -7px;
  background: url(../../img/arrow_pink_9.png) no-repeat 0 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bnrWrap .btn::after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .bnrWrap .btn img {
    width: 92.5%;
    height: auto;
  }
}


.footerWrap {
  margin-top: 172px;
  padding: 53px 0 28px 0;
  background-color: #3E3388;
}
@media screen and (max-width: 767px) {
  .footerWrap {
    margin-top: 85px;
    padding: 42px 0 46px 0;
  }
}
.footerWrap strong {
  display: block;
  width: 275px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .footerWrap strong {
    width: 66.13333%;
  }
}
.footerWrap strong img {
  width: 100%;
  height: auto;
}
.footerWrap .address {
  padding-top: 24px;
  font-size: 108%;
  line-height: 1.71429;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footerWrap .address {
    padding-top: 22px;
  }
}
.footerWrap .copyright {
  padding-top: 35px;
  font-size: 85%;
  color: #FFFFFF;
  word-break: break-all;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footerWrap .copyright {
    padding: 15px 15px 0 15px;
    font-size: 77%;
    line-height: 1.6;
  }
}


/********追加CSS********/


.guidance__txt{
  text-align: center;
  position: absolute;
  top: -43px;
  left: 0;
  right: 0;
  margin: auto;
}

.guidance__txt01 img{
  width: 329px;
}

.guidance__txt02 img{
  width: 363px;
}

@media screen and (max-width: 767px) {

  p.guidance__txt{
    text-align: center;
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    margin: auto;
    padding: 0;
    width: 90%;
  }

  .guidance__txt01 img{
    width: 90%;
  }

  .guidance__txt02 img{
    width: 100%;
  }

}


.bg{
  background:url(../../img/bg.png) no-repeat 50% 50% / cover;
}

/********top__mv********/

.top__mv{
  text-align: center;
  padding: 140px 0;
}

.top__mv__ttl img{
  width: 570px;
}

.top__mv__ttl{
  margin-bottom: 60px;
}

.top__mv__txt{
  font-size: 19px;
  line-height: 2;
  margin-bottom: 65px;
}

.top__mv__txt span{
  font-weight: bold;
  background: linear-gradient(transparent 50%, #f5ff4d 50%);
}

.top__mv__movie{
  background-color: #3e3388;
  border-radius: 10px;
  max-width: 830px;
  margin: 0 auto;
  padding: 10px;
}

.top__mv__movie iframe{
  width: 100%;
  height: 450px;
}

@media screen and (max-width: 767px) {

  .bg{
  background:url(../../img/bg.png) no-repeat 0% 50% / cover;
}

  .top__mv{
    text-align: center;
    padding: 80px 0;
  }

  .top__mv__ttl img{
    width: 285px;
  }

  .top__mv__ttl{
    margin-bottom: 20px;
  }

  .top__mv__txt{
    font-size: 16px;
    line-height: 2;
    margin: 0 20px 30px;
    text-align: left;
  }

  .top__mv__txt br{
    display: none;
  }

  .top__mv__movie{
    margin: 0 20px;
  }

  .top__mv__movie iframe{
    height: 50vw;
  }

}


/********top__about********/

.top__about{
  background-color: rgba(221,244,253,.7);
  padding: 140px 0;
  position: relative;
}

.top__about__info{
  border:2px solid #35318f;
  color:#35318f;
  font-size: 32px;
  width: 460px;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  padding: 25px 0;
  position: absolute;
  top: -45px;
  left: 0;
  right: 0;
}

.top__about__info::after{
  content:"";
  background: url(../../img/arrow-blue.png) no-repeat 50% 50% / contain;
  width: 28px;
  height: 16px;
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -40px;
  margin:auto;

}

.top__about__cont{
  max-width: 900px;
  margin: 0 auto 60px;
  position: relative;
}

.top__about__cont__ttl{
  background-color: #fff;
  position: relative;
  width: 580px;
  height: 310px;
  padding: 70px 40px 40px;
  z-index: 1;
}

.top__about__cont__ttl .subttl{
  position: absolute;
  top: -20px;
  left: 0;
  background-color: #3e3388;
  border-radius: 20px 0 20px 0;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  padding: 15px 25px;
}

.top__about__cont__ttl .subttl img{
  width: 30px;
  margin-right: 10px;
  margin-bottom: 3px;
}

.top__about__cont__ttl h2{
  font-size: 38px;
  line-height: 1.35;
  margin-bottom: 40px;
}

.top__about__cont__ttl h2 span{
  font-weight: bold;
  background: linear-gradient(transparent 50%, #f5ff4d 50%);
}

.top__about__cont__ttl a{
  color: #d451ae;
  font-size: 19px;
  border:2px solid #d451ae;
  border-radius: 10px;
  width: 210px;
  padding: 10px 32px;
  text-align: center;
  text-decoration: none;
  font-weight: 600;
  position: absolute;
  right: 25px;
  bottom: 25px;
  transition:.3s;
}

.top__about__cont__ttl a:hover{
  opacity: .8;
}

.top__about__cont__ttl a::after{
  content:"";
  background: url(../../img/arrow-pink.png) no-repeat 50% 50% / contain;
  width: 9px;
  height: 15px;
  display: inline-block;
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  margin:auto;
}

.top__about__cont__img{
  position: absolute;
  right: 0;
  top: -20px;
}

@media screen and (max-width: 767px) {

  .top__about{
    padding: 100px 0 1px;
  }

  .top__about__info{
    border:2px solid #35318f;
    color:#35318f;
    font-size: 24px;
    width: 80%;
    margin: 0 auto;
    padding: 20px 0;
    top: -35px;
  }

  .top__about__info::after{
    bottom: -30px;
  }


  .top__about__cont{
    max-width: 900px;
    margin: 0 auto 60px;
    position: relative;
  }

  .top__about__cont__ttl{
    background-color: rgba(255,255,255,.8);
    width: auto;
    margin: 0 20px;
    height: auto;
    padding: 50px 20px 20px;
    z-index: 1;
  }

  .top__about__cont__ttl .subttl{
    top: -8px;
    left: -5px;
    font-size: 20px;
    padding: 10px 20px;
  }

  .top__about__cont__ttl .subttl img{
    width: 25px;
    margin-right: 10px;
    margin-bottom: 0px;
  }

  .top__about__cont__ttl h2{
    font-size: 24px;
    line-height: 1.4;
    margin-bottom: 10px;
  }

  .top__about__cont__ttl h2 br{
    display: none;
  }


  .top__about__cont__ttl a{
    font-size: 16px;
    width: 100%;
    position: relative;
    display: block;
    right: auto;
    bottom: auto;
  }

  .top__about__cont__ttl a:hover{
    opacity: 1;
  }


  .top__about__cont__img{
    position: absolute;
    right: 0;
    top: -6%;
    width: auto;
    margin:0 10px; 
    height: 112%;
  }

  .top__about__cont__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

}


/********top__otherlink********/

.top__otherlink{
  background: url(../../img/otherlink-bg.jpg) no-repeat 50% 50% / cover;
  padding: 60px 0;
  margin-bottom: 110px;
}

.top__otherlink__cont{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}

.top__otherlink__cont dl{
  text-align: center;
  margin:0 20px;
}

.top__otherlink__cont dt{
  font-size: 22px;
  color: #fbfcc3;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 20px;
}

.top__otherlink__cont dt::after,
.top__otherlink__cont dt::before{
  content:"";
  width: 1px;
  height: 30px;
  background-color: #fff;
  display: inline-block;
  margin-bottom: -10px;
}

.top__otherlink__cont dt::before{
  transform:rotate(-30deg);
  margin-right: 15px;
}

.top__otherlink__cont dt::after{
  transform:rotate(30deg);
  margin-left: 15px;
}

.top__otherlink__cont dd a{
  width: 100%;
  color: #fff;
  font-size: 25px;
  line-height: 1.4;
  font-weight: bold;
  background-color: #7f3fd0;
  border:4px solid #b2a0c9;
  text-decoration: none;
  width: 460px;
  height: 94px;
  display: block;
  padding-top: 27px;
  position: relative;
  transition: .3s;
}

.top__otherlink__cont dd a:hover{
  opacity: .8;
}

.top__otherlink__cont dd a::after{
  content:"";
  background: url(../../img/arrow-right.png) no-repeat 50% 50% / cover;
  width: 44px;
  height: 10px;
  display: inline-block;
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.top__otherlink__cont dl:last-child dd a{
  background-color: #5baee0;
  border:4px solid #a5d9f8;
}

@media screen and (max-width: 767px) {

  .top__otherlink{
    background: url(../../img/otherlink-bg.jpg) no-repeat 50% 50% / cover;
    padding: 40px 0 10px;
    margin-bottom: 0px;
  }

  .top__otherlink__cont{
    display: block;
  }

  .top__otherlink__cont dl{
    text-align: center;
    margin:0 20px;
    margin-bottom: 30px;
  }

  .top__otherlink__cont dt{
    font-size: 18px;
    margin-bottom: 10px;
  }

  .top__otherlink__cont dt::after,
  .top__otherlink__cont dt::before{
    height: 25px;
    margin-bottom: -5px;
  }


  .top__otherlink__cont dd a{
    font-size: 5.5vw;
    line-height: 1;
    width: auto;
    height: auto;
    display: block;
    padding: 20px 0;
    position: relative;
  }

  .top__otherlink__cont dd a:hover{
    opacity: 1;
  }

  .top__otherlink__cont dd a::after{
    width: 22px;
    height: 5px;
    right: 10px;
  }

}


/********top__btnlist__cont********/

.top__btnlist__cont{
   background: url(../../img/btnlist-bg.jpg) no-repeat 50% 50% / cover;
   width: 900px;
   margin: 0 auto;
   padding-top: 60px;
   padding-bottom: 1px;
}

.top__btnlist__cont__btn{
  margin-bottom: 70px;
}

.top__btnlist__cont__btn h2{
  font-size: 26px;
  font-weight: bold;
  color: #bf8c1f;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 25px;
}

.top__btnlist__cont__btn a{
  background-color: #d451ae;
  text-align: center;
  font-size: 46px;
  font-weight: bold;
  color: #fff;
  display: block;
  width: 750px;
  height: 120px;
  margin: 0 auto;
  padding-top: 36px;
  border-radius: 20px;
  text-decoration: none;
  box-shadow:8px 8px 0px 0px rgba(0,0,0,0.1);
  position: relative;
  transition:.3s;

}

.top__btnlist__cont__btn a:hover{
  opacity: .8;
}

.top__btnlist__cont__btn a::before{
  content:"";
  opacity: .5;
  width: 744px;
  height: 114px;
  border-radius: 18px;
  border:2px solid #fff;
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
}

.top__btnlist__cont__btn a::after{
  content: "";
  background: url(../../img/arrow_white_15.png) no-repeat 50% 50% / cover;
  width: 15px;
  height: 24px;
  display: inline-block;
  position: absolute;
  right: 20px;
  bottom: 0;
  top: 0;
  margin: auto;
}

@media screen and (max-width: 767px) {

  .top__btnlist__cont{
   width: auto;
   padding-top: 40px;
   padding-bottom: 1px;
}

.top__btnlist__cont__btn{
  margin-bottom: 40px;
}

.top__btnlist__cont__btn h2{
  font-size: 20px;
  margin-bottom: 10px;
}

.top__btnlist__cont__btn a{
  font-size: 20px;
  width: 90%;
  height: 70px;
  padding-top: 25px;
  border-radius: 10px;
  box-shadow:4px 4px 0px 0px rgba(0,0,0,0.1);
}

.top__btnlist__cont__btn a:hover{
  opacity: 1;
}

.top__btnlist__cont__btn a::before{
  content:"";
  opacity: .5;
  width: 98%;
  height: 65px;
  border-radius: 9px;
  border:2px solid #fff;
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
}

.top__btnlist__cont__btn a::after{
  content: "";
  background: url(../../img/arrow_white_15.png) no-repeat 50% 50% / cover;
  width: 8px;
  height: 12px;
  display: inline-block;
  position: absolute;
  right: 20px;
  bottom: 0;
  top: 0;
  margin: auto;
}

}

.c-backtop-btn{
  margin-top: 80px;
  margin-bottom: -80px;
}

.c-backtop-btn a{
  background-color: #d451ae;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  display: block;
  width: 256px;
  height: 50px;
  margin: 0 auto;
  padding-top: 14px;
  border-radius: 10px;
  text-decoration: none;
  box-shadow:4px 4px 0px 0px rgba(0,0,0,0.1);
  position: relative;
  transition:.3s;

}

.c-backtop-btn a:hover{
  opacity: .8;
}

.c-backtop-btn a::before{
  content:"";
  opacity: .5;
  width: 250px;
  height: 44px;
  border-radius: 9px;
  border:1px solid #fff;
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
}

.c-backtop-btn a::after{
  content: "";
  background: url(../../img/arrow_white_15.png) no-repeat 50% 50% / cover;
  width: 10px;
  height: 15px;
  display: inline-block;
  position: absolute;
  left: 15px;
  bottom: 0;
  top: 0;
  margin: auto;
  transform: rotate(-180deg);
}

@media screen and (max-width: 767px) {

  .c-backtop-btn{
    margin-top: 40px;
    margin-bottom: -40px;
  }

}


/********line********/

.lineWrap {
  position: relative;
  width: 900px;
  margin: 130px auto 0 auto;
  padding: 63px 0 83px 0;
  background: url(../../img/line_bg.jpg) repeat 0 0;
  background-size: 670px 680px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .lineWrap {
    width: 89.33333%;
    margin-top: 75px;
    padding: 32px 0 44px 0;
    -moz-border-radius: 15px;
    -webkit-border-radius: 15px;
    border-radius: 15px;
  }
}
.lineWrap > img {
  display: block;
  width: 370px;
  height: auto;
  margin: 0 auto 24px auto;
}
@media screen and (max-width: 767px) {
  .lineWrap > img {
    width: 204px;
    margin-bottom: 14px;
  }
}
.lineWrap > p:nth-child(2) {
  font-size: 323%;
  font-weight: bold;
  line-height: 1.14286;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) {
    font-size: 184.6%;
    line-height: 1.125;
  }
}
.lineWrap > p:nth-child(2) > span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
}
.lineWrap > p:nth-child(2) > span::before, .lineWrap > p:nth-child(2) > span::after {
  content: '';
  position: absolute;
  top: 6px;
  display: block;
  width: 2px;
  height: calc(100% + 6px);
  background-color: #232323;
  -moz-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span::before, .lineWrap > p:nth-child(2) > span::after {
    top: 0;
    width: 1px;
  }
}
.lineWrap > p:nth-child(2) > span::before {
  left: -43px;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span::before {
    left: -21px;
  }
}
.lineWrap > p:nth-child(2) > span::after {
  left: -34px;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span::after {
    left: -16px;
  }
}
.lineWrap > p:nth-child(2) > span > span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
}
.lineWrap > p:nth-child(2) > span > span::before, .lineWrap > p:nth-child(2) > span > span::after {
  content: '';
  position: absolute;
  top: 0;
  display: block;
  width: 2px;
  height: calc(100% + 6px);
  background-color: #232323;
  -moz-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span > span::before, .lineWrap > p:nth-child(2) > span > span::after {
    width: 1px;
  }
}
.lineWrap > p:nth-child(2) > span > span::before {
  right: -43px;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span > span::before {
    right: -21px;
  }
}
.lineWrap > p:nth-child(2) > span > span::after {
  right: -34px;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(2) > span > span::after {
    right: -16px;
  }
}
.lineWrap > p:nth-child(3) {
  margin-top: 30px;
  font-size: 130.7%;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .lineWrap > p:nth-child(3) {
    margin-top: 19px;
    font-size: 100%;
    line-height: 1.84615;
  }
}
.lineWrap p:nth-child(4) {
  width: 510px;
  margin: 28px auto 0 auto;
}
@media screen and (max-width: 767px) {
  .lineWrap p:nth-child(4) {
    width: 83.58209%;
    margin-top: 23px;
  }
}
.lineWrap p:nth-child(4) span,
.lineWrap p:nth-child(4) a {
  position: relative;
  display: block;
  width: 100%;
  padding: 19px 0 18px 50px;
  background-color: #fff;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
  font-size: 253.85%;
  font-weight: bold;
  color: #06c755;
  text-decoration: none;
  text-align: center;
  -moz-transition: border-color 0.5s ease;
  -o-transition: border-color 0.5s ease;
  -webkit-transition: border-color 0.5s ease;
  transition: border-color 0.5s ease;
  border: 3px solid #12aa83;
}
@media screen and (max-width: 767px) {
  .lineWrap p:nth-child(4) span,
  .lineWrap p:nth-child(4) a {
    padding: 11px 0 9px 22px;
    border-width: 2px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 138.5%;
  }
}
@media screen and (min-width: 768px) {
  .lineWrap p:nth-child(4) span:hover,
  .lineWrap p:nth-child(4) a:hover {
    border-color: #59c4a8;
    color: #51d888;
    cursor: pointer;
  }
  .lineWrap p:nth-child(4) span:hover::before,
  .lineWrap p:nth-child(4) a:hover::before {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
  }
}
.lineWrap p:nth-child(4) span::before,
.lineWrap p:nth-child(4) a::before {
  content: '';
  position: absolute;
  left: 25px;
  top: 50%;
  display: block;
  width: 50px;
  height: 50px;
  margin-top: -25px;
  background: url(../../img/line.png) no-repeat 0 0;
  background-size: contain;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .lineWrap p:nth-child(4) span::before,
  .lineWrap p:nth-child(4) a::before {
    left: 13px;
    width: 28px;
    height: 28px;
    margin-top: -14px;
    background-image: url(../../img/line_sp.png);
  }
}
.lineWrap > div {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
  text-align: center;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .lineWrap > div.show {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    z-index: auto;
  }
}
.lineWrap > div::before {
  content: '';
  display: block;
  height: calc((100% - 400px) / 2);
}
.lineWrap > div > p:nth-child(1) {
  margin-bottom: 20px;
  font-size: 153.9%;
  color: #fff;
}
.lineWrap > div > img {
  width: 300px;
  height: auto;
}
.lineWrap > div > p:nth-child(3) {
  margin-top: 20px;
  font-size: 108%;
  color: #fff;
}
.lineWrap > div i {
  position: absolute;
  right: 30px;
  top: 30px;
  display: block;
  width: 30px;
  height: 30px;
}
@media screen and (min-width: 768px) {
  .lineWrap > div i:hover {
    cursor: pointer;
  }
  .lineWrap > div i:hover::before, .lineWrap > div i:hover::after {
    background-color: #b3b3b3;
  }
}
.lineWrap > div i::before, .lineWrap > div i::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  display: block;
  width: 2px;
  height: 100%;
  margin-left: -1px;
  -moz-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
  background-color: #fff;
}
.lineWrap > div i::before {
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.lineWrap > div i::after {
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}