@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
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, small, strong, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; font-size: 100%; }

ul, ol { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

del { text-decoration: line-through; }

table { border-collapse: collapse; border-spacing: 0; }

hr { display: block; height: 1px; border: 0; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

* { box-sizing: border-box; }

@media screen and (min-width: 1025px) { .sp { display: none !important; } }
@media screen and (max-width: 1024px) { .pc { display: none !important; } }
* { box-sizing: border-box; }

html { font-size: 62.5%; }

body { width: 100vw; overflow-x: hidden; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 500; font-size: calc(24 / 750 * 100vw); color: #fff; line-height: 1.2; word-wrap: break-word; }

@media screen and (min-width: 1025px) { body { font-size: 1.6rem; } }
a { color: #333; text-decoration: none; display: inline-block; }

img { max-width: 100%; height: auto; vertical-align: bottom; }

sup { font-size: 70%; vertical-align: super; }

/*--------------------------------------------------------------------------------------- loading
----------------------------------------------------------------------------------------*/
.loading { width: 100vw; height: 100vh; background-color: #fff; opacity: 1; visibility: visible; position: fixed; top: 0; left: 0; z-index: 900; }

/*--------------------------------------------------------------------------------------- fixed
----------------------------------------------------------------------------------------*/
.bgFixed { width: 100vw; height: 100vh; background: url(../img/pc/bg.png) center center/cover no-repeat; position: fixed; top: 0; left: 0; z-index: 10; }

/*--------------------------------------------------------------------------------------- fadeIn
----------------------------------------------------------------------------------------*/
.fadeInAnim { transform: translate(0, 40px); opacity: 0; }
.fadeInAnim.fadeInAnimActive { transform: translate(0, 0); opacity: 1; transition: all .7s; }

/*--------------------------------------------------------------------------------------- header
----------------------------------------------------------------------------------------*/
.header { position: fixed; top: 0; left: 0; z-index: 1000; }
.headerInner { display: flex; justify-content: space-between; align-items: flex-start; }
.headerNav { width: calc(280 / 750 * 100vw); height: calc(115 / 750 * 100vw); position: absolute; top: 0; left: calc(100vw - 280 / 750 * 100vw); }
.headerList { display: flex; justify-content: flex-start; align-items: center; }
.headerListItem { position: relative; }
.headerListItem:before { content: ""; display: block; position: absolute; }
.headerListItem.scroll { background-color: #00152a; }
.headerListItem.ItemMenu { width: calc(110 / 750 * 100vw); height: calc(115 / 750 * 100vw); }
.headerListItem.ItemMenu:before { width: calc(78 / 750 * 100vw); height: calc(89 / 750 * 100vw); background: url(../img/header_menu.png) 0 0/contain no-repeat; top: calc(50% - 44 / 750 * 100vw); left: calc(50% - 39 / 750 * 100vw); }
.headerListItem.ItemMenu.off:before { width: calc(51 / 750 * 100vw); height: calc(62 / 750 * 100vw); background: url(../img/header_menu_off.png) 0 0/contain no-repeat; top: calc(50% - 31 / 750 * 100vw); left: calc(50% - 25 / 750 * 100vw); }
.headerListItem.ItemMenu.active { background-color: #00152a; }
.headerListItem.ItemMenu.active:before { width: calc(53 / 750 * 100vw); height: calc(64 / 750 * 100vw); background: url(../img/header_menu_close.png) 0 0/contain no-repeat; top: calc(50% - 32 / 750 * 100vw); left: calc(50% - 26 / 750 * 100vw); }
.headerListItem.ItemOnlineShop { width: calc(170 / 750 * 100vw); height: calc(115 / 750 * 100vw); }
.headerListItem.ItemOnlineShop:before { width: calc(144 / 750 * 100vw); height: calc(94 / 750 * 100vw); background: url(../img/header_online.png) 0 0/contain no-repeat; top: calc(50% - 47 / 750 * 100vw); left: calc(50% - 72 / 750 * 100vw); }
.headerListItem.ItemOnlineShop.off:before { width: calc(119 / 750 * 100vw); height: calc(69 / 750 * 100vw); background: url(../img/header_online_off.png) 0 0/contain no-repeat; top: calc(50% - 34 / 750 * 100vw); left: calc(50% - 59 / 750 * 100vw); }
.headerListItem.ItemOnlineShop.active { background-color: #00152a; }
.headerListItem.ItemOnlineShop.active:before { width: calc(53 / 750 * 100vw); height: calc(64 / 750 * 100vw); background: url(../img/header_online_close.png) 0 0/contain no-repeat; top: calc(50% - 32 / 750 * 100vw); left: calc(50% - 26 / 750 * 100vw); }

@media screen and (min-width: 1025px) { .headerNav { width: calc(450 / 1500 * 100vw); height: calc(100 / 1500 * 100vw); left: calc(100vw - 360 / 1500 * 100vw); }
  .headerListItem { cursor: pointer; transition: all .3s; }
  .headerListItem:hover { opacity: .7; }
  .headerListItem.scroll:hover, .headerListItem.off:hover, .headerListItem.active:hover { opacity: 1; }
  .headerListItem.scroll:hover { background-color: #005a9a; }
  .headerListItem.ItemMenu { width: calc(150 / 1500 * 100vw); height: calc(100 / 1500 * 100vw); }
  .headerListItem.ItemMenu:before { width: calc(97 / 1500 * 100vw); height: calc(28 / 1500 * 100vw); background: url(../img/pc/header_menu.png) 0 0/contain no-repeat; top: calc(50% - 14 / 1500 * 100vw); left: calc(50% - 48 / 1500 * 100vw); }
  .headerListItem.ItemMenu.off:not(.active):before { width: calc(84 / 1500 * 100vw); height: calc(14 / 1500 * 100vw); background: url(../img/pc/header_menu_off.png) 0 0/contain no-repeat; top: calc(50% - 7 / 1500 * 100vw); left: calc(50% - 41 / 1500 * 100vw); }
  .headerListItem.ItemMenu.off:not(.active):hover:before { background: url(../img/pc/header_menu_over.png) 0 0/contain no-repeat; }
  .headerListItem.ItemMenu.active { background-color: #00152a; }
  .headerListItem.ItemMenu.active:before { width: calc(88 / 1500 * 100vw); height: calc(17 / 1500 * 100vw); background: url(../img/pc/header_menu_close.png) 0 0/contain no-repeat; top: calc(50% - 8 / 1500 * 100vw); left: calc(50% - 44 / 1500 * 100vw); }
  .headerListItem.ItemMenu.active:hover { background-color: #005a9a; }
  .headerListItem.ItemOnlineShop { width: calc(300 / 1500 * 100vw); height: calc(100 / 1500 * 100vw); }
  .headerListItem.ItemOnlineShop:before { width: calc(159 / 1500 * 100vw); height: calc(35 / 1500 * 100vw); background: url(../img/pc/header_online.png) 0 0/contain no-repeat; top: calc(50% - 17 / 1500 * 100vw); left: calc(50% - 129 / 1500 * 100vw); }
  .headerListItem.ItemOnlineShop.off:not(.active):before { width: calc(146 / 1500 * 100vw); height: calc(21 / 1500 * 100vw); background: url(../img/pc/header_online_off.png) 0 0/contain no-repeat; top: calc(50% - 10 / 1500 * 100vw); left: calc(50% - 123 / 1500 * 100vw); }
  .headerListItem.ItemOnlineShop.off:not(.active):hover:before { background: url(../img/pc/header_online_over.png) 0 0/contain no-repeat; }
  .headerListItem.ItemOnlineShop.active { background-color: #00152a; }
  .headerListItem.ItemOnlineShop.active:before { width: calc(113 / 1500 * 100vw); height: calc(17 / 1500 * 100vw); background: url(../img/pc/header_online_close.png) 0 0/contain no-repeat; top: calc(50% - 8 / 1500 * 100vw); left: calc(50% - 116 / 1500 * 100vw); }
  .headerListItem.ItemOnlineShop.active:hover { background-color: #005a9a; } }
/*--------------------------------------------------------------------------------------- menu
----------------------------------------------------------------------------------------*/
.menu { width: 100vw; height: 100vh; position: fixed; top: 0; left: 0; z-index: 900; opacity: 0; visibility: hidden; transition: all .3s; }
.menu.active { opacity: 1; visibility: visible; transition: all .7s; }
.menuCont { padding: 0 calc(90 / 750 * 100vw); width: 100vw; height: 100vh; background-color: #fff; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; position: relative; }
.menuBox { opacity: 0; visibility: hidden; position: absolute; top: 50%; left: calc(90 / 750 * 100vw); transform: translateY(0); transition: all 0s .3s; }
.menuBox.fadeIn { transform: translateY(-50%); transition: all .7s; }
.menuBox.menuDetail { z-index: 910; }
.menuBox.menuDetail.active { opacity: 1; visibility: visible; }
.menuBox.menuDetail .menuTitle { margin-bottom: calc(100 / 750 * 100vw); }
.menuBox.menuDetail .menuTitle img { width: calc(96 / 750 * 100vw); }
.menuBox.menuDetail .menuNav { margin-bottom: calc(60 / 750 * 100vw); }
.menuBox.menuDetail .menuListItem:not(:last-of-type) { margin-bottom: calc(90 / 750 * 100vw); }
.menuBox.menuDetail .menuListLink { font-size: calc(36 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: calc(43 / 36); letter-spacing: .03em; position: relative; }
.menuBox.menuDetail .menuListLink small { font-size: 70%; }
.menuBox.menuDetail .menuListLink:hover { color: #2d76ad; }
.menuBox.menuDetail .menuListLink:before { content: ""; display: block; position: absolute; top: calc(-25 / 750 * 100vw); left: calc(2 / 750 * 100vw); }
.menuBox.menuDetail .menuListLink.linkFeatures:before { width: calc(116 / 750 * 100vw); height: calc(16 / 750 * 100vw); background: url(../img/menu_features.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkFeatures:hover:before { background: url(../img/menu_features_over.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkHowToUse:before { width: calc(143 / 750 * 100vw); height: calc(16 / 750 * 100vw); background: url(../img/menu_howtouse.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkHowToUse:hover:before { background: url(../img/menu_howtouse_over.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkConcept:before { width: calc(113 / 750 * 100vw); height: calc(16 / 750 * 100vw); background: url(../img/menu_concept.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkConcept:hover:before { background: url(../img/menu_concept_over.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkReborn:before { width: calc(94 / 750 * 100vw); height: calc(17 / 750 * 100vw); background: url(../img/menu_reborn.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuListLink.linkReborn:hover:before { background: url(../img/menu_reborn_over.png) 0 0/contain no-repeat; }
.menuBox.menuDetail .menuIcon { margin: 0 auto calc(35 / 750 * 100vw) 0; width: calc(55 / 750 * 100vw); height: calc(55 / 750 * 100vw); background: url(../img/icon_instagram-blue.png) 0 0/contain no-repeat; display: block; }
.menuBox.onlineShop { z-index: 920; }
.menuBox.onlineShop.active { opacity: 1; visibility: visible; }
.menuBox.onlineShop .menuTitle { margin-bottom: calc(80 / 750 * 100vw); }
.menuBox.onlineShop .menuTitle img { width: calc(234 / 750 * 100vw); }
.menuBox.onlineShop .menuNav { margin-bottom: calc(70 / 750 * 100vw); }
.menuBox.onlineShop .menuListItem:not(:last-of-type) { margin-bottom: calc(20 / 750 * 100vw); }
.menuBox.onlineShop .menuListLink { padding-left: calc(385 / 750 * 100vw); width: calc(570 / 750 * 100vw); height: calc(170 / 750 * 100vw); border: calc(2 / 750 * 100vw) solid rgba(0, 34, 63, 0.5); font-size: calc(30 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: 1; letter-spacing: .05em; display: flex; align-items: center; position: relative; }
.menuBox.onlineShop .menuListLink:hover { border-color: #2d76ad; color: #2d76ad; }
.menuBox.onlineShop .menuListLink:hover:after { background: url(../img/icon_tab_over.png) 0 0/contain no-repeat; }
.menuBox.onlineShop .menuListLink:before { content: ""; display: block; position: absolute; }
.menuBox.onlineShop .menuListLink:after { content: ""; width: calc(26 / 750 * 100vw); height: calc(26 / 750 * 100vw); display: block; background: url(../img/icon_tab.png) 0 0/contain no-repeat; position: absolute; top: calc(50% - 13 / 750 * 100vw); right: calc(45 / 750 * 100vw); }
.menuBox.onlineShop .menuListLink.linkAmazon:before { width: calc(236 / 750 * 100vw); height: calc(71 / 750 * 100vw); background: url(../img/logo_amazon.png) 0 0/contain no-repeat; top: calc(50% - 28 / 750 * 100vw); left: calc(84 / 750 * 100vw); }
.menuBox.onlineShop .menuListLink.linkLohaco:before { width: calc(252 / 750 * 100vw); height: calc(34 / 750 * 100vw); background: url(../img/logo_lohaco.png) 0 0/contain no-repeat; top: calc(50% - 17 / 750 * 100vw); left: calc(76 / 750 * 100vw); }
.menuBox.onlineShop .menuListLink.linkRakuten:before { width: calc(218 / 750 * 100vw); height: calc(64 / 750 * 100vw); background: url(../img/logo_rakuten.png) 0 0/contain no-repeat; top: calc(50% - 32 / 750 * 100vw); left: calc(93 / 750 * 100vw); }
.menuCopyright { font-size: calc(20 / 750 * 100vw); font-weight: 300; color: #00152a; line-height: 1; }

@media screen and (min-width: 1025px) { .menu { background: url(../img/pc/menu_bg.png) 0 0/cover no-repeat; }
  .menu:before { content: ""; width: calc(552 / 1980 * 100vw); height: calc(79 / 1980 * 100vw); background: url(../img/pc/menu_logo.png) 0 0/contain no-repeat; position: absolute; top: calc(50% - 39 / 1980 * 100vw); left: calc(210 / 1980 * 100vw); }
  .menuCont { margin-left: 50vw; padding: 0; }
  .menuBox { left: calc(120 / 1980 * 100vw); }
  .menuBox.menuDetail .menuTitle { margin-bottom: calc(100 / 1980 * 100vw); }
  .menuBox.menuDetail .menuTitle img { width: calc(75 / 1980 * 100vw); }
  .menuBox.menuDetail .menuNav { margin-bottom: calc(50 / 1980 * 100vw); margin-left: calc(-2 / 1980 * 100vw); }
  .menuBox.menuDetail .menuListItem:not(:last-of-type) { margin-bottom: calc(55 / 1980 * 100vw); }
  .menuBox.menuDetail .menuListLink { font-size: calc(30 / 1980 * 100vw); line-height: calc(36 / 30); }
  .menuBox.menuDetail .menuListLink:before { top: calc(-20 / 1980 * 100vw); left: calc(2 / 1980 * 100vw); }
  .menuBox.menuDetail .menuListLink.linkFeatures:before { width: calc(97 / 1980 * 100vw); height: calc(14 / 1980 * 100vw); background: url(../img/menu_features.png) 0 0/contain no-repeat; }
  .menuBox.menuDetail .menuListLink.linkHowToUse:before { width: calc(119 / 1980 * 100vw); height: calc(13 / 1980 * 100vw); background: url(../img/menu_howtouse.png) 0 0/contain no-repeat; }
  .menuBox.menuDetail .menuListLink.linkConcept:before { width: calc(94 / 1980 * 100vw); height: calc(14 / 1980 * 100vw); background: url(../img/menu_concept.png) 0 0/contain no-repeat; }
  .menuBox.menuDetail .menuListLink.linkReborn:before { width: calc(78 / 1980 * 100vw); height: calc(14 / 1980 * 100vw); }
  .menuBox.menuDetail .menuIcon { margin: 0 auto calc(25 / 1980 * 100vw) 0; width: calc(28 / 1980 * 100vw); height: calc(28 / 1980 * 100vw); }
  .menuBox.menuDetail .menuIcon:hover { background: url(../img/icon_instagram_over.png) 0 0/contain no-repeat; }
  .menuBox.onlineShop .menuTitle { margin-bottom: calc(60 / 1980 * 100vw); }
  .menuBox.onlineShop .menuTitle img { width: calc(175 / 1980 * 100vw); }
  .menuBox.onlineShop .menuNav { margin-bottom: calc(40 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListItem:not(:last-of-type) { margin-bottom: calc(10 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListLink { padding-left: calc(280 / 1980 * 100vw); width: calc(420 / 1980 * 100vw); height: calc(120 / 1980 * 100vw); border: calc(2 / 1980 * 100vw) solid rgba(0, 34, 63, 0.5); font-size: calc(22 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListLink:after { width: calc(13 / 1980 * 100vw); height: calc(13 / 1980 * 100vw); top: calc(50% - 6 / 1980 * 100vw); right: calc(40 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListLink.linkAmazon:before { width: calc(168 / 1980 * 100vw); height: calc(51 / 1980 * 100vw); top: calc(50% - 21 / 1980 * 100vw); left: calc(65 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListLink.linkLohaco:before { width: calc(180 / 1980 * 100vw); height: calc(24 / 1980 * 100vw); top: calc(50% - 12 / 1980 * 100vw); left: calc(62 / 1980 * 100vw); }
  .menuBox.onlineShop .menuListLink.linkRakuten:before { width: calc(156 / 1980 * 100vw); height: calc(46 / 1980 * 100vw); top: calc(50% - 23 / 1980 * 100vw); left: calc(74 / 1980 * 100vw); }
  .menuCopyright { font-size: calc(12 / 1980 * 100vw); } }
/*--------------------------------------------------------------------------------------- main
----------------------------------------------------------------------------------------*/
.main { text-align: center; position: relative; z-index: 100; }

.kv { position: relative; width: 100vw; height: calc(1334 / 750 * 100vw); background: url(../img/kv_bg.png) center center/cover no-repeat; }
.kvCont { position: relative; }
.kvCont:before { content: ""; width: calc(319 / 750 * 100vw); height: calc(951 / 750 * 100vw); display: block; background: url(../img/kv_before.png) 0 0/contain no-repeat; position: absolute; top: calc(140 / 750 * 100vw); left: calc(50% - 158 / 750 * 100vw); }
.kvLogo { position: absolute; top: calc(13 / 750 * 100vw); left: calc(15 / 750 * 100vw); z-index: 100; }
.kvLogo img { width: calc(317 / 750 * 100vw); }
.kvTitle { position: relative; top: calc(960 / 750 * 100vw); left: calc(0 / 750 * 100vw); z-index: 30; }
.kvTitle img { width: calc(706 / 750 * 100vw); }

@media screen and (min-width: 1025px) { .kv { height: calc(1000 / 1500 * 100vw); background: url(../img/pc/kv_bg.png) center center/cover no-repeat; }
  .kvCont:before { width: calc(245 / 1500 * 100vw); height: calc(728 / 1500 * 100vw); background: url(../img/pc/kv_before.png) 0 0/contain no-repeat; top: calc(110 / 1500 * 100vw); left: calc(50% + 430 / 1500 * 100vw); }
  .kvLogo { top: calc(34 / 1500 * 100vw); left: calc(50 / 1500 * 100vw); }
  .kvLogo img { width: calc(228 / 1500 * 100vw); }
  .kvTitle { top: calc(255 / 1500 * 100vw); left: calc(60 / 1500 * 100vw); text-align: left; }
  .kvTitle img { width: calc(1027 / 1500 * 100vw); } }
.lead { height: calc(595 / 750 * 100vw); background: url(../img/lead_bg.png) center center/100% no-repeat; position: relative; }
.lead:before { content: ""; width: calc(550 / 750 * 100vw); height: calc(128 / 750 * 100vw); display: block; background: url(../img/lead_before.png) 0 0/contain no-repeat; position: absolute; bottom: calc(-105 / 750 * 100vw); left: calc(50 / 750 * 100vw); z-index: 10; }
.leadCont { padding: calc(80 / 750 * 100vw) calc(50 / 750 * 100vw) 0; position: relative; }
.leadImage img { width: 100%; }
.leadText { font-size: calc(30 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: 2; text-align: left; }
.leadText:not(:last-of-type) { margin-bottom: calc(70 / 750 * 100vw); }

@media screen and (min-width: 1025px) { .lead { height: calc(743 / 1920 * 100vw); background: url(../img/pc/lead_bg.png) center center/100% no-repeat; }
  .lead:before { content: ""; width: calc(722 / 1500 * 100vw); height: calc(185 / 1500 * 100vw); display: block; background: url(../img/pc/lead_before.png) 0 0/contain no-repeat; position: absolute; bottom: calc(-140 / 1500 * 100vw); left: calc(60 / 1500 * 100vw); }
  .leadCont { margin: 0 auto; padding: calc(110 / 1500 * 100vw) 0 0; max-width: calc(1260 / 1500 * 100vw); }
  .leadText { font-size: calc(30 / 1500 * 100vw); }
  .leadText:not(:last-of-type) { margin-bottom: calc(60 / 1500 * 100vw); } }
.features { padding: calc(220 / 750 * 100vw) 0 calc(70 / 750 * 100vw); }
.featuresCont { padding: 0 calc(50 / 750 * 100vw); display: flex; flex-direction: column; justify-content: flex-start; align-items: center; position: relative; }
.featuresBox { padding: calc(45 / 750 * 100vw) calc(50 / 750 * 100vw) calc(35 / 750 * 100vw); width: calc(650 / 750 * 100vw); text-align: center; border-radius: calc(6 / 750 * 100vw); background-color: #fff; position: relative; z-index: 20; }
.featuresBox:before { content: ""; width: calc(80 / 750 * 100vw); height: calc(80 / 750 * 100vw); display: block; position: absolute; top: calc(-15 / 750 * 100vw); left: calc(-25 / 750 * 100vw); z-index: 30; }
.featuresBox:after { content: ""; width: calc(650 / 750 * 100vw); height: 100%; border: calc(2 / 750 * 100vw) solid #fff; border-radius: calc(6 / 750 * 100vw); display: block; position: absolute; top: calc(7 / 750 * 100vw); left: calc(7 / 750 * 100vw); z-index: 10; }
.featuresBox.Box01:before { background: url(../img/icon_no1.png) 0 0/contain no-repeat; }
.featuresBox.Box02:before { background: url(../img/icon_no2.png) 0 0/contain no-repeat; }
.featuresBox.Box03:before { background: url(../img/icon_no3.png) 0 0/contain no-repeat; }
.featuresBox:not(:last-of-type) { margin: 0 0 calc(30 / 750 * 100vw) 0; }
.featuresTitle.Title01 { margin-bottom: calc(30 / 750 * 100vw); padding: 0 calc(50 / 750 * 100vw); text-align: right; }
.featuresTitle.Title01 img { margin-right: calc(-10 / 750 * 100vw); width: calc(544 / 750 * 100vw); }
.featuresTitle.Title02 { font-size: calc(46 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: calc(57 / 46); letter-spacing: .03em; position: relative; z-index: 20; }
.featuresText { margin-top: calc(20 / 750 * 100vw); font-size: calc(26 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: calc(45 / 30); text-align: left; letter-spacing: .01em; position: relative; z-index: 20; }
.featuresNote { margin-top: calc(10 / 750 * 100vw); font-size: calc(20 / 750 * 100vw); font-weight: 300; color: #00152a; line-height: 1; position: relative; z-index: 20; }
.featuresNote sup { vertical-align: top; }

@media screen and (min-width: 1025px) { .features { padding: calc(130 / 1500 * 100vw) 0 calc(70 / 1500 * 100vw); }
  .featuresCont { margin: 0 auto; padding: 0; width: calc(1260 / 1500 * 100vw); flex-direction: row; justify-content: flex-start; align-items: initial; }
  .featuresBox { padding: calc(55 / 1500 * 100vw) calc(25 / 1500 * 100vw) calc(35 / 1500 * 100vw) calc(30 / 1500 * 100vw); width: calc(390 / 1500 * 100vw); border-radius: calc(6 / 1500 * 100vw); }
  .featuresBox.Box01 .featuresText { margin-top: calc(15 / 1500 * 100vw); }
  .featuresBox.Box02 .featuresText, .featuresBox.Box03 .featuresText { margin-top: calc(40 / 1500 * 100vw); }
  .featuresBox:before { content: ""; width: calc(70 / 1500 * 100vw); height: calc(70 / 1500 * 100vw); top: calc(-30 / 1500 * 100vw); left: calc(-18 / 1500 * 100vw); }
  .featuresBox:after { content: ""; width: calc(390 / 1500 * 100vw); border: 1px solid #fff; border-radius: calc(6 / 1500 * 100vw); top: calc(8 / 1500 * 100vw); left: calc(8 / 1500 * 100vw); }
  .featuresBox:not(:last-of-type) { margin: 0 calc(50 / 1500 * 100vw) 0 0; }
  .featuresTitle.Title01 { margin: 0 auto calc(30 / 1500 * 100vw); padding: 0; width: calc(1260 / 1500 * 100vw); }
  .featuresTitle.Title01 img { margin-right: calc(-10 / 1500 * 100vw); width: calc(543 / 1500 * 100vw); }
  .featuresTitle.Title02 { font-size: calc(38 / 1500 * 100vw); line-height: calc(50 / 40); }
  .featuresTitle.Title02 small { font-size: calc(32 / 1500 * 100vw); }
  .featuresText { margin-right: calc(-10 / 1500 * 100vw); padding-right: calc(10 / 1500 * 100vw); font-size: calc(27 / 1500 * 100vw); }
  .featuresNote { margin-top: calc(9 / 1500 * 100vw); font-size: calc(15 / 1500 * 100vw); } }
.limited { padding: calc(50 / 750 * 100vw) 0 calc(90 / 750 * 100vw); }
.limitedCont { padding: calc(20 / 750 * 100vw); background-color: rgba(255, 255, 255, 0.8); }
.limitedBox.Box01 { padding: calc(60 / 750 * 100vw) 0 0 calc(50 / 750 * 100vw); height: calc(1060 / 750 * 100vw); background: url(../img/limited_bg.png) 0 0/100% no-repeat; }
.limitedBox.Box02 { padding: calc(800 / 750 * 100vw) calc(50 / 750 * 100vw) calc(75 / 750 * 100vw); background: url(../img/limited_bg2.png) 0 0/100% no-repeat, #fff; }
.limitedBox.Box02 .limitedTitle.Title03 { color: #ae6803; }
.limitedBox.Box03 { padding: calc(800 / 750 * 100vw) calc(50 / 750 * 100vw) calc(75 / 750 * 100vw); background: url(../img/limited_bg3.png) 0 0/100% no-repeat, #fff; }
.limitedBox.Box03 .limitedTitle.Title03 { color: #067977; }
.limitedBox.Box04 { padding: calc(800 / 750 * 100vw) calc(50 / 750 * 100vw) calc(75 / 750 * 100vw); background: url(../img/limited_bg4.png) 0 0/100% no-repeat, #fff; }
.limitedBox.Box04 .limitedTitle.Title03 { color: #9c451a; }
.limitedBox.Box05 { padding: calc(50 / 750 * 100vw) calc(50 / 750 * 100vw) 0; height: calc(876 / 750 * 100vw); background: url(../img/limited_bg5.png) 0 0/100% no-repeat; }
.limitedBox.Box05 .limitedTitle.Title02 { margin-bottom: calc(30 / 750 * 100vw); padding: 0; }
.limitedBox.Box05 .limitedTitle.Title02::before { content: none; }
.limitedTitle { text-align: left; }
.limitedTitle.Title02 { margin-bottom: calc(50 / 750 * 100vw); padding-bottom: calc(43 / 750 * 100vw); font-size: calc(50 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: calc(60 / 50); letter-spacing: .075em; position: relative; }
.limitedTitle.Title02::before { content: ""; width: calc(16 / 750 * 100vw); height: calc(3 / 750 * 100vw); background-color: #001629; display: block; position: absolute; bottom: 0; left: 0; }
.limitedTitle.Title03 { font-size: calc(36 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: calc(50 / 40); letter-spacing: .03em; }
.limitedTitle.Title03 small { padding-left: calc(14 / 750 * 100vw); text-indent: calc(-14 / 750 * 100vw); margin-top: calc(15 / 750 * 100vw); font-size: calc(20 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: 1.2; display: block; }
.limitedTitle.Title03 small sup { vertical-align: top; }
.limitedTitle.Title03 + .limitedTitle.Title03 { margin-top: calc(60 / 750 * 100vw); }
.limitedText { margin-top: calc(25 / 750 * 100vw); font-size: calc(30 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: calc(45 / 30); text-align: left; letter-spacing: .03em; }

@media screen and (max-width: 1024px) { .limitedWrap { padding: 0 calc(30 / 750 * 100vw); }
  .limitedTitle.Title01 img { width: calc(459 / 750 * 100vw); } }
@media screen and (min-width: 767px) and (max-width: 1024px) { .limitedTitle.Title03 small { padding-left: calc(20 / 1500 * 100vw); text-indent: calc(-20 / 1500 * 100vw); } }
@media screen and (min-width: 1025px) { .limited { padding: 0 0 calc(80 / 1500 * 100vw); }
  .limitedWrap { margin: 0 auto; width: calc(1350 / 1500 * 100vw); }
  .limitedCont { padding: calc(45 / 1500 * 100vw); }
  .limitedBox.Box01 { padding: calc(45 / 1500 * 100vw) 0 0 calc(50 / 1500 * 100vw); height: calc(713 / 1500 * 100vw); background: url(../img/pc/limited_bg.png) 0 0/100% no-repeat; }
  .limitedBox.Box02 { padding: calc(90 / 1500 * 100vw) calc(50 / 1500 * 100vw) 0; height: calc(850 / 1500 * 100vw); background: url(../img/pc/limited_bg2.png) left 0 top 0/calc(899 / 1500 * 100vw) no-repeat, #fff; }
  .limitedBox.Box02 .limitedInner { margin-left: auto; max-width: calc(600 / 1500 * 100vw); }
  .limitedBox.Box03 { padding: calc(90 / 1500 * 100vw) calc(50 / 1500 * 100vw) 0; height: calc(850 / 1500 * 100vw); background: url(../img/pc/limited_bg3.png) right 0 top 0/calc(899 / 1500 * 100vw) no-repeat, #fff; }
  .limitedBox.Box03 .limitedInner { max-width: calc(600 / 1500 * 100vw); }
  .limitedBox.Box04 { padding: calc(90 / 1500 * 100vw) calc(50 / 1500 * 100vw) 0; height: calc(850 / 1500 * 100vw); background: url(../img/pc/limited_bg4.png) left 0 top 0/calc(900 / 1500 * 100vw) no-repeat, #fff; }
  .limitedBox.Box04 .limitedInner { margin-left: auto; max-width: calc(600 / 1500 * 100vw); }
  .limitedBox.Box05 { padding: calc(90 / 1500 * 100vw) calc(50 / 1500 * 100vw) 0; height: calc(359 / 1500 * 100vw); background: url(../img/pc/limited_bg5.png) 0 0/100% no-repeat; }
  .limitedBox.Box05 .limitedTitle.Title02 { margin-bottom: calc(40 / 1500 * 100vw); }
  .limitedTitle.Title01 img { width: calc(578 / 1500 * 100vw); }
  .limitedTitle.Title02 { margin-bottom: calc(60 / 1500 * 100vw); padding-bottom: calc(40 / 1500 * 100vw); font-size: calc(40 / 1500 * 100vw); line-height: 1; }
  .limitedTitle.Title02::before { width: calc(16 / 1500 * 100vw); height: calc(3 / 1500 * 100vw); }
  .limitedTitle.Title03 { font-size: calc(32 / 1500 * 100vw); line-height: 1; }
  .limitedTitle.Title03 small { padding-left: .5em; text-indent: -.5em; margin-top: calc(20 / 1500 * 100vw); font-size: calc(20 / 1500 * 100vw); }
  .limitedTitle.Title03 + .limitedTitle.Title03 { margin-top: calc(70 / 1500 * 100vw); }
  .limitedText { margin-top: calc(40 / 1500 * 100vw); font-size: calc(30 / 1500 * 100vw); } }
.howToUse { margin-bottom: calc(80 / 750 * 100vw); padding: calc(510 / 750 * 100vw) 0 calc(55 / 750 * 100vw); background-color: #fff; position: relative; }
.howToUse:before, .howToUse:after { content: ""; display: block; position: absolute; z-index: 10; }
.howToUse:before { width: calc(443 / 750 * 100vw); height: calc(442 / 750 * 100vw); background: url(../img/howtouse_before.png) 0 0/contain no-repeat; top: calc(30 / 750 * 100vw); right: 0; }
.howToUse:after { display: none; width: calc(190 / 750 * 100vw); height: calc(189 / 750 * 100vw); background: url(../img/howtouse_after.png) 0 0/contain no-repeat; top: calc(250 / 750 * 100vw); left: calc(60 / 750 * 100vw); }
.howToUseCont { padding: 0 calc(50 / 750 * 100vw); position: relative; }
.howToUseBox { position: relative; }
.howToUseTitle { position: absolute; top: calc(65 / 750 * 100vw); left: calc(50 / 750 * 100vw); z-index: 20; }
.howToUseTitle img { width: calc(449 / 750 * 100vw); }
.howToUseText { font-size: calc(26 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: calc(45 / 30); text-align: left; letter-spacing: .03em; }
.howToUseText:not(:last-of-type) { margin-bottom: calc(40 / 750 * 100vw); }

@media screen and (min-width: 1025px) { .howToUse { margin-bottom: calc(150 / 1500 * 100vw); padding: calc(50 / 1500 * 100vw) 0 calc(270 / 1500 * 100vw); min-height: calc(680 / 1500 * 100vw); }
  .howToUse:before { width: calc(577 / 1500 * 100vw); height: calc(581 / 1500 * 100vw); background: url(../img/pc/howtouse_before.png) 0 0/contain no-repeat; top: calc(100% - 430 / 1500 * 100vw); right: calc(50% + 62 / 1500 * 100vw); }
  .howToUse:after { width: calc(405 / 1500 * 100vw); height: calc(410 / 1500 * 100vw); background: url(../img/pc/howtouse_after.png) 0 0/contain no-repeat; top: calc(100% - 260 / 1500 * 100vw); left: calc(50% - 56 / 1500 * 100vw); }
  .howToUseCont { padding: 0; }
  .howToUseBox { max-width: calc(670 / 1500 * 100vw); left: calc(50% - 50 / 1500 * 100vw); }
  .howToUseTitle { top: calc(70 / 1500 * 100vw); left: calc(50% - 630 / 1500 * 100vw); }
  .howToUseTitle img { width: calc(452 / 1500 * 100vw); }
  .howToUseText { font-size: calc(28 / 1500 * 100vw); }
  .howToUseText:not(:last-of-type) { margin-bottom: calc(40 / 1500 * 100vw); } }
.concept { margin-bottom: calc(100 / 750 * 100vw); padding: calc(55 / 750 * 100vw) calc(50 / 750 * 100vw) calc(45 / 750 * 100vw); height: calc(794 / 750 * 100vw); background: url(../img/concept_bg.png) center center/100% no-repeat; position: relative; }
.concept:before { content: ""; width: calc(321 / 750 * 100vw); height: calc(378 / 750 * 100vw); background: url(../img/concept_before.png) 0 0/contain no-repeat; display: block; position: absolute; bottom: calc(-122 / 750 * 100vw); left: 0; z-index: 10; }
.conceptBox { position: relative; }
.conceptTitle { margin-bottom: calc(40 / 750 * 100vw); text-align: left; position: relative; left: calc(2 / 750 * 100vw); }
.conceptTitle img { width: calc(352 / 750 * 100vw); }
.conceptText { font-size: calc(26 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: calc(45 / 30); text-align: left; letter-spacing: .03em; }
.conceptText:not(:last-of-type) { margin-bottom: calc(50 / 750 * 100vw); }
.conceptText:last-of-type { margin-left: calc(270 / 750 * 100vw); }

@media screen and (min-width: 1025px) { .concept { padding: calc(70 / 1500 * 100vw) 0 calc(90 / 1500 * 100vw); height: calc(948 / 1920 * 100vw); background: url(../img/pc/concept_bg.png) center center/100% no-repeat; position: relative; }
  .concept:before { content: ""; width: calc(402 / 1500 * 100vw); height: calc(306 / 1500 * 100vw); background: url(../img/pc/concept_before.png) 0 0/contain no-repeat; bottom: calc(-260 / 1500 * 100vw); left: calc(50% - 638 / 1500 * 100vw); }
  .conceptCont { margin: 0 auto; max-width: calc(1260 / 1500 * 100vw); }
  .conceptTitle { margin: 0 auto calc(20 / 1500 * 100vw); max-width: calc(1260 / 1500 * 100vw); left: calc(2 / 1500 * 100vw); }
  .conceptTitle img { width: calc(366 / 1500 * 100vw); }
  .conceptText { font-size: calc(28 / 1500 * 100vw); }
  .conceptText:not(:last-of-type) { margin-bottom: calc(45 / 1500 * 100vw); }
  .conceptText:last-of-type { margin: 0; } }
.rebornBox { padding-bottom: calc(50 / 750 * 100vw); background-color: #fff; position: relative; }
.rebornBox:nth-of-type(2n) .rebornImage { margin: 0 calc(50 / 750 * 100vw) calc(45 / 750 * 100vw) 0; }
.rebornInner { margin: 0 calc(50 / 750 * 100vw); }
.rebornImage { margin: 0 0 calc(45 / 750 * 100vw) calc(50 / 750 * 100vw); }
.rebornImage img { width: calc(700 / 750 * 100vw); }
.rebornTitle.Title01 { margin: 0 calc(50 / 750 * 100vw) calc(40 / 750 * 100vw) 0; text-align: right; }
.rebornTitle.Title01 img { width: calc(612 / 750 * 100vw); }
.rebornTitle.Title02 { margin-bottom: calc(25 / 750 * 100vw); font-size: calc(46 / 750 * 100vw); font-weight: 900; color: #00152a; line-height: calc(57 / 46); text-align: left; letter-spacing: .03em; }
.rebornText { font-size: calc(26 / 750 * 100vw); font-weight: 500; color: #00152a; line-height: calc(45 / 30); text-align: left; letter-spacing: .03em; }

@media screen and (min-width: 1025px) { .rebornBox { padding: calc(50 / 1500 * 100vw) 0; display: flex; flex-direction: row-reverse; justify-content: flex-start; align-items: flex-start; }
  .rebornBox:not(:last-of-type) { margin-bottom: calc(20 / 1500 * 100vw); }
  .rebornBox:nth-of-type(2n) { flex-direction: row; }
  .rebornBox:nth-of-type(2n) .rebornInner { max-width: calc(800 / 1500 * 100vw); }
  .rebornBox:nth-of-type(2n) .rebornImage { margin: 0 calc(45 / 1500 * 100vw) 0 0; }
  .rebornInner { margin: 0; max-width: calc(750 / 1500 * 100vw); }
  .rebornImage { margin: 0 0 0 calc(45 / 1500 * 100vw); }
  .rebornImage img { width: calc(589 / 1500 * 100vw); }
  .rebornTitle.Title01 { margin: 0 auto calc(25 / 1500 * 100vw); max-width: calc(1260 / 1500 * 100vw); }
  .rebornTitle.Title01 img { width: calc(684 / 1500 * 100vw); }
  .rebornTitle.Title02 { margin-bottom: calc(28 / 1500 * 100vw); font-size: calc(40 / 1500 * 100vw); line-height: 1; }
  .rebornText { font-size: calc(26 / 1500 * 100vw); line-height: calc(50 / 30); } }
/*--------------------------------------------------------------------------------------- footer
----------------------------------------------------------------------------------------*/
.footer { padding: calc(85 / 750 * 100vw) 0 0; min-height: calc(600 / 750 * 100vw); text-align: center; position: relative; z-index: 100; }
.footer:before { content: ""; width: calc(750 / 750 * 100vw); height: calc(318 / 750 * 100vw); display: block; background-image: linear-gradient(0deg, #203C65 0%, #2C5C8C99 50%, #377CB300 100%); position: absolute; left: 0; bottom: 0; }
.footerLogo { position: relative; z-index: 110; }
.footerLogo.Logo01 { margin-bottom: calc(15 / 750 * 100vw); }
.footerLogo.Logo01 img { width: calc(481 / 750 * 100vw); }
.footerLogo.Logo02 { margin-bottom: calc(45 / 750 * 100vw); transition: all .3s; }
.footerLogo.Logo02:hover { opacity: .7; }
.footerLogo.Logo02 img { width: calc(229 / 750 * 100vw); }
.footerIcon { margin: 0 auto; width: calc(96 / 750 * 100vw); height: calc(96 / 750 * 100vw); border-radius: 50%; display: block; background-color: rgba(0, 21, 42, 0.6); position: relative; z-index: 110; }
.footerIcon:before { content: ""; width: calc(28 / 750 * 100vw); height: calc(28 / 750 * 100vw); display: block; background: url(../img/icon_instagram-white.png) 0 0/contain no-repeat; position: absolute; top: calc(50% - 14 / 750 * 100vw); left: calc(50% - 14 / 750 * 100vw); }
.footerCont { margin-top: calc(70 / 750 * 100vw); padding: calc(45 / 750 * 100vw) 0 calc(30 / 750 * 100vw); background-color: #000; position: relative; z-index: 110; }
.footerList { display: flex; justify-content: center; align-items: center; }
.footerListItem:not(:last-of-type) { margin-right: calc(20 / 750 * 100vw); }
.footerLink { font-size: calc(24 / 750 * 100vw); font-weight: 500; color: #fff; line-height: 1; text-align: center; letter-spacing: .03em; transition: all .3s; }
.footerLink:hover { opacity: .7; }
.footerCopyright { margin: calc(25 / 750 * 100vw) 0 0; font-size: calc(20 / 750 * 100vw); font-weight: 300; color: #fff; line-height: 1; text-align: center; }

@media screen and (min-width: 1025px) { .footer { padding: calc(85 / 1500 * 100vw) 0 0; min-height: calc(415 / 1500 * 100vw); }
  .footer:before { width: calc(1500 / 1500 * 100vw); height: calc(210 / 1500 * 100vw); background-image: linear-gradient(0deg, #203C65 0%, #346A9A66 50%, #4798CE00 100%); }
  .footerLogo.Logo01 { margin-bottom: calc(15 / 1500 * 100vw); }
  .footerLogo.Logo01 img { width: calc(425 / 1500 * 100vw); }
  .footerLogo.Logo02 { margin: 0; }
  .footerLogo.Logo02 img { width: calc(153 / 1500 * 100vw); }
  .footerIcon { width: calc(64 / 1500 * 100vw); height: calc(64 / 1500 * 100vw); }
  .footerIcon:before { width: calc(28 / 1500 * 100vw); height: calc(28 / 1500 * 100vw); top: calc(50% - 14 / 1500 * 100vw); left: calc(50% - 14 / 1500 * 100vw); }
  .footerIcon:hover { background-color: #fff; }
  .footerIcon:hover:before { background: url(../img/icon_instagram_over.png) 0 0/contain no-repeat; }
  .footerCont { margin-top: calc(65 / 1500 * 100vw); padding: calc(30 / 1500 * 100vw) 0 calc(30 / 1500 * 100vw); }
  .footerBox { margin: 0 auto; max-width: calc(1350 / 1500 * 100vw); display: flex; justify-content: space-between; align-items: flex-start; }
  .footerListItem:not(:last-of-type) { margin-right: calc(15 / 1500 * 100vw); }
  .footerLink { font-size: calc(14 / 1500 * 100vw); text-align: right; }
  .footerCopyright { margin: calc(16 / 1500 * 100vw) 0 0; font-size: calc(12 / 1500 * 100vw); text-align: right; } }
