/*!
==========================================================================

SASSにて記述しておりますので、
以下のスタイルには触れないようお願いいたします。

==========================================================================
*/ @import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */ html {
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  overflow-y: scroll
}
*, ::before, ::after {
  box-sizing: inherit;
  background-repeat: no-repeat
}
::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit
}
* {
  margin: 0;
  padding: 0
}
audio:not([controls]) {
  display: none;
  height: 0
}
hr {
  overflow: visible
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block
}
summary {
  display: list-item
}
small {
  font-size: 80%
}
[hidden], template {
  display: none
}
abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none
}
a {
  -webkit-text-decoration-skip: objects;
  background-color: transparent
}
a:active, a:hover {
  outline-width: 0
}
code, kbd, pre, samp {
  font-family: monospace, monospace
}
b, strong {
  font-weight: bolder
}
dfn {
  font-style: italic
}
mark {
  background-color: #ff0;
  color: #000
}
sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline
}
sub {
  bottom: -0.25em
}
sup {
  top: -0.5em
}
input {
  border-radius: 0
}
button, [type="button"], [type="reset"], [type="submit"], [role="button"] {
  cursor: pointer
}
[disabled] {
  cursor: default
}
[type="number"] {
  width: auto
}
[type="search"] {
  -webkit-appearance: textfield
}
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none
}
textarea {
  overflow: auto;
  resize: vertical
}
button, input, optgroup, select, textarea {
  font: inherit
}
optgroup {
  font-weight: bold
}
button {
  overflow: visible
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: 0
}
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText
}
button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button
}
button, select {
  text-transform: none
}
button, input, select, textarea {
  border-style: none;
  background-color: transparent;
  color: inherit
}
select {
  -moz-appearance: none;
  -webkit-appearance: none
}
select::-ms-expand {
  display: none
}
select::-ms-value {
  color: currentColor
}
legend {
  display: table;
  max-width: 100%;
  border: 0;
  color: inherit;
  white-space: normal
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
img {
  border-style: none
}
progress {
  vertical-align: baseline
}
svg:not(:root) {
  overflow: hidden
}
audio, canvas, progress, video {
  display: inline-block
}
[aria-busy="true"] {
  cursor: progress
}
[aria-controls] {
  cursor: pointer
}
[aria-disabled] {
  cursor: default
}
::-moz-selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  /* visibility: hidden; */
  color: #000;
  font-family: 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;
  font-size: 62.5%
}
html.wf-active {
  visibility: visible
}
body {
  font-size: 1.6rem
}
h1, h2, h3, h4, h5, h5 {
  font-size: 1em;
  font-weight: inherit
}
a, a:visited, a:hover {
  color: #000;
  text-decoration: none;
  transition: 0.3s ease-in-out
}
ul, li {
  list-style: none
}
em {
  font-style: normal
}
img {
  max-width: 100%;
  vertical-align: bottom
}
#wrapper {
  overflow: hidden
}
#luxy.is-hidden {
  overflow: hidden
}
.l-wrapper {
  position: relative;
  overflow: hidden
}
.l-inner {
  max-width: 1246px;
  margin: 0 auto
}
.l-footer {
  padding: 36px 0;
  text-align: center
}
.l-footer small {
  color: #272727;
  font-size: 1.1rem
}
.l-header {
  z-index: 10;
  position: absolute;
  top: 0;
  width: 100%
}
.l-header__logo {
  margin-top: 46px
}
.c-conversion {
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
  opacity: 0
}
.c-conversion.is-on {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  opacity: 1
}
.c-conversion__roof {
  display: block;
  position: relative;
  top: 0;
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-width: 0 540px 228px 540px;
  border-style: solid;
  border-color: transparent transparent #000 transparent
}
.c-conversion__roof::before {
  display: block;
  position: relative;
  top: 2px;
  left: -539px;
  width: 0;
  height: 0;
  margin: auto;
  border-width: 0 539px 227px 539px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  content: ''
}
.c-conversion__roof::after {
  display: block;
  z-index: -1;
  position: absolute;
  top: 143px;
  right: calc(-540px + 50px);
  width: 63px;
  height: 78px;
  background: url(../img/conversion_roof_cat.png) center/contain no-repeat;
  content: ''
}
.c-conversion .c-conversion__inner {
  position: relative;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  background: #fff
}
.c-conversion .c-conversion__inner::before {
  display: block;
  z-index: -1;
  position: absolute;
  right: -13px;
  bottom: -10px;
  width: 100%;
  height: 100%;
  background: url(../img/conversion_shadow.png);
  content: ''
}
.c-conversion h2 {
  position: absolute;
  top: -120px;
  right: 0;
  left: 0;
  width: 330px;
  margin: auto
}
.c-conversion p {
  margin-bottom: 24px;
  padding-top: 70px;
  font-family: 'Kosugi Maru', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 1.25
}
.c-conversion__cat {
  position: absolute;
  top: -180px;
  left: 80px
}
.c-conversion__woman {
  position: absolute;
  top: -126px;
  right: 124px
}
.c-conversion__btn {
  display: block;
  position: relative;
  top: 0;
  width: 986px;
  margin: 0 auto 36px;
  padding: 26px 0;
  border-radius: 20px;
  background: #ff5454;
  box-shadow: 0 5px 0 #d43c3c;
  color: #fff;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 4.2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  transition: top 0.3s ease-in-out, box-shadow 0.3s ease-in-out
}
.c-conversion__btn::after {
  display: block;
  position: absolute;
  top: -36px;
  right: -24px;
  width: 249px;
  height: 84px;
  background: url(../img/conversion_btn_balloon.png) center/contain no-repeat;
  content: ''
}
.c-conversion__btn span {
  display: inline-block;
  padding: 0 16px 0 32px;
  background: url(../img/arrow.png) center left no-repeat;
  color: #fff
}
.c-conversion__btn:hover {
  top: 5px;
  box-shadow: 0 0 0 #d43c3c;
  transition: top 0.3s ease-in-out, box-shadow 0.3s ease-in-out
}
.c-conversion__house {
  height: 118.4vw;
  margin: 0 auto;
  overflow: hidden;
  background: url(../img/conversion_house-sp.png) center/contain no-repeat
}
.c-conversion__btnlist {
  width: 71.6vw;
  margin: 62.26666vw auto 0
}
.c-conversion__btnlist__item {
  margin-bottom: 1.33333vw
}
.c-conversion__btnlist__item:nth-child(1) a {
  display: block;
  position: relative
}
.c-conversion__btnlist__item:nth-child(1) a::before {
  display: block;
  position: absolute;
  top: -7.06666vw;
  left: -3.6vw;
  width: 33.33333vw;
  height: 10.8vw;
  background: url(../img/conversion_btn_balloon-sp.png) center/contain no-repeat;
  content: ''
}
.c-title--l {
  font-family: 'Kosugi Maru', sans-serif;
  font-feature-settings: "palt";
  font-size: 6rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.3;
  text-align: center
}
.c-title--l span {
  display: block;
  color: #7d7d7d;
  font-size: 1.6rem
}
.p-character {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  background: rgba(255, 255, 255, 0.96);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out
}
.p-character.is-on {
  z-index: 999;
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.3s ease-in-out
}
.p-character__inner {
  position: relative;
  max-width: 1086px;
  margin: 0 auto
}
.p-character__title {
  margin: 48px auto 10px;
  text-align: center
}
.p-character__title img {
  margin-right: 36px
}
.p-character__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px
}
.p-character__list li {
  position: relative;
  width: calc((100% - 30px) / 2);
  margin-bottom: 20px
}
.p-character__list li::before {
  position: absolute
}
.p-character__list li:nth-child(1)::before {
  top: -23px;
  right: 38px;
  width: 90px;
  height: 62px;
  background: url(../img/character_list_1_accesory.png) center bottom/contain no-repeat;
  content: ''
}
.p-character__list li:nth-child(4)::before {
  top: -6px;
  right: 90px;
  width: 62px;
  height: 55px;
  background: url(../img/character_list_4_accesory.png) center bottom/contain no-repeat;
  content: ''
}
.p-character__list li:nth-child(5)::before {
  right: 70px;
  bottom: -20px;
  width: 42px;
  height: 73px;
  background: url(../img/character_list_5_accesory.png) center bottom/contain no-repeat;
  content: ''
}
.p-character__list li:nth-child(6)::before {
  top: 16px;
  left: -10px;
  width: 44px;
  height: 40px;
  background: url(../img/character_list_6_accesory.png) center bottom/contain no-repeat;
  content: ''
}
.p-character__close {
  display: block;
  position: absolute;
  top: -18px;
  right: 0;
  transition: opacity 0.3s ease
}
.p-character__close:hover {
  opacity: .6;
  transition: opacity 0.3s ease
}
.p-mv {
  position: relative;
  opacity: 0
}
.p-mv.is-on {
  opacity: 1;
  transition: opacity .75s ease-in-out
}
.p-mv__bg {
  position: relative;
  height: 600px;
  background: url(../img/mv_bg.jpg) center top/cover no-repeat
}
.p-mv__bg::after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -1200px;
  border-width: 0 1200px 440px 1200px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  content: ''
}
.p-mv__bg__cat, .p-mv__bg__cat--1, .p-mv__bg__cat--2 {
  position: absolute
}
.p-mv__bg__cat--1 {
  top: 177px;
  right: 50%;
  margin-right: 342px
}
.p-mv__bg__cat--2 {
  top: 170px;
  left: 50%;
  margin-left: 293px
}
.p-mv__bg__dotline, .p-mv__bg__dotline--1, .p-mv__bg__dotline--2 {
  display: block;
  position: absolute;
  top: 326px;
  width: 1000px;
  height: 3px;
  background: url(../img/mv_bg_dot.png) repeat-x
}
.p-mv__bg__dotline--1 {
  right: calc(50% + -28px);
  transform: rotate(-20.3deg)
}
.p-mv__bg__dotline--2 {
  left: calc(50% + -28px);
  transform: rotate(20.3deg)
}
.p-mv__title-area {
  position: relative;
  margin-top: -290px
}
.p-mv__title {
  position: relative;
  text-align: center
}
.p-mv__title p {
  margin-top: 38px
}
.p-mv__title p span {
  display: inline-block;
  position: relative;
  padding: 5px 32px 5px 40px;
  background: #ff8d8b;
  color: #fff;
  font-family: '小塚ゴシック Pro', 'Kozuka Gothic Pro', sans-serif;
  font-weight: bold;
  letter-spacing: .04em
}
.p-mv__title p span::before {
  position: absolute;
  top: -34px;
  left: -37px;
  content: url(../img/mv_title_cat.png)
}
.p-mv__title__woman {
  position: absolute;
  top: 0;
  left: 7px;
  opacity: 0
}
.p-mv.is-on .p-mv__title__woman {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .66666s;
  animation-duration: .66666s;
  -webkit-animation-delay: .5s;
  animation-delay: .5s
}
.p-mv__title__cat {
  position: absolute;
  top: -28px;
  right: 50px;
  opacity: 0
}
.p-mv.is-on .p-mv__title__cat {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .66666s;
  animation-duration: .66666s;
  -webkit-animation-delay: .5s;
  animation-delay: .5s
}
.p-sec01 {
  position: relative;
  max-width: 1246px;
  margin: 80px auto 130px;
  background: #5ad4d9 url(../img/case_pt.png) center;
  opacity: 0
}
.p-sec01.is-on {
  opacity: 1;
  transition: opacity 1s ease-in-out
}
.p-sec01::before, .p-sec01::after {
  display: block;
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  content: ''
}
.p-sec01::before {
  left: 0;
  border-width: 18px 18px 0 0;
  border-color: #fff transparent transparent transparent
}
.p-sec01::after {
  right: 0;
  border-width: 0 18px 18px 0;
  border-color: transparent #fff transparent transparent
}
.p-sec01 > div {
  position: relative;
  padding: 80px 80px 72px;
  transform: translate(0, 20px);
  opacity: 0
}
.p-sec01 > div.is-on {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity 1s ease .2s, transform 1s ease .2s
}
.p-sec01 > div::before, .p-sec01 > div::after {
  display: block;
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  content: ''
}
.p-sec01 > div::before {
  left: 0;
  border-width: 18px 0 0 18px;
  border-color: transparent transparent transparent #fff
}
.p-sec01 > div::after {
  right: 0;
  border-width: 0 0 18px 18px;
  border-color: transparent transparent #fff transparent
}
.p-sec01 .c-title--l {
  position: relative;
  height: 125px;
  margin-bottom: 32px;
  padding-left: 12px;
  background: url(../img/sec01_title_bg.png) center no-repeat;
  line-height: 125px
}
.p-sec01 .c-title--l::before {
  display: block;
  position: absolute;
  top: -62px;
  right: 50%;
  width: 102px;
  height: 109px;
  margin-right: 303px;
  background: url(../img/sec01_title_balloon.png) center/contain no-repeat;
  content: ''
}
.p-sec01 p {
  width: 620px;
  margin: 0 auto;
  font-size: 1.5rem;
  line-height: 1.8;
  text-align: center
}
.p-sec01 p + p {
  margin-top: 12px
}
.p-sec01__character--1 {
  position: absolute;
  top: 88px;
  left: 80px
}
.p-sec01__character--1 figcaption {
  position: absolute;
  padding: 12px 20px;
  border-radius: 10px;
  background: #fff
}
.p-sec01__character--1 figcaption dt {
  margin-bottom: 2px;
  color: #20bec5;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2
}
.p-sec01__character--1 figcaption dd {
  color: #7d7d7d;
  font-size: 1.3rem;
  line-height: 1.4
}
.p-sec01__character--1 img {
  transform: translate(0, 16px);
  opacity: 0
}
.p-sec01__character--1 figcaption {
  top: 210px;
  left: 0;
  width: 196px;
  opacity: 0
}
.p-sec01__character--2 {
  position: absolute;
  top: 70px;
  right: 50px
}
.p-sec01__character--2 figcaption {
  position: absolute;
  padding: 12px 20px;
  border-radius: 10px;
  background: #fff
}
.p-sec01__character--2 figcaption dt {
  margin-bottom: 2px;
  color: #20bec5;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2
}
.p-sec01__character--2 figcaption dd {
  color: #7d7d7d;
  font-size: 1.3rem;
  line-height: 1.4
}
.p-sec01__character--2 img {
  transform: translate(0, 16px);
  opacity: 0
}
.p-sec01__character--2 figcaption {
  top: 230px;
  right: 27px;
  width: 220px;
  opacity: 0
}
.p-sec01__comparison {
  display: flex;
  position: relative;
  justify-content: space-between;
  margin-top: 46px
}
.p-sec01__comparison > li {
  position: relative;
  width: 50%
}
.p-sec01__comparison > li::after {
  display: block;
  position: absolute;
  content: ''
}
.p-sec01__comparison > li figure {
  position: relative;
  width: 520px;
  margin: 0 auto;
  box-shadow: 4px 4px 2px #00b1b9
}
.p-sec01__comparison > li figure figcaption {
  display: inline-block;
  position: absolute;
  top: 24px;
  left: -8px;
  height: 30px;
  padding: 0 15px;
  background: #343434;
  color: #fff;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 700;
  line-height: 30px
}
.p-sec01__comparison > li figure figcaption::before {
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
  width: 0;
  height: 0;
  border-width: 0 8px 8px 0;
  border-style: solid;
  border-color: transparent #000 transparent transparent;
  content: ''
}
.p-sec01__comparison > li figure figcaption::after {
  position: absolute;
  top: 0;
  right: -11px;
  width: 11px;
  height: 30px;
  background: url(../img/sec01_comparison_1_accesory.png) center left/contain no-repeat;
  content: ''
}
.p-sec01__comparison > li:nth-child(1)::after {
  right: 20px;
  bottom: -20px;
  width: 207px;
  height: 219px;
  background: url(../img/sec01_cat_2.png) center/contain no-repeat
}
.p-sec01__comparison > li:nth-child(2)::after {
  right: 26px;
  bottom: -22px;
  width: 192px;
  height: 225px;
  background: url(../img/sec01_cat_3.png) center/contain no-repeat
}
.p-sec01__comparison > li:nth-child(2) figure figcaption {
  background: #f05559
}
.p-sec01__comparison > li:nth-child(2) figure figcaption::before {
  border-color: transparent #df3232 transparent transparent
}
.p-sec01__comparison > li:nth-child(2) figure figcaption::after {
  background: url(../img/sec01_comparison_2_accesory.png) center left/contain no-repeat
}
.is-on > .p-sec01__character--1 img {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity .5s ease .75s, transform .5s ease .75s
}
.is-on > .p-sec01__character--1 figcaption {
  opacity: 1;
  transition: opacity .5s ease .75s
}
.is-on > .p-sec01__character--2 img {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity .5s ease 1.25s, transform .5s ease 1.25s
}
.is-on > .p-sec01__character--2 figcaption {
  opacity: 1;
  transition: opacity .5s ease 1.25s
}
.p-sec02 {
  position: relative
}
.p-sec02__cat {
  position: absolute;
  top: -10.66666vw;
  right: 9.6vw;
  left: auto;
  width: 20vw;
  margin-left: auto;
  opacity: 0
}
.p-sec02__cat.is-on {
  opacity: 1;
  transition: opacity 0.3s ease 0.75s
}
.p-sec02 .c-title--l {
  z-index: 1;
  position: relative;
  min-height: 191px;
  padding-top: 28px;
  padding-left: 72px;
  background: url(../img/sec02_title_bg.png) top left calc(50% + 38px) no-repeat;
  opacity: 0
}
.p-sec02 .c-title--l.is-on {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  opacity: 1
}
.p-sec02 .c-title--l.is-on::after {
  opacity: 1;
  transition: opacity 1s ease-in-out 0.75s
}
.p-sec02 .c-title--l::after {
  display: block;
  z-index: 1;
  position: absolute;
  top: 100px;
  left: 50%;
  width: 125px;
  height: 297px;
  margin-left: 460px;
  background: url(../img/sec02_foot_print_1.png) center/contain no-repeat;
  content: '';
  opacity: 0
}
.p-sec02 .c-title--l img {
  position: absolute
}
.p-sec02 .c-title--l img.p-sec02-title__img--1 {
  top: -62px;
  right: 50%;
  margin-right: 238px
}
.p-sec02 .c-title--l img.p-sec02-title__img--2 {
  top: -64px;
  left: 50%;
  margin-left: 320px
}
.p-case-list {
  margin-top: 20px
}
.p-case-list > li {
  position: relative;
  margin-bottom: 72px;
  padding: 74px 0 116px;
  opacity: 0
}
.p-case-list > li::before {
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  content: ''
}
.p-case-list > li::after {
  z-index: 3
}
.p-case-list > li figure {
  position: relative;
  width: 820px;
  opacity: 0
}
.p-case-list > li figure::before {
  display: block;
  z-index: 3;
  position: absolute;
  content: '';
  opacity: 0
}
.p-case-list > li figure::after {
  display: block;
  position: absolute;
  top: 10px;
  left: 10px;
  width: 100%;
  height: 100%;
  content: ''
}
.p-case-list > li figure img {
  z-index: 1;
  position: relative
}
.p-case-list > li:nth-child(2n-1) {
  margin: 0 60px 72px 0
}
.p-case-list > li:nth-child(2n-1)::before {
  left: -50px
}
.p-case-list > li:nth-child(2n-1) .p-case-list__item__balloon {
  right: 178px
}
.p-case-list > li:nth-child(2n-1) figure {
  margin: 0 auto 0 126px
}
.p-case-list > li:nth-child(2n) {
  z-index: 2;
  margin: 0 0 72px 60px
}
.p-case-list > li:nth-child(2n)::before {
  right: -50px
}
.p-case-list > li:nth-child(2n) .p-case-list__item__balloon {
  left: 110px
}
.p-case-list > li:nth-child(2n) figure {
  margin: 0 116px 0 auto
}
.p-case-list > li.is-on {
  margin: 0 0 72px;
  opacity: 1;
  transition: opacity 1s ease, margin 1s ease
}
.p-case-list > li.is-on figure {
  opacity: 1;
  transition: opacity 0.75s ease-in-out 0.5s
}
.p-case-list > li.is-on figure::before {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
  opacity: 1;
  transition-delay: 1.2s;
  transition-property: opacity
}
.p-case-list > li .l-inner {
  position: relative
}
.p-case-list__item__balloon {
  display: flex;
  z-index: 2;
  position: absolute;
  top: -50px;
  align-items: center;
  justify-content: center;
  width: 385px;
  height: 385px;
  border-radius: 50%;
  background: #fff;
  font-family: 'Kosugi Maru', sans-serif;
  font-feature-settings: "palt";
  font-style: normal;
  font-weight: 700;
  letter-spacing: .02em;
  text-align: center
}
.p-case-list__item__balloon::after {
  display: block;
  z-index: -1;
  position: absolute;
  width: 0;
  height: 0;
  border-width: 0 2.26666vw 4.8vw 2.26666vw;
  border-style: solid;
  border-color: transparent transparent #ffffff transparent;
  content: ''
}
.p-case-list__item__balloon > div {
  padding-top: 12px
}
.p-case-list__item__balloon h3 {
  position: relative;
  width: 250px;
  margin: 0 auto 12px;
  padding-bottom: 20px;
  font-size: 2.4rem;
  letter-spacing: .08em;
  line-height: 1.25
}
.p-case-list__item__balloon h3::before {
  display: block;
  position: absolute;
  top: -14px;
  left: -75px;
  width: 82px;
  height: 82px;
  content: ''
}
.p-case-list__item__balloon p {
  width: 320px;
  margin: 0 auto;
  color: #3a3a3a;
  font-size: 2.2rem;
  letter-spacing: .08em;
  line-height: 1.3
}
.p-case-list__item__balloon p span {
  display: block;
  margin-bottom: 2px;
  color: #888;
  font-size: 1.6rem;
  letter-spacing: .02em;
  line-height: 1.625
}
.p-case-list__item__balloon p i {
  font-size: 1.2rem;
  font-style: normal
}
.p-case-list__item__woman {
  z-index: 3;
  position: absolute
}
.p-case-list__item--1::before {
  background: #f6e1c4 url(../img/case_pt.png) center
}
.p-case-list__item--1::after {
  display: block;
  z-index: 1;
  position: absolute;
  right: 50%;
  bottom: -140px;
  width: 154px;
  height: 282px;
  margin-right: 474px;
  background: url(../img/sec02_foot_print_2.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--1 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 #e5caa5
}
.p-case-list__item--1 .p-case-list__item__balloon::after {
  right: 40px;
  bottom: 22px;
  transform: rotate(132deg)
}
.p-case-list__item--1 .p-case-list__item__balloon h3 {
  background: url(../img/case_1_dot.png) center bottom repeat-x;
  color: #985421
}
.p-case-list__item--1 .p-case-list__item__balloon h3::before {
  background: url(../img/case_1_title_badge.png) center/contain no-repeat
}
.p-case-list__item--1 .p-case-list__item__woman {
  top: -26px;
  right: 13px
}
.p-case-list__item--1 figure::before {
  bottom: -50px;
  left: -56px;
  width: 297px;
  height: 262px;
  background: url(../img/case_1_cat.png) center/contain no-repeat
}
.p-case-list__item--1 figure::after {
  background: url(../img/case_1_fig_shadow.png)
}
.p-case-list__item--2::before {
  background: #bfedef url(../img/case_pt.png) center
}
.p-case-list__item--2::after {
  display: block;
  z-index: 1;
  position: absolute;
  top: -34px;
  left: 50%;
  width: 150px;
  height: 503px;
  margin-left: 526px;
  background: url(../img/sec02_foot_print_3.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--2 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 rgba(32, 190, 197, 0.76)
}
.p-case-list__item--2 .p-case-list__item__balloon::after {
  bottom: 145px;
  left: -18px;
  transform: rotate(-112deg)
}
.p-case-list__item--2 .p-case-list__item__balloon h3 {
  background: url(../img/case_2_dot.png) center bottom repeat-x;
  color: #20bec5
}
.p-case-list__item--2 .p-case-list__item__balloon h3::before {
  background: url(../img/case_2_title_badge.png) center/contain no-repeat
}
.p-case-list__item--2 .p-case-list__item__woman {
  top: 140px;
  left: -13px
}
.p-case-list__item--2 figure::before {
  right: -10px;
  bottom: -76px;
  width: 266px;
  height: 292px;
  background: url(../img/case_2_cat.png) center/contain no-repeat
}
.p-case-list__item--2 figure::after {
  background: url(../img/case_2_fig_shadow.png)
}
.p-case-list__item--3::before {
  background: #e5e5e5 url(../img/case_pt.png) center
}
.p-case-list__item--3::after {
  display: block;
  z-index: 1;
  position: absolute;
  right: 50%;
  bottom: -30px;
  width: 154px;
  height: 282px;
  margin-right: 474px;
  background: url(../img/sec02_foot_print_4.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--3 .l-inner::before {
  display: block;
  position: absolute;
  top: -10px;
  left: 50%;
  width: 191px;
  height: 196px;
  margin-left: 398px;
  background: url(../img/case_3_shadow.png) center top/contain no-repeat;
  content: ''
}
.p-case-list__item--3 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 #c8c8c8
}
.p-case-list__item--3 .p-case-list__item__balloon::before {
  display: block;
  position: absolute;
  top: 50px;
  right: 12px;
  width: 65px;
  height: 69px;
  background: url(../img/case_3_accesory.png) center top/contain no-repeat;
  content: ''
}
.p-case-list__item--3 .p-case-list__item__balloon::after {
  right: 40px;
  bottom: 32px;
  transform: rotate(132deg)
}
.p-case-list__item--3 .p-case-list__item__balloon h3 {
  background: url(../img/case_3_dot.png) center bottom repeat-x;
  color: #646964
}
.p-case-list__item--3 .p-case-list__item__balloon h3::before {
  background: url(../img/case_3_title_badge.png) center/contain no-repeat
}
.p-case-list__item--3 .p-case-list__item__woman {
  top: 124px;
  right: 60px
}
.p-case-list__item--3 figure::before {
  bottom: -58px;
  left: -42px;
  width: 275px;
  height: 301px;
  background: url(../img/case_3_cat.png) center/contain no-repeat
}
.p-case-list__item--3 figure::after {
  background: url(../img/case_3_fig_shadow.png)
}
.p-case-list__item--4::before {
  background: #d8f0e4 url(../img/case_pt.png) center
}
.p-case-list__item--4::after {
  display: block;
  z-index: 1;
  position: absolute;
  top: -16px;
  left: 50%;
  width: 214px;
  height: 551px;
  margin-left: 466px;
  background: url(../img/sec02_foot_print_5.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--4 .l-inner::before {
  position: absolute;
  top: -36px;
  right: 50%;
  margin-right: 380px;
  content: url(../img/case_4_shadow.png)
}
.p-case-list__item--4 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 rgba(48, 175, 55, 0.76)
}
.p-case-list__item--4 .p-case-list__item__balloon::before {
  position: absolute;
  top: 50px;
  left: -86px;
  content: url(../img/case_4_accesory.png)
}
.p-case-list__item--4 .p-case-list__item__balloon::after {
  top: 160px;
  left: -17px;
  transform: rotate(-80deg)
}
.p-case-list__item--4 .p-case-list__item__balloon h3 {
  background: url(../img/case_4_dot.png) center bottom repeat-x;
  color: #24b02e
}
.p-case-list__item--4 .p-case-list__item__balloon h3::before {
  background: url(../img/case_4_title_badge.png) center/contain no-repeat
}
.p-case-list__item--4 .p-case-list__item__woman {
  top: 130px;
  left: -6px
}
.p-case-list__item--4 figure::before {
  right: -4px;
  bottom: -90px;
  width: 309px;
  height: 312px;
  background: url(../img/case_4_cat.png) center/contain no-repeat
}
.p-case-list__item--4 figure::after {
  background: url(../img/case_4_fig_shadow.png)
}
.p-case-list__item--5::before {
  background: #f1d4e9 url(../img/case_pt.png) center
}
.p-case-list__item--5::after {
  display: block;
  z-index: 1;
  position: absolute;
  right: 50%;
  bottom: -110px;
  width: 154px;
  height: 282px;
  margin-right: 468px;
  background: url(../img/sec02_foot_print_6.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--5 .l-inner::before {
  display: block;
  position: absolute;
  top: 20px;
  left: 50%;
  width: 191px;
  height: 196px;
  margin-left: 416px;
  background: url(../img/case_5_shadow.png) center bottom/contain no-repeat;
  content: ''
}
.p-case-list__item--5 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 #e4b5d7
}
.p-case-list__item--5 .p-case-list__item__balloon::before {
  display: block;
  position: absolute;
  top: 40px;
  right: -60px;
  width: 90px;
  height: 71px;
  background: url(../img/case_5_accesory.png) center bottom/contain no-repeat;
  content: ''
}
.p-case-list__item--5 .p-case-list__item__balloon::after {
  right: 64px;
  bottom: 2px;
  transform: rotate(145deg)
}
.p-case-list__item--5 .p-case-list__item__balloon h3 {
  background: url(../img/case_5_dot.png) center bottom repeat-x;
  color: #b30087
}
.p-case-list__item--5 .p-case-list__item__balloon h3::before {
  background: url(../img/case_5_title_badge.png) center/contain no-repeat
}
.p-case-list__item--5 .p-case-list__item__woman {
  top: 114px;
  right: 36px
}
.p-case-list__item--5 figure::before {
  bottom: -62px;
  left: -72px;
  width: 294px;
  height: 354px;
  background: url(../img/case_5_cat.png) center/contain no-repeat
}
.p-case-list__item--5 figure::after {
  background: url(../img/case_5_fig_shadow.png)
}
.p-case-list__item--6::before {
  background: #ffe6e6 url(../img/case_pt.png) center
}
.p-case-list__item--6::after {
  display: block;
  z-index: 1;
  position: absolute;
  bottom: -112px;
  left: 50%;
  width: 259px;
  height: 573px;
  margin-left: 386px;
  background: url(../img/sec02_foot_print_7.png) center/contain no-repeat;
  content: ''
}
.p-case-list__item--6 .p-case-list__item__balloon {
  box-shadow: 8px 8px 0 #ff5f60
}
.p-case-list__item--6 .p-case-list__item__balloon::after {
  bottom: 8px;
  left: 62px;
  transform: rotate(-135deg)
}
.p-case-list__item--6 .p-case-list__item__balloon h3 {
  background: url(../img/case_6_dot.png) center bottom repeat-x;
  color: #fe615f
}
.p-case-list__item--6 .p-case-list__item__balloon h3::before {
  background: url(../img/case_6_title_badge.png) center/contain no-repeat
}
.p-case-list__item--6 .p-case-list__item__woman {
  top: 60px;
  left: -24px
}
.p-case-list__item--6 figure::before {
  right: -96px;
  bottom: -92px;
  width: 384px;
  height: 338px;
  background: url(../img/case_6_cat.png) center/contain no-repeat
}
.p-case-list__item--6 figure::after {
  background: url(../img/case_6_fig_shadow.png)
}
.p-sec03 {
  margin-top: 120px;
  margin-bottom: 200px;
  transform: translate(0, 40px);
  opacity: 0
}
.p-sec03.is-on {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity 0.75s ease-in-out, transform 0.75s ease-in-out
}
.p-sec03 .l-inner {
  position: relative
}
.p-sec03 .c-title--l {
  position: relative;
  width: 605px;
  min-height: 197px;
  margin-left: 80px;
  padding: 56px 0 0 32px;
  background: url(../img/sec03_title_bg.png) center/cover no-repeat;
  color: #fff;
  font-size: 5.4rem;
  line-height: 1.2
}
.p-sec03 .c-title--l span {
  color: #fff;
  font-size: 1.8rem
}
.p-sec03 .c-title--l img {
  position: absolute;
  top: -8px;
  left: 0
}
.p-sec03__cat {
  position: absolute;
  top: 4px;
  right: 303px;
  opacity: 0
}
.p-sec03__cat.is-on {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-delay: .75s;
  animation-delay: .75s
}
.p-sec03 .bx-wrapper {
  z-index: -1;
  position: relative;
  margin-top: -36px
}
.p-sec03 .bx-viewport {
  box-sizing: content-box;
  padding-bottom: 8px
}
.p-sec03__gallery li {
  margin: 0 13px;
  opacity: 0
}
.p-sec03__gallery.is-on li {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  opacity: 1
}
.p-sec03__gallery figure {
  position: relative
}
.p-sec03__gallery figure img {
  border-radius: 20px;
  box-shadow: 7px 8px 0 #00b1b9
}
.p-sec03__gallery figure figcaption {
  position: absolute;
  bottom: 44px;
  left: -3px;
  height: 30px;
  padding: 0 15px;
  background: #ffe228;
  color: #000;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 30px
}
.p-sec03__gallery figure figcaption::before {
  display: block;
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border-width: 0 3px 3px 0;
  border-style: solid;
  border-color: transparent #dcc52f transparent transparent;
  content: ''
}
.p-sec03__gallery figure figcaption::after {
  display: block;
  position: absolute;
  top: 0;
  right: -10px;
  width: 10px;
  height: 30px;
  background: url(../img/sec03_gallery_accesory.png) center/cover no-repeat;
  content: ''
}
.p-sec04__character {
  z-index: 1;
  position: relative
}
.p-sec04__character span {
  display: block;
  position: absolute;
  opacity: 0
}
.p-sec04__character span img {
  max-width: none
}
.p-sec04__character span.is-on {
  opacity: 1;
  transition: opacity 0.5s ease 0.3s
}
.p-sec04__character--1 {
  top: 20px;
  right: 50%;
  margin-right: 430px
}
.p-sec04__character--2 {
  top: 5px;
  left: 50%;
  margin-left: 444px
}
.p-sec04__character--3 {
  top: 276px;
  right: 50%;
  margin-right: 589px
}
.p-sec04__character--4 {
  top: 306px;
  left: 50%;
  margin-left: 636px
}
.p-sec04__character--5 {
  top: 546px;
  right: 50%;
  margin-right: 540px
}
.p-sec04__character--6 {
  top: 500px;
  left: 50%;
  margin-left: 564px
}
.p-sec04__txt {
  position: relative;
  padding-top: 168px;
  padding-bottom: 190px;
  background: #fff45c url(../img/case_pt_yellow.png) center;
  text-align: center
}
.p-sec04__txt::before {
  display: block;
  position: absolute;
  top: -9px;
  left: 0;
  width: 100%;
  height: 9px;
  background: url(../img/sec04_wave.png) center repeat-x;
  content: ''
}
.p-sec04__txt .c-title--l {
  position: absolute;
  top: -136px;
  right: 0;
  left: 0;
  width: 750px;
  margin: auto;
  font-size: 6rem;
  opacity: 0
}
.p-sec04__txt .c-title--l.is-on {
  opacity: 1;
  transition: opacity 2s ease
}
.p-sec04__txt .c-title--l::before, .p-sec04__txt .c-title--l::after {
  display: block;
  position: absolute;
  bottom: 0;
  width: 48px;
  height: 68px;
  background: center bottom /contain no-repeat;
  content: ''
}
.p-sec04__txt .c-title--l::before {
  left: 0;
  background-image: url(../img/sec04_title_accesory_1.png)
}
.p-sec04__txt .c-title--l::after {
  right: 0;
  background-image: url(../img/sec04_title_accesory_2.png)
}
.p-sec04__txt .c-title--l .p-sec04__cat {
  display: block;
  margin-bottom: 14px;
  margin-left: 40px;
  opacity: 0
}
.p-sec04__txt .c-title--l .p-sec04__cat.is-on {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-delay: 0.75s;
  animation-delay: 0.75s
}
.p-sec04__txt p {
  font-size: 1.5rem;
  line-height: 1.8;
  opacity: 0
}
.p-sec04__txt p.is-on {
  opacity: 1;
  transition: opacity .75s ease
}
.p-sec04__movie {
  z-index: 1;
  position: relative;
  margin-top: -156px;
  transform: translate(0, 20px);
  opacity: 0
}
.p-sec04__movie.is-on {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity 0.75s ease, transform 0.75s ease
}
.p-sec04__movie__link {
  display: block;
  z-index: 2;
  position: relative;
  width: 1086px;
  height: 636px;
  margin: 0 auto;
  overflow: hidden
}
.p-sec04__movie__link figure {
  position: relative;
  width: 1050px;
  margin-top: 36px;
  margin-left: 36px;
  transition: margin-top 0.3s ease, margin-left 0.3s ease
}
.p-sec04__movie__link figure::before {
  display: block;
  z-index: 1;
  position: absolute;
  top: -36px;
  left: -36px;
  width: 100%;
  height: 100%;
  border: 4px solid #00b1b9;
  border-radius: 20px;
  content: '';
  transition: top 0.3s ease, left 0.3s ease
}
.p-sec04__movie__link figure span {
  display: block;
  overflow: hidden;
  border-radius: 20px;
  background: #000
}
.p-sec04__movie__link figure span img {
  opacity: .54;
  transition: opacity 0.3s ease
}
.p-sec04__movie__link .p-sec04__movie__ico {
  display: block;
  position: absolute;
  top: 260px;
  right: 0;
  left: 0;
  width: 108px;
  height: 146px;
  margin: auto;
  color: #fff;
  font-family: montserrat, sans-serif;
  font-size: 2.4rem;
  letter-spacing: .06em;
  text-align: center
}
.p-sec04__movie__link .p-sec04__movie__ico i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 108px;
  height: 108px;
  margin-bottom: 12px;
  border: 3px solid #fff;
  border-radius: 50%;
  border-radius: 505;
  transition: background 0.3s ease, border-color 0.3s ease, opacity 0.3s ease
}
.p-sec04__movie__link .p-sec04__movie__ico i::before {
  display: block;
  width: 29px;
  height: 31px;
  background: url(../img/sec04_movie_play.png) center bottom/contain no-repeat;
  content: ''
}
.p-sec04__movie__link:hover figure {
  margin-top: 18px;
  margin-left: 18px;
  transition: margin-top 0.3s ease, margin-left 0.3s ease
}
.p-sec04__movie__link:hover figure::before {
  top: 0px;
  left: 0px;
  transition: top 0.3s ease, left 0.3s ease
}
.p-sec04__movie__link:hover figure span img {
  opacity: 1;
  transition: opacity 0.3s ease
}
.p-sec04__movie__link:hover .p-sec04__movie__ico i {
  border-color: #00b1b9;
  background: #00b1b9;
  opacity: .7;
  transition: background 0.3s ease, border-color 0.3s ease, opacity 0.3s ease
}
.p-sec04__movie__link:hover .p-sec04__movie__ico i::before {
  background: url(../img/sec04_movie_play_hover.png) center bottom/contain no-repeat
}
.p-sec04__btn {
  display: block;
  max-width: 500px;
  margin: 40px auto 0;
  padding: 13px 0;
  border: 2px solid #00b1b9;
  border-radius: 20px;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 2.4rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2;
  text-align: center
}
.p-sec04__btn span {
  padding-left: 45px;
  background: url(../img/arrow_green.png) center left/25px 25px no-repeat;
  color: #00b1b9
}
.p-sec04__btn:hover {
  background: #00b1b9
}
.p-sec04__btn:hover span {
  background-image: url(../img/arrow.png);
  color: #fff
}
.p-sec05 {
  margin: 90px 0 70px;
  padding: 64px 0 48px;
  transform: translate(0, 40px);
  background: #5ad4d9 url(../img/case_pt.png) center;
  opacity: 0
}
.p-sec05.is-on {
  transform: translate(0, 0);
  opacity: 1;
  transition: opacity 0.75s ease-in-out, transform 0.75s ease-in-out
}
.p-sec05 .l-inner {
  z-index: 0;
  position: relative
}
.p-sec05 .c-title--l {
  position: relative;
  width: 840px;
  margin: 0 0 16px 170px;
  color: #fff;
  font-size: 4rem;
  letter-spacing: 0.1em;
  line-height: 1.1;
  text-align: left
}
.p-sec05 .c-title--l::before {
  display: block;
  position: absolute;
  top: -56px;
  left: -108px;
  width: 102px;
  height: 109px;
  background: url(../img/sec05_title_balloon.png) center/contain no-repeat;
  content: ''
}
.p-sec05 .c-title--l::after {
  display: block;
  position: absolute;
  top: -20px;
  right: -30px;
  width: 50px;
  height: 64px;
  background: url(../img/sec05_title_accesory.png) center/contain no-repeat;
  content: ''
}
.p-sec05 p {
  width: 820px;
  margin: 0 0 36px 170px;
  text-align: left
}
.p-sec05 p span {
  display: inline;
  margin-left: 20px;
  font-size: 1.2rem
}
.p-sec05__woman {
  z-index: -1;
  position: absolute;
  top: 14px;
  right: -36px;
  opacity: 0
}
.p-sec05__woman.is-on {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-delay: .5s;
  animation-delay: .5s
}
.p-sec05__gallery {
  position: relative;
  margin-bottom: 40px
}
.p-sec05__gallery::after {
  display: block;
  position: absolute;
  right: 50%;
  bottom: -72px;
  width: 201px;
  height: 198px;
  margin-right: 326px;
  background: url(../img/sec05_gallery_bg.png) center/contain no-repeat;
  content: ''
}
.p-sec05__gallery__list {
  z-index: 1;
  position: relative;
  text-align: center
}
.p-sec05__gallery__list > li {
  width: 760px
}
.p-sec05__gallery__list > li figure img {
  border-radius: 20px
}
.p-sec05__gallery__list > li:nth-child(1) {
  position: absolute;
  top: 0;
  right: 50%;
  margin-right: 406px
}
.p-sec05__gallery__list > li:nth-child(2) {
  display: inline-block
}
.p-sec05__gallery__list > li:nth-child(3) {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: 406px
}
.p-sec05__gallery .slick-dots {
  bottom: -30px
}
.p-sec05__gallery .slick-dots li {
  width: 9px;
  height: 9px;
  margin: 0 4px
}
.p-sec05__gallery .slick-dots li button {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #1aaab0
}
.p-sec05__gallery .slick-dots li button::before {
  display: none
}
.p-sec05__gallery .slick-dots li.slick-active button {
  background: #ffe228
}
.p-sec05__cat {
  z-index: 2;
  position: absolute;
  right: 50%;
  bottom: -32px;
  margin-right: 200px;
  opacity: 0
}
.p-sec05__cat.is-on {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-delay: .2s;
  animation-delay: .2s
}
.p-sec05__btn {
  display: block;
  max-width: 500px;
  margin: 0 auto;
  padding: 13px 0;
  border: 2px solid #fff;
  border-radius: 20px;
  font-family: 'Kosugi Maru', sans-serif;
  font-size: 2.4rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2;
  text-align: center
}
.p-sec05__btn span {
  padding-left: 45px;
  background: url(../img/arrow.png) center left/25px 25px no-repeat;
  color: #fff
}
.p-sec05__btn:hover {
  background: #fff
}
.p-sec05__btn:hover span {
  background-image: url(../img/arrow_green.png);
  color: #168a8f
}
.aL {
  text-align: left
}
.aC {
  text-align: center
}
.aR {
  text-align: right
}
.mt-0 {
  margin-top: 0px !important
}
.mb-0 {
  margin-bottom: 0px !important
}
.mt-10 {
  margin-top: 10px !important
}
.mb-10 {
  margin-bottom: 10px !important
}
.mt-20 {
  margin-top: 20px !important
}
.mb-20 {
  margin-bottom: 20px !important
}
.mt-30 {
  margin-top: 30px !important
}
.mb-30 {
  margin-bottom: 30px !important
}
.mt-40 {
  margin-top: 40px !important
}
.mb-40 {
  margin-bottom: 40px !important
}
.mt-50 {
  margin-top: 50px !important
}
.mb-50 {
  margin-bottom: 50px !important
}
.mt-60 {
  margin-top: 60px !important
}
.mb-60 {
  margin-bottom: 60px !important
}
.mt-70 {
  margin-top: 70px !important
}
.mb-70 {
  margin-bottom: 70px !important
}
.mt-80 {
  margin-top: 80px !important
}
.mb-80 {
  margin-bottom: 80px !important
}
.mt-90 {
  margin-top: 90px !important
}
.mb-90 {
  margin-bottom: 90px !important
}
.mt-100 {
  margin-top: 100px !important
}
.mb-100 {
  margin-bottom: 100px !important
}
.pt-0 {
  padding-top: 0px !important
}
.pb-0 {
  padding-bottom: 0px !important
}
.pt-10 {
  padding-top: 10px !important
}
.pb-10 {
  padding-bottom: 10px !important
}
.pt-20 {
  padding-top: 20px !important
}
.pb-20 {
  padding-bottom: 20px !important
}
.pt-30 {
  padding-top: 30px !important
}
.pb-30 {
  padding-bottom: 30px !important
}
.pt-40 {
  padding-top: 40px !important
}
.pb-40 {
  padding-bottom: 40px !important
}
.pt-50 {
  padding-top: 50px !important
}
.pb-50 {
  padding-bottom: 50px !important
}
.pt-60 {
  padding-top: 60px !important
}
.pb-60 {
  padding-bottom: 60px !important
}
.pt-70 {
  padding-top: 70px !important
}
.pb-70 {
  padding-bottom: 70px !important
}
.pt-80 {
  padding-top: 80px !important
}
.pb-80 {
  padding-bottom: 80px !important
}
.pt-90 {
  padding-top: 90px !important
}
.pb-90 {
  padding-bottom: 90px !important
}
.pt-100 {
  padding-top: 100px !important
}
.pb-100 {
  padding-bottom: 100px !important
}
.u-sp {
  display: none !important
}
@media screen {
  [hidden ~ ="screen"] {
    display: inherit
  }
  [hidden ~ ="screen"]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important
  }
}
@media only screen and (max-width: 1246px) {
  body {
    font-size: 1.6rem
  }
  .l-inner {
    max-width: 90vw
  }
  .c-conversion {
    max-width: 90vw
  }
  .c-conversion__roof {
    border-width: 0 45vw 228px 45vw
  }
  .c-conversion__roof::before {
    left: -45vw;
    border-width: 0 45vw 228px 45vw
  }
  .c-conversion__roof::after {
    right: -42vw
  }
  .c-conversion h2 {
    top: -12vw;
    width: 30vw
  }
  .c-conversion p {
    margin-bottom: 2vw;
    padding-top: 5vw
  }
  .c-conversion__cat {
    top: -15vw;
    left: 4vw;
    width: 25vw
  }
  .c-conversion__woman {
    top: -12vw;
    right: 5vw;
    width: 24vw
  }
  .c-conversion__btn {
    width: 84vw;
    padding: 2vw 0;
    font-size: 3vw
  }
  .c-conversion__btn span {
    padding: 0 1.6vw 0 3.6vw;
    background-size: 3vw 3vw
  }
  .c-conversion__btn::after {
    top: -4.6vw;
    width: 24vw
  }
  .c-title--l {
    font-size: 4vw
  }
  .c-title--l span {
    font-size: 1.4vw
  }
  .p-character__inner {
    max-width: 86vw
  }
  .p-character__title img {
    max-width: 56vw
  }
  .p-character__list li {
    width: calc((100% - 16px) / 2)
  }
  .p-mv__title-area {
    margin-top: -320px
  }
  .p-mv__title h1 img {
    width: 50vw
  }
  .p-mv__title p {
    z-index: 1;
    position: relative;
    margin-top: 32px
  }
  .p-mv__title p span {
    padding: 4px 18px 4px 28px;
    font-size: 1.4rem
  }
  .p-mv__title p {
    margin-top: 5.06666vw
  }
  .p-mv__title p span {
    width: 61.86666vw;
    padding: 5px 0;
    font-size: 2.13333vw
  }
  .p-mv__title p span::before {
    display: none
  }
  .p-mv__title__woman {
    left: 0;
    width: 25.15151vw
  }
  .p-mv__title__cat {
    right: 1vw;
    width: 22.04545vw
  }
  .p-sec01 {
    max-width: 92%;
    margin: 5vw auto 100px
  }
  .p-sec01 > div {
    padding: 32px 32px 24px
  }
  .p-sec01 .c-title--l {
    height: 10vw;
    margin-bottom: 2vw;
    background-size: 56vw auto;
    font-size: 4.4vw;
    line-height: 10vw
  }
  .p-sec01 .c-title--l::before {
    top: -6vw;
    width: 10vw;
    height: 10vw;
    margin-right: 21vw
  }
  .p-sec01 p {
    width: 46vw;
    font-size: 1.4rem;
    text-align: left
  }
  .p-sec01 p br {
    display: none
  }
  .p-sec01__character--1 {
    top: 6vw;
    left: 3vw;
    width: 14vw
  }
  .p-sec01__character--1 figcaption {
    top: 16vw;
    width: 18vw
  }
  .p-sec01__character--2 {
    top: 2vw;
    right: -1vw;
    width: 20vw
  }
  .p-sec01__character--2 figcaption {
    top: 22vw;
    width: 18vw
  }
  .p-sec01__comparison > li {
    width: 49%
  }
  .p-sec01__comparison > li figure {
    width: 100%
  }
  .p-sec01__comparison > li:nth-child(1)::after {
    width: 14vw;
    background-position: center bottom
  }
  .p-sec01__comparison > li:nth-child(2)::after {
    bottom: -20px;
    width: 13vw;
    background-position: center bottom
  }
  .p-sec02 .c-title--l {
    min-height: 19vw;
    padding-top: 3vw;
    background-size: 76vw
  }
  .p-sec02 .c-title--l img.p-sec02-title__img--1 {
    top: -7vw;
    width: 30vw;
    margin-right: 19vw
  }
  .p-sec02 .c-title--l img.p-sec02-title__img--2 {
    top: -7vw;
    width: 14vw;
    margin-left: 30vw
  }
  .p-case-list {
    margin-top: 2vw
  }
  .p-case-list > li {
    padding: 7vw 0 10vw
  }
  .p-case-list > li {
    padding: 4.66666vw 0 8.26666vw
  }
  .p-case-list > li figure {
    width: 60vw
  }
  .p-case-list > li figure::before {
    background-position: center bottom
  }
  .p-case-list > li:nth-child(2n-1)::before {
    left: -3vw
  }
  .p-case-list > li:nth-child(2n-1) .p-case-list__item__balloon {
    right: 8vw
  }
  .p-case-list > li:nth-child(2n-1) figure {
    margin: 0 auto 0 0
  }
  .p-case-list > li:nth-child(2n)::before {
    right: -3vw
  }
  .p-case-list > li:nth-child(2n) .p-case-list__item__balloon {
    left: 8vw
  }
  .p-case-list > li:nth-child(2n) figure {
    margin: 0 0 0 auto
  }
  .p-case-list > li.is-on {
    margin: 0 0 48px
  }
  .p-case-list__item__balloon {
    top: -5vw;
    width: 36vw;
    height: 36vw
  }
  .p-case-list__item__balloon > div {
    padding-top: 1vw
  }
  .p-case-list__item__balloon h3 {
    width: 26vw;
    margin: 0 auto 12px;
    padding-bottom: 14px;
    font-size: 2.4vw
  }
  .p-case-list__item__balloon h3::before {
    left: -6vw;
    width: 8vw;
    height: 8vw
  }
  .p-case-list__item__balloon p {
    width: 32vw;
    font-size: 2.2vw
  }
  .p-case-list__item__balloon p span {
    font-size: 1.6vw
  }
  .p-case-list__item__balloon p i {
    font-size: 1vw
  }
  .p-case-list__item--1 .p-case-list__item__woman {
    right: -1vw;
    width: 16vw
  }
  .p-case-list__item--1 figure::before {
    left: -5vw;
    width: 21vw
  }
  .p-case-list__item--2 .p-case-list__item__woman {
    top: 9vw;
    left: -1vw;
    width: 15.73109vw
  }
  .p-case-list__item--2 figure::before {
    right: -2vw;
    width: 20vw
  }
  .p-case-list__item--3 .l-inner::before {
    top: -1vw;
    width: 19vw;
    height: 19vw;
    margin-left: 28vw
  }
  .p-case-list__item--3 .p-case-list__item__balloon::before {
    top: 5vw;
    right: 1vw;
    width: 6vw;
    height: 7vw
  }
  .p-case-list__item--3 .p-case-list__item__woman {
    top: 10vw;
    right: 3vw;
    width: 9.81512vw
  }
  .p-case-list__item--3 figure::before {
    left: -4vw;
    width: 19vw
  }
  .p-case-list__item--4 .p-case-list__item__woman {
    left: -1vw;
    width: 11.159663vw
  }
  .p-case-list__item--4 figure::before {
    right: -6vw;
    width: 22vw
  }
  .p-case-list__item--5 .l-inner::before {
    top: -1vw;
    width: 19vw;
    height: 19vw;
    margin-left: 28vw
  }
  .p-case-list__item--5 .p-case-list__item__balloon::before {
    top: 3vw;
    right: -4vw;
    width: 7vw;
    height: 5vw
  }
  .p-case-list__item--5 .p-case-list__item__woman {
    right: 1vw;
    width: 13.5126vw
  }
  .p-case-list__item--5 figure::before {
    left: -4vw;
    width: 22vw
  }
  .p-case-list__item--6 .p-case-list__item__woman {
    left: -2vw;
    width: 16.74vw
  }
  .p-case-list__item--6 figure::before {
    right: -7vw;
    width: 24vw
  }
  .p-sec03 {
    margin-bottom: 27.2vw
  }
  .p-sec03 .c-title--l {
    width: 62vw;
    min-height: inherit;
    margin-left: 0;
    padding: 4.2vw 0 4.2vw 1.2vw;
    background-size: 48vw;
    font-size: 4.4vw
  }
  .p-sec03 .c-title--l span {
    font-size: 1.4vw
  }
  .p-sec03 .c-title--l img {
    width: 11vw
  }
  .p-sec03__cat {
    right: 10vw;
    width: 20vw
  }
  .p-sec04__txt {
    padding-top: 14vw
  }
  .p-sec04__txt .c-title--l {
    top: -14vw;
    width: 64vw;
    font-size: 4.4rem
  }
  .p-sec04__txt .c-title--l::before, .p-sec04__txt .c-title--l::after {
    width: 4vw
  }
  .p-sec04__txt .c-title--l .p-sec04__cat {
    margin-bottom: 0
  }
  .p-sec04__txt .c-title--l .p-sec04__cat img {
    width: 40vw
  }
  .p-sec04__movie__link {
    width: 90vw;
    height: 52.42857vw
  }
  .p-sec04__movie__link figure {
    width: 88vw;
    height: 50.28571vw;
    margin-top: 2vw;
    margin-left: 2vw
  }
  .p-sec04__movie__link figure::before {
    top: -2vw;
    left: -2vw
  }
  .p-sec04__movie__link figure span {
    width: 100%
  }
  .p-sec04__movie__link .p-sec04__movie__ico {
    top: 22vw
  }
  .p-sec04__btn {
    width: 90vw
  }
  .p-sec05 {
    margin: 8vw 0 70px
  }
  .p-sec05 .c-title--l {
    width: 48vw;
    margin: 0 0 12px 8vw;
    font-size: 4.4vw
  }
  .p-sec05 .c-title--l::before {
    top: -5vw;
    left: -10vw;
    width: 10vw;
    height: 10vw
  }
  .p-sec05 .c-title--l::after {
    top: -1vw;
    right: 0;
    width: 5vw;
    height: 6vw
  }
  .p-sec05 p {
    width: 48vw;
    margin: 0 0 20px 8vw
  }
  .p-sec05__woman {
    top: auto;
    right: -6px;
    bottom: -20px;
    width: 32vw
  }
  .p-sec05__woman img {
    width: 100%;
    max-width: 255px
  }
  .p-sec05__gallery__list > li:nth-child(2) {
    max-width: 88vw
  }
  .p-sec05__cat {
    width: 30vw;
    margin-right: 20vw
  }
  .p-sec05__btn {
    width: 90vw
  }
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 1.4rem
  }
  .l-inner {
    max-width: 88vw
  }
  .l-footer {
    padding: 20px 0
  }
  .l-footer small {
    font-size: 1rem
  }
  .l-header__logo {
    margin-top: 10px
  }
  .l-header__logo img {
    width: 134px
  }
  .c-conversion {
    max-width: 90.4vw
  }
  .p-character__title {
    margin: 14.26666vw auto 10px
  }
  .p-character__title img {
    max-width: 100%
  }
  .p-character__list li {
    width: 100%;
    margin-bottom: 14px
  }
  .p-character__list li img {
    width: 100%
  }
  .p-character__list li:nth-child(1)::before {
    top: -1.73333vw;
    right: auto;
    left: 16.26666vw;
    width: 12.26666vw;
    height: 8.26666vw
  }
  .p-character__list li:nth-child(4)::before {
    top: -0.66666vw;
    right: 13.86666vw;
    width: 10.13333vw;
    height: 8.8vw
  }
  .p-character__list li:nth-child(5)::before {
    top: -0.93333vw;
    right: 5.06666vw;
    bottom: auto;
    width: 6.8vw;
    height: 11.86666vw
  }
  .p-character__list li:nth-child(6)::before {
    display: none
  }
  .p-character__close {
    top: -10vw;
    width: 7.6vw
  }
  .p-mv__bg {
    background: url(../img/mv_bg-sp.jpg) center top/auto 70% no-repeat
  }
  .p-mv__title h1 img {
    width: 61.33333vw
  }
  .p-mv__title__woman {
    top: -1.6vw;
    left: -7vw;
    width: 29.73333vw
  }
  .p-mv__title__cat {
    top: -20.66666vw;
    right: -3.33333vw;
    width: 42.13333vw
  }
  .p-sec01 {
    max-width: 88vw;
    margin: 8vw auto
  }
  .p-sec01::before {
    border-width: 2.4vw 2.4vw 0 0
  }
  .p-sec01::after {
    border-width: 0 2.4vw 2.4vw 0
  }
  .p-sec01 > div {
    padding: 5.33333vw 6.66666vw
  }
  .p-sec01 > div::before {
    border-width: 2.4vw 0 0 2.4vw
  }
  .p-sec01 > div::after {
    border-width: 0 0 2.4vw 2.4vw
  }
  .p-sec01 .c-title--l {
    width: 65.06666vw;
    height: 13.86666vw;
    padding-left: 0;
    background: url(../img/sec01_title_bg-sp.png) center/contain no-repeat;
    font-size: 5vw;
    line-height: 13.866666vw
  }
  .p-sec01 .c-title--l::before {
    top: -3.33333vw;
    right: auto;
    left: -9.33333vw;
    width: 13.33333vw;
    height: 14.26666vw;
    margin-right: auto
  }
  .p-sec01 p {
    width: 100%;
    font-size: 3.73333vw;
    line-height: 1.57
  }
  .p-sec01 p + p {
    margin-top: 3.33333vw
  }
  .p-sec01 p span {
    display: block
  }
  .p-sec01 p span.-half {
    width: 53.33333vw;
    margin: 0 auto 0 0
  }
  .p-sec01 p span.-half.-right {
    margin: 0 0 0 auto
  }
  .p-sec01__character--1 {
    top: -4.8vw;
    right: -4.26666vw;
    left: auto;
    width: 28.26666vw
  }
  .p-sec01__character--1 img {
    z-index: 1;
    position: relative;
    width: 20.26666vw;
    margin: 0 0.8vw 0 7.2vw
  }
  .p-sec01__character--1 figcaption {
    top: 20vw;
    width: 28.26666vw;
    height: 28.26666vw;
    padding: 4vw 4.6vw;
    border-radius: 50%;
    box-shadow: 3px 3px 0 #c8c8c8;
    text-align: center
  }
  .p-sec01__character--1 figcaption dt {
    width: 16vw;
    height: 4.93333vw;
    margin: 0 auto 1.33333vw;
    border-radius: 2.45vw;
    background: #20bec5;
    color: #fff;
    font-size: 3.2vw;
    line-height: 4.93333vw
  }
  .p-sec01__character--1 figcaption dd {
    font-size: 2.93333vw
  }
  .p-sec01__character--2 {
    z-index: 1;
    top: 64.66666vw;
    right: auto;
    left: -4.66666vw;
    width: 31.2vw
  }
  .p-sec01__character--2 figcaption {
    top: 34.66666vw;
    right: 0;
    width: 30.26666vw;
    height: 30.26666vw;
    padding: 6.5vw 3vw;
    border-radius: 50%;
    box-shadow: -3px 3px 0 #c8c8c8;
    text-align: center
  }
  .p-sec01__character--2 figcaption dt {
    width: 16vw;
    height: 4.93333vw;
    margin: 0 auto 1.33333vw;
    border-radius: 2.45vw;
    background: #20bec5;
    color: #fff;
    font-size: 3.2vw;
    line-height: 4.93333vw
  }
  .p-sec01__character--2 figcaption dd {
    font-size: 2.93333vw
  }
  .p-sec01__comparison {
    position: relative;
    flex-wrap: wrap
  }
  .p-sec01__comparison > li {
    width: 100%;
    margin-bottom: 4.53333vw
  }
  .p-sec01__comparison > li figure figcaption {
    top: auto;
    bottom: 4vw;
    height: 4.4vw;
    font-size: 2.4vw;
    line-height: 4.4vw
  }
  .p-sec01__comparison > li figure figcaption::before {
    top: 4.4vw
  }
  .p-sec01__comparison > li figure figcaption::after {
    right: -2vw;
    width: 2vw;
    height: 4.4vw
  }
  .p-sec01__comparison > li:nth-child(1)::after {
    right: -7px;
    bottom: -10px;
    width: 28.53333vw
  }
  .p-sec01__comparison > li:nth-child(2)::after {
    right: 0;
    bottom: -15px;
    width: 25.6vw
  }
  .p-sec02 {
    margin-top: 28.26666vw
  }
  .p-sec02 .c-title--l {
    width: 88vw;
    height: 24.26666vw;
    margin: 0 auto;
    padding: 3.46666vw 0 0;
    background: url(../img/sec02_title_bg-sp.png) center/contain no-repeat;
    font-size: 6.2vw;
    line-height: 1.3
  }
  .p-sec02 .c-title--l span {
    font-size: 2.4vw
  }
  .p-sec02 .c-title--l::after {
    top: 20vw;
    width: 16.66666vw;
    height: 31.73333vw;
    margin-left: 32.8vw;
    background-image: url(../img/sec02_foot_print_1-sp.png)
  }
  .p-sec02 .c-title--l img.p-sec02-title__img--1 {
    top: -20vw;
    right: auto;
    left: 1.6vw;
    width: 40vw;
    margin-right: auto
  }
  .p-sec02 .c-title--l img.p-sec02-title__img--2 {
    top: -10.66666vw;
    right: 2.93333vw;
    left: auto;
    width: 20vw;
    margin-left: auto
  }
  .p-case-list > li figure {
    width: 86.26666vw
  }
  .p-case-list > li figure::after {
    background-size: 2%
  }
  .p-case-list > li:nth-child(2n-1)::before {
    left: -5vw
  }
  .p-case-list > li:nth-child(2n-1) .p-case-list__item__balloon {
    right: auto
  }
  .p-case-list > li:nth-child(2n-1) figure {
    margin: -2.93333vw auto 0 -5vw
  }
  .p-case-list > li:nth-child(2n)::before {
    right: -5vw
  }
  .p-case-list > li:nth-child(2n) .p-case-list__item__balloon {
    left: auto;
    margin: 0 0 0 auto
  }
  .p-case-list > li:nth-child(2n) figure {
    margin: -2.93333vw -5vw 0 auto
  }
  .p-case-list__item__balloon {
    position: relative;
    top: 0;
    width: 53.33333vw;
    height: 53.33333vw
  }
  .p-case-list__item__balloon > div {
    padding-top: 0
  }
  .p-case-list__item__balloon h3 {
    width: 33vw;
    margin: 0 auto 2.4vw;
    padding-bottom: 2.13333vw;
    padding-left: 2vw;
    background-size: auto 0.53333vw !important;
    font-size: 3.46666vw
  }
  .p-case-list__item__balloon h3::before {
    top: -3.73333vw;
    left: -10.66666vw;
    width: 12.26666vw;
    height: 12.26666vw
  }
  .p-case-list__item__balloon p {
    width: 44vw;
    font-size: 3.2vw;
    letter-spacing: 0
  }
  .p-case-list__item__balloon p span {
    margin-bottom: 0.8vw;
    font-size: 2.4vw;
    line-height: 1.2
  }
  .p-case-list__item__balloon p i {
    display: block;
    margin-top: 1vw;
    font-size: 2.13333vw
  }
  .p-case-list__item--1::after {
    bottom: -30vw;
    width: 11.46666vw;
    height: 28.13333vw;
    margin-right: 33.86666vw;
    background-image: url(../img/sec02_foot_print_2-sp.png)
  }
  .p-case-list__item--1 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 #e5caa5
  }
  .p-case-list__item--1 .p-case-list__item__balloon::after {
    top: 9.33333vw;
    right: 1.46666vw;
    bottom: auto;
    transform: rotate(50deg)
  }
  .p-case-list__item--1 .p-case-list__item__woman {
    top: 0;
    right: 4.66666vw;
    width: 29.33333vw
  }
  .p-case-list__item--1 figure::before {
    bottom: -13.06666vw;
    left: 5vw;
    width: 38.93333vw
  }
  .p-case-list__item--2::after {
    top: auto;
    bottom: -34.4vw;
    width: 16.66666vw;
    height: 31.73333vw;
    margin-left: 35.06666vw;
    background-image: url(../img/sec02_foot_print_3-sp.png)
  }
  .p-case-list__item--2 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 rgba(32, 190, 197, 0.76)
  }
  .p-case-list__item--2 .p-case-list__item__balloon::after {
    top: 20vw;
    bottom: auto;
    left: -3vw;
    transform: rotate(-68deg)
  }
  .p-case-list__item--2 .p-case-list__item__woman {
    top: 0;
    left: 2.4vw;
    width: 27.2vw
  }
  .p-case-list__item--2 figure::before {
    right: 5vw;
    width: 33.86666vw
  }
  .p-case-list__item--3::after {
    bottom: -29.73333vw;
    width: 11.46666vw;
    height: 28.13333vw;
    margin-right: 36vw;
    background-image: url(../img/sec02_foot_print_4-sp.png)
  }
  .p-case-list__item--3 .l-inner::before {
    display: none
  }
  .p-case-list__item--3 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 #c8c8c8
  }
  .p-case-list__item--3 .p-case-list__item__balloon::before {
    display: none
  }
  .p-case-list__item--3 .p-case-list__item__balloon::after {
    top: 9.6vw;
    right: 1.6vw;
    bottom: auto;
    transform: rotate(50deg)
  }
  .p-case-list__item--3 .p-case-list__item__woman {
    top: 1vw;
    right: 4.8vw;
    width: 26.93333vw
  }
  .p-case-list__item--3 figure::before {
    bottom: -12vw;
    left: 5vw;
    width: 30.93333vw
  }
  .p-case-list__item--4::after {
    top: auto;
    bottom: -28.8vw;
    width: 16.66666vw;
    height: 31.73333vw;
    margin-left: 31.6vw;
    background-image: url(../img/sec02_foot_print_5-sp.png)
  }
  .p-case-list__item--4 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 rgba(48, 175, 55, 0.76)
  }
  .p-case-list__item--4 .p-case-list__item__balloon::before {
    display: none
  }
  .p-case-list__item--4 .p-case-list__item__balloon::after {
    top: 20vw;
    bottom: auto;
    left: -3vw;
    transform: rotate(-68deg)
  }
  .p-case-list__item--4 .p-case-list__item__woman {
    top: -1.33333vw;
    left: 2.66666vw;
    width: 29.2vw
  }
  .p-case-list__item--4 figure::before {
    right: 4.66666vw;
    bottom: -11.73333vw;
    width: 42.8vw
  }
  .p-case-list__item--5::after {
    bottom: -24.66666vw;
    width: 11.46666vw;
    height: 28.13333vw;
    margin-right: 36.8vw;
    background-image: url(../img/sec02_foot_print_6-sp.png)
  }
  .p-case-list__item--5 .l-inner::before {
    display: none
  }
  .p-case-list__item--5 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 #e4b5d7
  }
  .p-case-list__item--5 .p-case-list__item__balloon::before {
    display: none
  }
  .p-case-list__item--5 .p-case-list__item__balloon::after {
    top: 9.6vw;
    right: 1.6vw;
    bottom: auto;
    transform: rotate(50deg)
  }
  .p-case-list__item--5 .p-case-list__item__woman {
    top: -7.06666vw;
    right: 4.4vw;
    width: 29.46666vw
  }
  .p-case-list__item--5 figure::before {
    bottom: -4.4vw;
    left: 4vw;
    width: 36.66666vw
  }
  .p-case-list__item--6 .p-case-list__item__balloon {
    box-shadow: 1vw 1vw 0 #ff5f60
  }
  .p-case-list__item--6 .p-case-list__item__balloon::after {
    top: 20vw;
    bottom: auto;
    left: -3vw;
    transform: rotate(-68deg)
  }
  .p-case-list__item--6 .p-case-list__item__woman {
    top: -3.06666vw;
    left: 6.66666vw;
    width: 24.13333vw
  }
  .p-case-list__item--6 figure::before {
    right: 3.73333vw;
    bottom: -13.6vw;
    width: 38.93333vw
  }
  .p-sec03 {
    margin-top: 12.8vw
  }
  .p-sec03 .c-title--l {
    left: -2vw;
    width: 78.93333vw;
    height: 25.73333vw;
    padding: 7.2vw 0 4.2vw 13vw;
    background-size: contain;
    font-size: 6.5vw;
    text-align: left
  }
  .p-sec03 .c-title--l span {
    font-size: 2.66666vw
  }
  .p-sec03 .c-title--l img {
    top: -0.5vw;
    width: 12.93333vw
  }
  .p-sec03__cat {
    top: 3.73333vw;
    right: -2vw;
    width: 24.66666vw
  }
  .p-sec03 .bx-wrapper {
    margin-top: -3.2vw
  }
  .p-sec03__gallery li {
    width: 62.66666vw !important;
    margin: 0 2.4vw
  }
  .p-sec03__gallery figure img {
    border-radius: 2.66666vw
  }
  .p-sec03__gallery figure figcaption {
    bottom: 4vw
  }
  .p-sec04 {
    position: relative
  }
  .p-sec04__character {
    z-index: 5;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%
  }
  .p-sec04__character span img {
    max-width: 100%
  }
  .p-sec04__character--1 {
    top: auto;
    bottom: calc(-14.26666vw + 4vw + 4vw + (12px * 2));
    width: 22.53333vw;
    margin-right: 29.2vw
  }
  .p-sec04__character--2 {
    top: auto;
    bottom: calc(-13.86666vw + 4vw + 4vw + (12px * 2));
    width: 21.73333vw;
    margin-left: 27.06666vw
  }
  .p-sec04__txt {
    padding-top: 22vw
  }
  .p-sec04__txt .c-title--l {
    top: -14.13333vw;
    width: 79.73333vw;
    font-size: 6.2vw
  }
  .p-sec04__txt .c-title--l::before, .p-sec04__txt .c-title--l::after {
    width: 5.06666vw
  }
  .p-sec04__txt .c-title--l .p-sec04__cat {
    margin-bottom: 0;
    margin-left: 6.66666vw
  }
  .p-sec04__txt .c-title--l .p-sec04__cat img {
    width: 53vw
  }
  .p-sec04__txt p {
    font-size: 3.73333vw
  }
  .p-sec04__movie__link {
    width: 86.66666vw;
    height: auto
  }
  .p-sec04__btn {
    width: 55.6vw;
    margin: 4vw auto 0;
    padding: 12px 0;
    border-radius: 2.66666vw;
    font-size: 4vw
  }
  .p-sec04__btn span {
    padding-left: 6.66666vw;
    background-size: 4vw 4vw
  }
  .p-sec05 {
    margin: 12.53333vw 0 13.33333vw;
    padding: 4.4vw 0 4.4vw
  }
  .p-sec05 .c-title--l {
    width: 100%;
    margin: 0;
    padding-top: 4.4vw;
    background: url(../img/sec05_woman-sp.png) right 5vw bottom/34.13333vw auto no-repeat;
    font-size: 6vw
  }
  .p-sec05 .c-title--l::before {
    top: calc(-10.66666vw + 4.4vw);
    left: 34vw;
    width: 14.26666vw;
    height: 15.2vw;
    background: url(../img/sec05_title_balloon-sp.png) center/contain no-repeat
  }
  .p-sec05 .c-title--l::after {
    display: none
  }
  .p-sec05 .c-title--l em {
    font-size: 4.26666vw
  }
  .p-sec05 p {
    width: 100%;
    margin: 2.93333vw auto 4vw;
    font-size: 3.73333vw
  }
  .p-sec05 p span {
    display: block;
    margin-top: 1.33333vw;
    margin-left: 0;
    padding-left: 1em;
    font-size: 3.2vw;
    text-indent: -1em
  }
  .p-sec05__woman {
    display: none
  }
  .p-sec05__gallery {
    margin-bottom: 4vw
  }
  .p-sec05__gallery__list > li figure img {
    border-radius: 2.66666vw
  }
  .p-sec05__cat {
    bottom: -13.33333vw;
    width: 37.33333vw;
    margin-right: 11.2vw
  }
  .p-sec05__btn {
    width: 55.6vw;
    padding: 12px 0;
    border-radius: 2.66666vw;
    font-size: 4vw
  }
  .p-sec05__btn span {
    padding-left: 6.66666vw;
    background-size: 4vw 4vw
  }
  .u-pc {
    display: none !important
  }
  .u-sp {
    display: inherit !important
  }
}
@media only screen and (max-width: 600px) {
  body {
    font-size: 1.4rem
  }
  .p-mv__bg {
    background-size: auto 260px
  }
  .p-mv__title-area {
    margin-top: -360px
  }
}
/*# sourceMappingURL=parts.css.map */