@charset "utf-8";
/*--------------------
reset
--------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,picture,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
body {
  background: #fff;
  box-sizing: border-box;
}
article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display:block;
}
a {
  margin:0;
  padding:0;
  border:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
dl, dt, dd, ul, li, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
picture {
  display: block;
}
img{
  max-width: 100%;
  margin: 0 auto;
  line-height: 0;
  vertical-align: top;
  border-style: none;
  display: block;
}

/*====================
content
====================*/
body {
  position: relative;
  line-height: 1;
  text-align: left;
  font-family: YuGothic, "游ゴシック体", Yu Gothic, "游ゴシック", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Helvetica Neue", Arial, "メイリオ", Meiryo, sans-serif;
  color: #363636;
  font-weight: 500;
  background-image: url("../img/pc_bg.png");
  background-attachment:fixed;
  background-position: top center;
  background-size: 100% cover;
}
#content {
    padding: 0;
    margin: 0;
}
/* a
--------------------*/
a img {
  transition-duration: 0.5s;
}
a:hover img {
  opacity: 0.75;
  transition-duration: 0.5s;
}
a { text-decoration: underline;}
a:hover { text-decoration: none;}
/* wrapper
--------------------*/
#wrapper {
  position: relative;
  max-width: 750px;
  margin: 0 auto;
  font-size: 1.6rem;
  display: block;
  background: #fff;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
}
#wrapper h1, h2, h3, p {
  line-height: 1;
  font-size: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}
#wrapper .inner {
  position: relative;
}
/*====================
header
====================*/
#wrapper header p,
#wrapper header .btn {
  position: absolute;
}
#wrapper header p:first-of-type {
  width: calc(142 / 750 *100%);
  top: 29.3%;
  left: 8.5%;
}
#wrapper header p:nth-of-type(2) {
  width: calc(681 / 750 *100%);
  bottom: 20%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
#wrapper header .btn {
  bottom: 9%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
/*====================
main
====================*/
#wrapper main {
}
/* model
--------------------*/
.model .icon {
  position: absolute;
  top: -6%;
  right: 0%;
  z-index: 10;
  width: calc(181 / 750 * 100%);
}
/* nayami
--------------------*/
.nayami h2,
.nayami p {
  position: absolute;
}
.nayami h2 {
  width: calc(130 / 750 *100%);
  top: 0%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.nayami p:first-of-type {
  width: calc(433 / 750 *100%);
  top: 40%;
  left: 4%;
}
.nayami p:nth-of-type(2) {
  width: calc(361 / 750 *100%);
  top: 53.5%;
  right: 3%;
}
.nayami p:nth-of-type(3) {
  width: calc(311 / 750 *100%);
  top: 70.5%;
  right: 3%;
}
.nayami p:nth-of-type(4) {
  width: calc(523 / 750 *100%);
  top: 87.5%;
  left: 4%;
}

/* support
--------------------*/
.support h2 img:first-of-type {
  width: calc(499 / 750 *100%);
  position: absolute;
  top: 10%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.support h3,
.support p,
.support .img {
  position: absolute;
}
/* support01 */
.support_01 h3 {
  width: calc(620 / 750 *100%);
  top: 0%;
  margin: 0 auto 0 12%;
  left: 0;
  right: 0;
}
.support_01 p {
  width: calc(591 / 750 *100%);
  top: 27%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.support_01 .img {
  width: calc(686 / 750 *100%);
  bottom: 3%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
/* support02 */
.support_02 h3 {
  width: calc(611 / 750 *100%);
  top: 0%;
  margin: 0 auto 0 12%;
  left: 0;
  right: 0;
}
.support_02 p {
  width: calc(599 / 750 *100%);
  top: 26.5%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.support_02 .img {
  width: calc(667 / 750 *100%);
  bottom: .5%;
  margin: 0 0 0 auto;
  left: 0;
  right: 0;
}
/* support03 */
.support_03 h3 {
  width: calc(488 / 750 *100%);
  top: 0%;
  margin: 0 auto 0 24%;
  left: 0;
  right: 0;
}
.support_03 p {
  width: calc(584 / 750 *100%);
  top: 28%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.support_03 .img {
  width: calc(686 / 750 *100%);
  bottom: -2%;
  margin: 0 auto;
  left: 0;
  right: 0;
}

/* backup
--------------------*/
.backup p {
  position: absolute;
  width: calc(130 / 750 *100%);
  top: 3.5%;
  right: 4%;
  z-index: 10;
}

/* guide
--------------------*/
.guide p.icon {
  position: absolute;
  width: calc(174 / 750 *100%);
  top: -2.2%;
  right: 1%;
}
/* guide_01 */
.guide_01 p {
  position: absolute;
  width: calc(580 / 750 *100%);
  margin: 0 auto;
  left: 0;
  right: 0;
}
.guide_01 p:nth-of-type(1) {
  top: 8.5%;
}
.guide_01 p:nth-of-type(2) {
  top: 43%;
}
/* guide_02 */
.guide_02 h3,
.guide_02 p,
.guide_02 .img,
.guide_02 .btn {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.guide_02 h3 {
  width: calc(463 / 750 *100%);
  top: 0%;
}
.guide_02 p {
  width: calc(554 / 750 *100%);
  top: 9.5%;
}
.guide_02 .img {
  width: calc(608 / 750 *100%);
  bottom: 24.6%;
}
.guide_02 .btn {
  bottom: 12%;
}

/* flow
--------------------*/
.flow p {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.flow p:first-of-type,
.flow p:nth-of-type(2),
.flow p:nth-of-type(3) {
  width: calc(606 / 750 *100%);
  left: -2%;
}
.flow p:first-of-type {
  top: 4.5%;
}
.flow p:nth-of-type(2) {
  top: 19%;
}
.flow p:nth-of-type(3) {
  top: 33.5%;
}
.flow p:nth-of-type(4) {
  width: calc(469 / 750 *100%);
  top: 46%;
  right: -7.5%;
}
.flow p:nth-of-type(5) {
  width: calc(593 / 750 *100%);
  top: 63.8%;
}



/* btn
--------------------*/
#wrapper .btn {
  width: calc(630 / 750 *100%);
  margin: 0 auto;
}
/* go_top
--------------------*/
#wrapper .go_top {
  position: fixed;
  width: calc(100/ 750 *100%);
  bottom: 1%;
  right: 2%;
  z-index: 999;
  opacity: .7;
}

/*====================
faq
====================*/
.faq .inner {
  width: calc(660 / 750 *100%);
  margin: 0 auto;
  background: #f8f8f8;
  border-radius: 12px;
  margin-bottom: 5%;
}
.faq h3 {
  position: relative;
  width: 100%;
  cursor: pointer;
}
.faq p {
  font-size: clamp(0.813rem, 0.125rem + 2.93vw, 1.5rem);
  line-height: 1.8;
  text-align: left;
  padding: 4% 6% 6%;
  box-sizing: border-box;
  display: none;
}
.faq .btn {
  padding-top: 6%;
}
/* プラスマイナスアイコン */
.acc_icon_wrap {
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translatey(-50%);
  width: 1.2em;
  height: 1.2em;
}
.acc_icon_wrap .acc_icon {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
}
.acc_icon_wrap .acc_icon:before,
.acc_icon_wrap .acc_icon:after {
  position: absolute;
  content: "";
  display: block;
  transition: all 0.5s;
  background: #fff;
  left: 50%;
  top: 50%;
  width: 50%;
  height: 3px;
  transform: translate(-50%, -50%);
}
.acc_icon_wrap .acc_icon:before {
  transform: translate(-50%, -50%) rotate(90deg);
}
.acc_icon_wrap .acc_icon.open:before {
  transform: translate(-50%, -50%) rotate(0deg);
}

/*====================
footer
====================*/
footer {
  font-size: min(max(12px, calc(0.75rem + ((1vw - 3.75px) * 0.5333))), 14px);
  min-height: 0vw;    
  padding: 10% 0 0;
  margin: 4% auto 0;
  text-align: center;
  color: #333333;
}
footer ul {
  list-style-type: none;
  margin: 0;
  padding-bottom: 5%;
}
footer ul li {
  background: #eeeeee;
  text-align: center;
  width: 31%;
  margin-left: 0.5%;
  margin-right: 0.5%;
  display: inline-block;
  cursor: pointer;
  transition-duration: 0.5s;
}
footer ul li a {
  font-size: min(max(12px, calc(0.75rem + ((1vw - 3.75px) * 0.5333))), 14px);
  min-height: 0vw;    
  color: #333333;
  display: block;
  text-decoration: none;
  padding: 5% 4% 5% 4%;
}
footer ul li a:hover {
  background: #f7f7f7;
  transition-duration: 0.5s;
}
#copy {
  font-size: min(max(10px, calc(0.625rem + ((1vw - 3.75px) * 0.5333))), 12px);
  min-height: 0vw;
  margin: 0 auto;
  padding: 2% 0 8%;
  text-align: center;
}

/*====================
slider
====================*/
.slider_wrap {
  width: 100%;
  margin: 0 auto;
}
.slick-arrow {
  width: initial !important;
  height: initial !important;
  z-index: 2 !important;
}
.slick-arrow:before {
  font-size: 30px !important;
}
.slick-prev::before, .slick-next::before {
  color: #c9c9c9 !important;
}
.slick-prev, .slick-next {
  top: 50% !important;
}
.slick-dots li {
  width: 6px !important;
  height: 6px !important;
  margin: 0 8px!important;
}
.slick-dots li button::before {
  color: #c9c9c9 !important;
}
.slick-dots li.slick-active button::before {
  color: #000 !important;
}
.slick-dots li button::before {
  font-size: 6px !important;
  width: 6px !important;
  height: 6px !important;
  line-height: 6px !important;
}
/* model slider
--------------------*/
.model .slider_wrap {
  position: absolute;
  width: 100%;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.model .slick-next {
  right: 3% !important;
}
.model .slick-prev {
  left: 3% !important;
}

/*====================
animation
====================*/
.fadeUp {
  opacity: 0;
  transition: 2s;
  transform: translateY(60px);
}
.fadeUp.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.fadeIn {
  opacity: 0;
  transition: 2s;
}
.fadeIn.active {
	opacity: 1;
	visibility: visible;
}
.fv_fadeIn {
  animation: fadeIn 2s ease 0s 1 normal;
}
.fv_slideUp {
  animation: slideUp 3s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/*====================
deco
====================*/
.bold {
  font-weight: bold;
}
.pink {
  color: #fc2875;
}

.txt2 {
  font-size: 0.9rem;
  line-height: 1.2;
}

.mb10 {
  margin-bottom: 10px;
}

@media screen and (min-width:756px) {
  .txt2 {
  font-size: 1rem;
  line-height: 1.5;
  }
}