@charset "UTF-8";
/* CSS Document */
/** ================================================

  Responsive Settings

================================================ */
/** ================================================

  Easing Settings

================================================ */
/** ================================================

  Font Settings

================================================ */
/** ================================================

  Object Size

================================================ */
/** ================================================

  Utility

================================================ */
/** ================================================

  Responsive

================================================ */
/*===============================================
 responsive element
===============================================*/
.issp {
  display: none;
}

.pc-inline {
  display: inline !important;
}

.pc-inline-block {
  display: inline-block !important;
}

.pc-block {
  display: block !important;
}

.sp-inline,
.sp-inline-block,
.sp-block {
  display: none !important;
}

@media not all and (min-width: 768px) {
  .issp {
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 1px;
    display: block;
  }
  .pc-inline,
.pc-inline-block,
.pc-block {
    display: none !important;
  }
  .sp-inline {
    display: inline !important;
  }
  .sp-inline-block {
    display: inline-block !important;
  }
  .sp-block {
    display: block !important;
  }
}
/*
@function vh( $size, $base ) {
	@return 100vh / $base * $size;
}
*/
/*
@function spvh( $size ) {
	@return vh( $size, $sp-base-h );
}
*/
/*
@function pcvh( $size ) {
	@return vh( $size, $pc-base-h );
}
*/
/*===============================================
 common
===============================================*/
img {
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.1s linear;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  cursor: default;
}
a[href] {
  cursor: pointer;
}
a[href]:hover {
  opacity: 0.7;
}
a[href^="tel:"] {
  cursor: default;
  pointer-events: none;
}
@media not all and (min-width: 768px) {
  a[href^="tel:"] {
    cursor: pointer;
    pointer-events: auto;
  }
}

.alt {
  display: none;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

@-webkit-keyframes blink {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}

@keyframes blink {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotation_centering {
  0% {
    transform: translateX(-50%) translateY(-50%) rotate(0);
  }
  100% {
    transform: translateX(-50%) translateY(-50%) rotate(360deg);
  }
}
@keyframes rotation_centering {
  0% {
    transform: translateX(-50%) translateY(-50%) rotate(0);
  }
  100% {
    transform: translateX(-50%) translateY(-50%) rotate(360deg);
  }
}
@-webkit-keyframes bounce {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes bounce {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes modal-loader-rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes modal-loader-rotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes modal-loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124;
  }
}
@keyframes modal-loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124;
  }
}
@-webkit-keyframes modal-loader-color {
  0% {
    stroke: #fff;
  }
  40% {
    stroke: #fff;
  }
  66% {
    stroke: #fff;
  }
  80%, 90% {
    stroke: #fff;
  }
}
@keyframes modal-loader-color {
  0% {
    stroke: #fff;
  }
  40% {
    stroke: #fff;
  }
  66% {
    stroke: #fff;
  }
  80%, 90% {
    stroke: #fff;
  }
}
/*===============================================
 main
===============================================*/
html {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
}
body {
  height: 100%;
  line-height: 2;
}
.m-loading,
.l-side,
.l-fixed,
.p-home,
.p-home-popup,
.p-post,
.p-concept {
  color: #231815;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 400;
  letter-spacing: 0.125em;
  font-feature-settings: "palt" 1;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body.is-popup-visible #viewport_fsp {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
}

@media all and (min-width: 768px) {
  .l-header {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .l-header {
    display: flex;
    width: 100%;
    height: 10.9333333333vw;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #dbdbdb;
    box-sizing: content-box;
  }
  .l-header__logo {
    padding: 2.1333333333vw 0 0 4vw;
  }
  .l-header__logo > a {
    display: block;
    width: 20vw;
    height: 6.4vw;
    background: url(../images/common/header_logo.svg) no-repeat;
    background-size: 100% auto;
  }
  .l-header__logo > a > span {
    display: none;
  }
  .l-header__nav {
    display: flex;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .l-header__link > a {
    display: block;
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }
  .l-header__link > a > span {
    display: none;
  }
  .l-header__link--top {
    margin-right: 3.2vw;
  }
  .l-header__link--top > a {
    width: 14.9333333333vw;
    height: 5.4666666667vw;
    background-image: url(../images/common/header_corpo.png);
  }
  .l-header__link--menu, .l-header__link--favorite, .l-header__link--bag {
    border-left: 1px solid #dbdbdb;
  }
  .l-header__link--menu > a, .l-header__link--favorite > a, .l-header__link--bag > a {
    width: 10vw;
    height: 10.9333333333vw;
  }
  .l-header__link--menu > a {
    background-image: url(../images/common/header_nav_menu.png);
  }
  .l-header__link--favorite > a {
    background-image: url(../images/common/header_nav_favorite.png);
  }
  .l-header__link--bag > a {
    background-image: url(../images/common/header_nav_bag.png);
  }
}
@media not all and (min-width: 768px) {
  .l-header-pc {
    display: none;
  }
}
@media all and (min-width: 768px) {
  .l-header-pc {
    border-bottom: 1px solid #B4B4B4;
  }
  #header_allm {
    max-width: 880px;
    margin: 0 auto;
    padding: 6px 0 7px 0;
    font-size: 10px;
    line-height: 1.6;
    *zoom: 1;
    /* お気に入り通知追加 */
  }
  #header_allm:after {
    content: "";
    display: block;
    clear: both;
  }
  #header_allm ul {
    float: right;
    padding: 0;
    margin: 0;
    list-style: none;
  }
  #header_allm li,
#header_allm p {
    float: left;
  }
  #header_allm .wish_allm {
    background: url(../images/common/allm_common.png) no-repeat -394px 0;
    margin: 0 0 0 10px;
  }
  #header_allm .wish_allm {
    background: url(../images/common/allm_common.png) no-repeat -394px 0;
    margin: 0 0 0 10px;
  }
  #header_allm a {
    background: url(../images/common/allm_common.png) no-repeat 0 0;
    display: block;
    height: 15px;
    overflow: hidden;
    text-indent: 100%;
    margin: 3px 0 0 10px;
    white-space: nowrap;
  }
  #header_allm p {
    width: 164px;
  }
  #header_allm p a {
    width: 164px;
    height: 24px;
    background: url(../images/common/header_logo.png) no-repeat;
    background-size: contain;
    margin: 0;
  }
  #header_allm .f_top_allm a {
    width: 83px;
  }
  #header_allm .wish_allm a {
    width: 62px;
  }
  #header_allm .first_allm a,
#header_allm .guide_allm a,
#header_allm .conatct_allm a {
    width: 60px;
  }
  #header_allm .bag_allm a {
    width: 138px;
  }
  #header_allm .login_allm a,
#header_allm .logout_allm a {
    height: 18px;
    width: 53px;
    margin: 1px 0 0 10px;
  }
  #header_allm .f_top_allm a {
    background-position: -91px -5px;
  }
  #header_allm .first_allm a {
    background-position: -183px -5px;
  }
  #header_allm .guide_allm a {
    background-position: -253px -5px;
  }
  #header_allm .conatct_allm a {
    background-position: -323px -5px;
  }
  #header_allm .favorite_allm a {
    background-position: -406px -5px;
  }
  #header_allm .wish_allm a {
    background-position: -406px -5px;
  }
  #header_allm .bag_allm a {
    background-position: -499px -5px;
  }
  #header_allm .logout_allm a {
    background-position: -647px -2px;
  }
  #header_allm .login_allm a {
    background-position: -707px -2px;
  }
  #header_allm .favorite_allm {
    background: url(../images/common/allm_common.png) no-repeat -394px 0;
    margin: 0 0 0 10px;
  }
  #header_allm .favorite_allm a {
    padding-left: 62px;
    overflow: visible;
    text-indent: 0;
    color: transparent;
  }
  #header_allm .favorite_allm a span {
    font-size: 0;
    color: transparent;
  }
  #header_allm .favorite_allm a em {
    min-width: 21px;
    margin: -3px 0 0 4px;
    padding: 5px 6px;
    display: inline-block;
    font-size: 110%;
    font-weight: normal;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    color: #fff;
    background-color: #e35c81;
    border-radius: 999em;
    box-sizing: border-box;
  }
}
.l-in {
  max-width: 880px;
  padding-left: 24px;
  padding-right: 24px;
  margin-left: auto;
  margin-right: auto;
}
@media not all and (min-width: 768px) {
  .l-in {
    max-width: none;
    padding-left: 8vw;
    padding-right: 8vw;
  }
}

.l-fixed {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9998;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.l-fixed-logo {
  position: absolute;
  left: 30px;
  top: 62px;
  width: 192px;
  pointer-events: auto;
}
@media not all and (min-width: 768px) {
  .l-fixed-logo {
    display: none;
  }
}
.l-fixed-logo--hidden {
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.3s;
  transform: translateX(-222px);
  opacity: 0;
}
.l-fixed-logo--hidden.is-visible {
  transform: translateX(0px);
  opacity: 1;
}
.l-fixed-menu {
  position: absolute;
  right: 60px;
  top: 60px;
  pointer-events: auto;
}
@media not all and (min-width: 768px) {
  .l-fixed-menu {
    right: 5.3333333333vw;
    top: 13.6vw;
  }
}
.l-fixed-menu__button {
  display: flex;
  flex-direction: column;
  width: 42px;
  height: 54px;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
  outline: 0 !important;
  cursor: pointer;
}
@media not all and (min-width: 768px) {
  .l-fixed-menu__button {
    width: 11.2vw;
    height: 14.4vw;
  }
}
.l-fixed-menu__icon {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
}
@media not all and (min-width: 768px) {
  .l-fixed-menu__icon {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
.l-fixed-menu__icon:before, .l-fixed-menu__icon:after {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 2px;
  background-color: #231815;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  content: "";
}
.l-fixed-menu__icon:before {
  transform: translateY(-6px);
}
@media not all and (min-width: 768px) {
  .l-fixed-menu__icon:before {
    transform: translateY(-1.6vw);
  }
}
.l-fixed-menu__icon:after {
  transform: translateY(6px);
}
@media not all and (min-width: 768px) {
  .l-fixed-menu__icon:after {
    transform: translateY(1.6vw);
  }
}
body.is-side-visible .l-fixed-menu__icon:before, body.is-side-visible .l-fixed-menu__icon:after {
  background-color: #ffffff;
}
body.is-side-visible .l-fixed-menu__icon:before {
  transform: rotate(45deg) translateY(0px);
}
body.is-side-visible .l-fixed-menu__icon:after {
  transform: rotate(-45deg) translateY(0px);
}
.l-fixed-menu__label--on, .l-fixed-menu__label--off {
  width: 100%;
  margin-top: 12px;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .l-fixed-menu__label--on, .l-fixed-menu__label--off {
    margin-top: 3.2vw;
    font-size: 3.2vw;
  }
}
.l-fixed-menu__label--on {
  display: block;
  color: #231815;
  letter-spacing: 0.15em;
}
.l-fixed-menu__label--off {
  display: none;
  color: #ffffff;
  letter-spacing: 0.1em;
}
body.is-side-visible .l-fixed-menu__label--on {
  display: none;
}
body.is-side-visible .l-fixed-menu__label--off {
  display: block;
}
.l-fixed-pagetop {
  position: absolute;
  right: 60px;
  bottom: 20px;
  width: 47px;
  pointer-events: auto;
}
@media not all and (min-width: 768px) {
  .l-fixed-pagetop {
    right: 2.6666666667vw;
    bottom: 2.6666666667vw;
    width: 10.6666666667vw;
  }
}
.l-fixed-pagetop > a {
  display: block;
}
.l-fixed-pagetop > a > span {
  display: block;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media not all and (min-width: 768px) {
  .l-fixed-pagetop > a > span {
    font-size: 3.2vw;
  }
}

.l-side {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9997;
  display: flex;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.l-side__bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
body.is-side-visible .l-side__bg {
  pointer-events: auto;
}
.l-side__container {
  position: relative;
  display: block;
  width: 0px;
  height: 100%;
  background-color: #FF6767;
  overflow: hidden;
  pointer-events: auto;
  transition: width 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
body.is-side-visible .l-side__container {
  width: 322px;
}
@media not all and (min-width: 768px) {
  body.is-side-visible .l-side__container {
    width: 100%;
  }
}
.l-side__in {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  scrollbar-width: none;
}
.l-side__in::-webkit-scrollbar {
  display: none;
}
.l-side__scroll {
  padding: 180px 60px;
}
@media not all and (min-width: 768px) {
  .l-side__scroll {
    padding: 40vw 10.6666666667vw 24vw 21.3333333333vw;
  }
}
.l-side-sect {
  color: #ffffff;
}
.l-side-sect:not(:first-child) {
  margin-top: 60px;
}
.l-side-sect__ttl {
  font-size: 16px;
}
.l-side-sect ul {
  margin-top: 16px;
  font-size: 13px;
  line-height: 1;
}
.l-side-sect ul > li:not(:first-child) {
  margin-top: 16px;
}
.l-side-sect p {
  margin-top: 16px;
  font-size: 15px;
  line-height: 1;
}
.l-side-sect a {
  color: #ffffff;
}
.l-side-sect a > span {
  display: inline-block;
  padding: 0 0.5em 2px 0;
  border-bottom: 2px dotted #ffffff;
}

.m-loading {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 100009;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
}
.m-loading.is-hidden {
  transition: opacity 1s;
  opacity: 0;
  pointer-events: none;
}
.m-loading__center {
  position: relative;
  display: block;
  width: 161px;
  height: auto;
}

.m-follow {
  padding: 80px 0;
}
@media not all and (min-width: 768px) {
  .m-follow {
    padding: 11.4666666667vw 0 0 0;
  }
}
@media not all and (min-width: 768px) {
  .m-follow__in {
    padding: 0;
  }
}
.m-follow p {
  max-width: 572px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .m-follow p {
    max-width: 100%;
  }
}
.m-follow p > a {
  display: block;
}
.m-follow p > a > picture {
  display: block;
}
.m-follow p > a > picture > img {
  display: block;
}

.m-feature {
  padding: 32px 0;
}
@media not all and (min-width: 768px) {
  .m-feature {
    padding: 11.4666666667vw 0;
  }
}
.m-feature__ttl {
  text-align: center;
  font-size: 22px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .m-feature__ttl {
    font-size: 4.8vw;
  }
}
.m-feature__banners {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin-top: 30px;
  list-style: none;
}
@media not all and (min-width: 768px) {
  .m-feature__banners {
    margin-top: 6.4vw;
    flex-direction: column;
  }
}
.m-feature__banners > li {
  width: 31.453362256%;
}
@media not all and (min-width: 768px) {
  .m-feature__banners > li {
    width: 100%;
  }
}
.m-feature__banners > li:not(:nth-child(3n+1)) {
  margin-left: 2.8199566161%;
}
@media not all and (min-width: 768px) {
  .m-feature__banners > li:not(:nth-child(3n+1)) {
    margin-left: 0;
  }
}
@media not all and (min-width: 768px) {
  .m-feature__banners > li:not(:first-child) {
    margin-top: 6.4vw;
  }
}
.m-feature__banners > li a {
  display: block;
}
.m-feature__banners > li a > img {
  display: block;
  width: 100%;
}

.remodal-overlay {
  z-index: 208001;
}
.remodal-wrapper {
  z-index: 208002;
}

@-webkit-keyframes kf-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes kf-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.p-home {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-home-mv {
  position: relative;
}
.p-home-mv__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.p-home-mv__bg > div {
  position: absolute;
}
.p-home-mv__bg > div img,
.p-home-mv__bg > div svg {
  width: 100%;
  height: auto;
}
.p-home-mv__bg > div svg {
  overflow: visible;
}
.p-home-mv__bg > div:nth-child(1) {
  left: calc(50% - 626px);
  top: 28px;
  width: 62px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(1) {
    left: 84.2666666667vw;
    top: 37.3333333333vw;
    width: 3.7333333333vw;
  }
}
.p-home-mv__bg > div:nth-child(2) {
  left: calc(50% + 397px);
  top: 33px;
  width: 404px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(2) {
    left: 1.8666666667vw;
    top: -17.0666666667vw;
    width: 56.5333333333vw;
  }
}
.p-home-mv__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-mv__bg > div:nth-child(2) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-mv__bg > div:nth-child(3) {
  left: calc(50% + 395px);
  top: 538px;
  width: 115px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(3) {
    left: 85.8666666667vw;
    top: 78.6666666667vw;
    width: 21.3333333333vw;
  }
}
.p-home-mv__bg > div:nth-child(4) {
  left: calc(50% + 566px);
  top: 632px;
  width: 156px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(4) {
    left: -4.8vw;
    top: 95.4666666667vw;
    width: 14.4vw;
  }
}
.p-home-mv__bg > div:nth-child(4) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 65% 60%;
}
.p-home-mv__bg > div:nth-child(5) {
  left: calc(50% - 736px);
  top: 345px;
  width: 213px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(5) {
    left: -0.2666666667vw;
    top: 142.9333333333vw;
    width: 34.9333333333vw;
  }
}
.p-home-mv__bg > div:nth-child(5) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 50% 40%;
}
.p-home-mv__bg > div:nth-child(5) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-home-mv__bg > div:nth-child(6) {
  left: calc(50% - 560px);
  top: 882px;
  width: 128px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__bg > div:nth-child(6) {
    display: none;
  }
}
.p-home-mv__in {
  position: relative;
  padding-top: 54px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__in {
    padding-top: 25.6vw;
  }
}
.p-home-mv__logo {
  width: 222px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-mv__logo {
    width: 45.3333333333vw;
  }
}
.p-home-mv__logo > img {
  display: block;
  width: 100%;
}
.p-home-mv__catch {
  margin: 24px 0 0 0;
  text-align: center;
}
@media not all and (min-width: 768px) {
  .p-home-mv__catch {
    margin: 8vw 0 0 0;
  }
}
.p-home-mv__container {
  position: relative;
  width: 100%;
  margin-top: 46px;
  padding-top: 52.2727272727%;
  overflow: hidden;
}
@media not all and (min-width: 768px) {
  .p-home-mv__container {
    margin-top: 10.1333333333vw;
    padding-top: 112vw;
  }
}
.p-home-mv__slide {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  width: 100%;
}
.p-home-mv__item {
  position: relative;
  width: 100%;
  flex: 0 0 auto;
}
.p-home-mv__item > a:hover {
  opacity: 1 !important;
}
.p-home-mv__item__in {
  position: relative;
}
.p-home-mv__item__thumb {
  position: relative;
  display: block;
  border-radius: 6px;
  background-color: #ffffff;
  overflow: hidden;
}
@media not all and (min-width: 768px) {
  .p-home-mv__item__thumb {
    border-radius: 1.6vw;
  }
}
.p-home-mv__item__thumb > img {
  display: block;
  width: 100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.2s;
}
.p-home-mv__item > a:hover .p-home-mv__item__thumb > img {
  opacity: 0.75;
}
body:not(.is-ua-safari) .p-home-mv__item > a:hover .p-home-mv__item__thumb > img {
  transform: scale(1.04);
}
.p-home-mv__item__content {
  position: absolute;
  left: 20px;
  bottom: 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: calc(100% - 40px);
}
@media not all and (min-width: 768px) {
  .p-home-mv__item__content {
    left: 4vw;
    bottom: 4vw;
    width: 76vw;
  }
}
.p-home-mv__item__ttl {
  padding: 8px 16px;
  background-color: #fff;
  border-radius: 6px 6px 6px 0;
  color: #FF6767;
  font-size: 18px;
  line-height: 1.5;
}
@media not all and (min-width: 768px) {
  .p-home-mv__item__ttl {
    width: 100%;
    padding: 1.3333333333vw 2.6666666667vw;
    border-radius: 1.6vw 1.6vw 1.6vw 0;
    box-sizing: border-box;
    font-size: 4vw;
  }
}
.p-home-mv__item__sub {
  min-width: 65.4761904762%;
  padding: 2px 16px;
  background-color: #fff;
  border-radius: 0 6px 6px 0;
  color: #FF6767;
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__item__sub {
    min-width: 100%;
    padding: 1.3333333333vw 2.6666666667vw 2.6666666667vw;
    border-radius: 0 0 1.6vw 0;
    box-sizing: border-box;
    font-size: 3.4666666667vw;
    line-height: 1.5;
  }
}
.p-home-mv__item__info {
  display: flex;
  padding: 2px 16px 14px 16px;
  background-color: #fff;
  border-radius: 0 0 6px 6px;
  font-size: 10px;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-home-mv__item__info {
    padding: 1.3333333333vw 2.6666666667vw 2.6666666667vw 2.6666666667vw;
    border-radius: 0 0 1.6vw 1.6vw;
    font-size: 2.6666666667vw;
  }
}
.p-home-mv__item__date {
  display: block;
  color: #FF6767;
  font-weight: 700;
}
.p-home-mv__item__cat {
  display: block;
  padding-left: 1em;
  margin-left: 1em;
  border-left: 1px solid #FF6767;
  color: #FF6767;
  font-weight: 700;
}
.p-home-mv__nav {
  display: flex;
  justify-content: flex-end;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__nav {
    padding-top: 4.2666666667vw;
    padding-bottom: 4.2666666667vw;
  }
}
.p-home-mv__nav > span {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #dddddd;
  cursor: pointer;
}
@media not all and (min-width: 768px) {
  .p-home-mv__nav > span {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
    border-radius: 0.6666666667vw;
  }
}
.p-home-mv__nav > span:not(:last-child) {
  margin-right: 6px;
}
@media not all and (min-width: 768px) {
  .p-home-mv__nav > span:not(:last-child) {
    margin-right: 1.6vw;
  }
}
.p-home-mv__nav > span.is-active {
  background-color: #FF6767;
  cursor: default;
  pointer-events: none;
}
@media not all and (min-width: 768px) {
  .p-home-mv__nav > span.is-active {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    border-radius: 0.9333333333vw;
  }
}
.p-home-concept {
  max-width: 650px;
  padding: 60px 0 142px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-concept {
    padding: 8vw 0 0;
  }
}
.p-home-concept > a {
  position: relative;
  display: block;
}
.p-home-concept__catch {
  position: absolute;
  left: 0;
  top: 54px;
  width: 100%;
  text-align: center;
  color: #FF6767;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.75;
}
@media not all and (min-width: 768px) {
  .p-home-concept__catch {
    top: 18vw;
    font-size: 6vw;
  }
}
.p-home-concept__link {
  position: absolute;
  left: 0;
  top: 140px;
  width: 100%;
  text-align: center;
  color: #231815;
  font-size: 21px;
}
@media not all and (min-width: 768px) {
  .p-home-concept__link {
    top: 42.6666666667vw;
    font-size: 4.8vw;
  }
}
.p-home-concept__link > span {
  position: relative;
  display: inline-block;
  padding-right: 70px;
}
@media not all and (min-width: 768px) {
  .p-home-concept__link > span {
    padding-right: 10.6666666667vw;
  }
}
.p-home-concept__link > span:after {
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 45px;
  height: 27px;
  background: url(../images/home/concept_arw.svg) no-repeat;
  background-size: 100% 100%;
  transform: translateY(-50%);
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-concept__link > span:after {
    width: 9.3333333333vw;
    height: 5.6vw;
  }
}
.p-home-banner {
  position: relative;
  z-index: 1;
}
@media not all and (min-width: 768px) {
  .p-home-banner {
    margin-top: -14.1333333333vw;
  }
}
.p-home-banner a {
  position: relative;
  display: block;
  width: 63.4090909091%;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-banner a {
    width: 84vw;
  }
}
.p-home-banner a:before {
  position: absolute;
  left: 14px;
  right: -14px;
  top: 14px;
  bottom: -14px;
  background-color: #B8DCFF;
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-banner a:before {
    left: 2.1333333333vw;
    right: -2.1333333333vw;
    top: 2.1333333333vw;
    bottom: -2.1333333333vw;
  }
}
.p-home-banner a picture {
  position: relative;
  display: block;
}
.p-home-banner a picture > img {
  display: block;
}
.p-home-sect {
  position: relative;
  padding: 208px 0 80px;
}
.p-home-sect__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.p-home-sect__bg > div {
  position: absolute;
}
.p-home-sect__bg > div img,
.p-home-sect__bg > div svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-home-sect__bg > div svg {
  overflow: visible;
}
.p-home-sect__in {
  position: relative;
  z-index: 1;
}
@media not all and (min-width: 768px) {
  .p-home-sect {
    padding: 14.9333333333vw 0;
  }
}
.p-home-sect__action {
  margin-bottom: 30px;
  text-align: center;
  font-size: 14px;
  line-height: 2.4rem;
}
@media not all and (min-width: 768px) {
  .p-home-sect__action {
    margin-bottom: 6.4vw;
    font-size: 3.2vw;
    line-height: 5.3333333333vw;
  }
}
.p-home-sect__action > span {
  display: inline-block;
  padding: 0 32px;
  border: 1px solid #231815;
  border-radius: 1.2rem;
  background-color: #ffffff;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-home-sect__action > span {
    padding: 0 6.4vw;
    border-radius: 2.6666666667vw;
  }
}
.p-home-sect__ttl {
  position: relative;
  z-index: 1;
  text-align: center;
  pointer-events: none;
}
.p-home-sect__ttl .en {
  display: block;
  text-align: center;
}
.p-home-sect__ttl .en:not(:last-child) {
  margin-bottom: 16px;
}
@media not all and (min-width: 768px) {
  .p-home-sect__ttl .en:not(:last-child) {
    margin-bottom: 5.3333333333vw;
  }
}
@media not all and (min-width: 768px) {
  .p-home-sect__ttl .en > img {
    width: auto;
    height: 10.6666666667vw;
  }
}
.p-home-sect__ttl .ja {
  display: inline-block;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media not all and (min-width: 768px) {
  .p-home-sect__ttl .ja {
    font-size: 3.7333333333vw;
  }
}
.p-home-sect__container {
  display: flex;
  flex-wrap: wrap;
  margin-top: -86px;
}
@media not all and (min-width: 768px) {
  .p-home-sect__container {
    margin-top: 10.6666666667vw;
  }
}
.p-home-sect__more {
  margin-top: 80px;
}
@media not all and (min-width: 768px) {
  .p-home-sect__more {
    margin-top: 17.0666666667vw;
  }
}
.p-home-sect__more > a {
  display: block;
  width: 148px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-sect__more > a {
    width: 30.6666666667vw;
  }
}
.p-home-item:not(:first-child) {
  width: 46.5909090909%;
  margin-top: 48px;
}
@media not all and (min-width: 768px) {
  .p-home-item:not(:first-child) {
    width: 100%;
    margin-top: 10.6666666667vw;
  }
}
.p-home-item:nth-child(n+3):nth-child(2n+1) {
  margin-left: 6.8181818182%;
}
@media not all and (min-width: 768px) {
  .p-home-item:nth-child(n+3):nth-child(2n+1) {
    margin-left: 0;
  }
}
.p-home-item:nth-child(n+4) {
  display: none;
}
.p-home-item > a {
  display: block;
}
.p-home-item > a:hover {
  opacity: 1 !important;
}
.p-home-item__thumb {
  position: relative;
  display: block;
  background-color: #ffffff;
  border-radius: 6px;
  overflow: hidden;
}
@media not all and (min-width: 768px) {
  .p-home-item__thumb {
    border-radius: 1.6vw;
  }
}
.p-home-item__thumb > img {
  display: block;
  width: 100%;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.2s;
}
.p-home-item > a:hover .p-home-item__thumb > img {
  opacity: 0.75;
}
body:not(.is-ua-safari) .p-home-item > a:hover .p-home-item__thumb > img {
  transform: scale(1.04);
}
.p-home-item__info {
  margin-top: 18px;
  transition: opacity 0.2s;
}
@media not all and (min-width: 768px) {
  .p-home-item__info {
    margin-top: 3.2vw;
  }
}
.p-home-item > a:hover .p-home-item__info {
  opacity: 0.75;
}
.p-home-item__cat {
  position: relative;
  padding-left: 76px;
  margin-bottom: 15px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-home-item__cat {
    padding-left: 15.4666666667vw;
    margin-bottom: 3.7333333333vw;
    font-size: 3.2vw;
  }
}
.p-home-item__cat:before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 72px;
  height: 1px;
  background-color: #231815;
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-item__cat:before {
    width: 13.3333333333vw;
  }
}
.p-home-item__ttl {
  font-size: 18px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-home-item__ttl {
    font-size: 3.4666666667vw;
    line-height: 1.7692307692;
  }
}
.p-home-item__sub {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .p-home-item__sub {
    font-size: 3.2vw;
    line-height: 1.9166666667;
  }
}
.p-home-item__date {
  font-size: 10px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-home-item__date {
    font-size: 2.9333333333vw;
    font-weight: 500;
  }
}
.p-home-new {
  position: relative;
  background-color: #FFFEDE;
  margin-top: -46px;
}
@media not all and (min-width: 768px) {
  .p-home-new {
    margin-top: -10.6666666667vw;
    padding-top: 32vw;
  }
}
.p-home-new__ttl {
  color: #5A8FDB;
}
.p-home-new__bg > div:nth-child(1) {
  left: calc(50% + 402px);
  top: -200px;
  width: 260px;
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(1) {
    display: none;
  }
}
.p-home-new__bg > div:nth-child(1) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-new__bg > div:nth-child(1) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-new__bg > div:nth-child(2) {
  left: calc(50% - 770px);
  top: 948px;
  width: 302px;
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(2) {
    left: 1.3333333333vw;
    top: 290.6666666667vw;
    width: 32vw;
  }
}
.p-home-new__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-new__bg > div:nth-child(2) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-new__bg > div:nth-child(3) {
  left: calc(50% + 498px);
  top: 360px;
  width: 241px;
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(3) {
    left: -4vw;
    top: 15.2vw;
    width: 19.2vw;
  }
}
.p-home-new__bg > div:nth-child(3) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-new__bg > div:nth-child(4) {
  left: calc(50% + 530px);
  top: 1130px;
  width: 100px;
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(4) {
    display: none;
  }
}
.p-home-new__bg > div:nth-child(5) {
  left: calc(50% - 698px);
  top: 142px;
  width: 166px;
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(5) {
    display: none;
  }
}
@media all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(6) {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(6) {
    left: 82.1333333333vw;
    top: 112vw;
    width: 22.6666666667vw;
  }
}
@media all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(7) {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .p-home-new__bg > div:nth-child(7) {
    left: 89.3333333333vw;
    top: 207.4666666667vw;
    width: 5.3333333333vw;
  }
}
.p-home-body {
  background-color: #EBFFF3;
}
.p-home-body__action {
  color: #DB65CB;
}
.p-home-body__action > span {
  border-color: #DB65CB;
}
.p-home-body__ttl {
  color: #DB65CB;
}
.p-home-body__bg > div:nth-child(1) {
  left: calc(50% + 524px);
  top: -132px;
  width: 166px;
}
@media not all and (min-width: 768px) {
  .p-home-body__bg > div:nth-child(1) {
    left: 76vw;
    top: -7.4666666667vw;
    width: 34.6666666667vw;
  }
}
.p-home-body__bg > div:nth-child(1) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-body__bg > div:nth-child(2) {
  left: calc(50% - 698px);
  top: 32px;
  width: 155px;
}
@media not all and (min-width: 768px) {
  .p-home-body__bg > div:nth-child(2) {
    left: -6.1333333333vw;
    top: 23.4666666667vw;
    width: 23.4666666667vw;
  }
}
.p-home-body__bg > div:nth-child(2) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-body__bg > div:nth-child(3) {
  left: calc(50% - 598px);
  top: 332px;
  width: 41px;
}
@media not all and (min-width: 768px) {
  .p-home-body__bg > div:nth-child(3) {
    display: none;
  }
}
.p-home-body__bg > div:nth-child(4) {
  left: calc(50% + 248px);
  top: 438px;
  width: 433px;
}
@media not all and (min-width: 768px) {
  .p-home-body__bg > div:nth-child(4) {
    display: none;
  }
}
.p-home-body__bg > div:nth-child(5) {
  left: calc(50% - 824px);
  top: 740px;
  width: 452px;
}
@media not all and (min-width: 768px) {
  .p-home-body__bg > div:nth-child(5) {
    left: -10.6666666667vw;
    top: 286.9333333333vw;
    width: 38.1333333333vw;
  }
}
.p-home-body__bg > div:nth-child(5) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-body__bg > div:nth-child(5) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-mind {
  background-color: #FFE8E7;
}
.p-home-mind__action {
  color: #33D19D;
}
.p-home-mind__action > span {
  border-color: #33D19D;
}
.p-home-mind__ttl {
  color: #33D19D;
}
.p-home-mind__bg > div:nth-child(1) {
  left: calc(50% - 720px);
  top: 268px;
  width: 204px;
}
@media not all and (min-width: 768px) {
  .p-home-mind__bg > div:nth-child(1) {
    left: 77.3333333333vw;
    top: 26.6666666667vw;
    width: 26.6666666667vw;
  }
}
.p-home-mind__bg > div:nth-child(1) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-home-mind__bg > div:nth-child(1) svg [data-name=circle01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-mind__bg > div:nth-child(2) {
  left: calc(50% + 460px);
  top: 244px;
  width: 278px;
}
@media not all and (min-width: 768px) {
  .p-home-mind__bg > div:nth-child(2) {
    left: -5.3333333333vw;
    top: 293.3333333333vw;
    width: 33.6vw;
  }
}
.p-home-mind__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-mind__bg > div:nth-child(2) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-mind__bg > div:nth-child(3) {
  left: calc(50% - 670px);
  top: 1074px;
  width: 185px;
}
@media not all and (min-width: 768px) {
  .p-home-mind__bg > div:nth-child(3) {
    left: 78.6666666667vw;
    top: 212.2666666667vw;
    width: 16vw;
  }
}
.p-home-gender {
  background-color: #FBEBFF;
}
.p-home-gender__action {
  color: #33D19D;
}
.p-home-gender__action > span {
  border-color: #33D19D;
}
.p-home-gender__ttl {
  color: #33D19D;
}
.p-home-gender__bg > div:nth-child(1) {
  left: calc(50% - 684px);
  top: 122px;
  width: 185px;
}
@media not all and (min-width: 768px) {
  .p-home-gender__bg > div:nth-child(1) {
    left: -10.4vw;
    top: 45.3333333333vw;
    width: 23.7333333333vw;
  }
}
.p-home-gender__bg > div:nth-child(2) {
  left: calc(50% + 378px);
  top: 116px;
  width: 452px;
}
@media not all and (min-width: 768px) {
  .p-home-gender__bg > div:nth-child(2) {
    left: 78.4vw;
    top: 29.8666666667vw;
    width: 29.6vw;
  }
}
.p-home-gender__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-gender__bg > div:nth-child(2) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-gender__bg > div:nth-child(3) {
  left: calc(50% + 468px);
  top: 740px;
  width: 80px;
}
@media not all and (min-width: 768px) {
  .p-home-gender__bg > div:nth-child(3) {
    display: none;
  }
}
.p-home-gender__bg > div:nth-child(4) {
  left: calc(50% - 836px);
  top: 944px;
  width: 452px;
}
@media not all and (min-width: 768px) {
  .p-home-gender__bg > div:nth-child(4) {
    left: 78.4vw;
    top: 284.8vw;
    width: 35.4666666667vw;
  }
}
.p-home-gender__bg > div:nth-child(4) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-gender__bg > div:nth-child(4) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-home-dialogue {
  background-color: #FFFFFF;
}
.p-home-dialogue__action {
  color: #5A8FDB;
}
.p-home-dialogue__action > span {
  border-color: #5A8FDB;
}
.p-home-dialogue__ttl {
  color: #5A8FDB;
}
.p-home-dialogue__bg > div:nth-child(1) {
  left: calc(50% - 543px);
  top: 54px;
  width: 80px;
}
@media not all and (min-width: 768px) {
  .p-home-dialogue__bg > div:nth-child(1) {
    display: none;
  }
}
.p-home-dialogue__bg > div:nth-child(2) {
  left: calc(50% + 376px);
  top: 328px;
  width: 452px;
}
@media not all and (min-width: 768px) {
  .p-home-dialogue__bg > div:nth-child(2) {
    display: none;
  }
}
.p-home-dialogue__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-dialogue__bg > div:nth-child(2) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-dialogue__bg > div:nth-child(3) {
  left: calc(50% - 730px);
  top: 790px;
  width: 260px;
}
@media not all and (min-width: 768px) {
  .p-home-dialogue__bg > div:nth-child(3) {
    display: none;
  }
}
.p-home-dialogue__bg > div:nth-child(3) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-dialogue__bg > div:nth-child(3) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-home-dialogue__bg > div:nth-child(4) {
  left: calc(50% + 606px);
  top: 950px;
  width: 107px;
}
@media not all and (min-width: 768px) {
  .p-home-dialogue__bg > div:nth-child(4) {
    left: 86.6666666667vw;
    top: 181.8666666667vw;
    width: 13.2vw;
  }
}
.p-home-dialogue__bg > div:nth-child(5) {
  left: calc(50% - 680px);
  top: 1768px;
  width: 156px;
}
@media not all and (min-width: 768px) {
  .p-home-dialogue__bg > div:nth-child(5) {
    left: 0vw;
    top: 381.3333333333vw;
    width: 12vw;
  }
}
.p-home-dialogue__bg > div:nth-child(5) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-product {
  background-color: #E6F4FF;
}
.p-home-product__action {
  color: #FF6767;
}
.p-home-product__action > span {
  border-color: #FF6767;
}
.p-home-product__ttl {
  color: #FF6767;
}
.p-home-product__bg > div:nth-child(1) {
  left: calc(50% + 441px);
  top: -502px;
  width: 524px;
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(1) {
    left: 78.6666666667vw;
    top: -18.4vw;
    width: 28.8vw;
  }
}
.p-home-product__bg > div:nth-child(1) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-product__bg > div:nth-child(1) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-product__bg > div:nth-child(2) {
  left: calc(50% - 611px);
  top: 190px;
  width: 80px;
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(2) {
    display: none;
  }
}
.p-home-product__bg > div:nth-child(3) {
  left: calc(50% + 462px);
  top: 366px;
  width: 453px;
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(3) {
    left: -3.4666666667vw;
    top: 299.4666666667vw;
    width: 28.2666666667vw;
  }
}
.p-home-product__bg > div:nth-child(3) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-home-product__bg > div:nth-child(3) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-home-product__bg > div:nth-child(4) {
  left: calc(50% - 824px);
  top: 732px;
  width: 452px;
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(4) {
    display: none;
  }
}
.p-home-product__bg > div:nth-child(4) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-product__bg > div:nth-child(4) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-home-product__bg > div:nth-child(5) {
  left: calc(50% + 530px);
  top: 1078px;
  width: 153px;
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(5) {
    display: none;
  }
}
.p-home-product__bg > div:nth-child(5) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
@media all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(6) {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(6) {
    left: -14.9333333333vw;
    top: 6.9333333333vw;
    width: 37.6vw;
  }
}
.p-home-product__bg > div:nth-child(6) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
@media all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(7) {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .p-home-product__bg > div:nth-child(7) {
    left: 75.4666666667vw;
    top: 49.0666666667vw;
    width: 24.2666666667vw;
  }
}
.p-home-talk {
  padding-top: 120px;
  padding-bottom: 115px;
  background-color: #FFB2B0;
}
@media not all and (min-width: 768px) {
  .p-home-talk {
    padding-top: 10.6666666667vw;
    padding-bottom: 8vw;
  }
}
.p-home-talk__action {
  color: #5A8FDB;
}
.p-home-talk__action > span {
  border-color: #5A8FDB;
}
.p-home-talk__ttl {
  color: #5A8FDB;
}
.p-home-talk__box {
  position: relative;
  max-width: 1190px;
  padding: 98px 25px 80px;
  margin: -35px auto 0;
  background-color: #FFE8E7;
  box-sizing: border-box;
  border-radius: 6px;
}
@media not all and (min-width: 768px) {
  .p-home-talk__box {
    width: 84vw;
    padding: 22.9333333333vw 2.6666666667vw 15.4666666667vw;
    margin: -5.8666666667vw auto 0;
  }
}
.p-home-talk__catch {
  text-align: center;
  color: #5A8FDB;
  font-size: 21px;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-home-talk__catch {
    font-size: 4.2666666667vw;
  }
}
.p-home-talk__catch > span {
  position: relative;
  display: inline-block;
}
.p-home-talk__catch > span:before, .p-home-talk__catch > span:after {
  position: absolute;
  top: -16px;
  width: 1px;
  height: 60px;
  background-color: #5A8FDB;
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-talk__catch > span:before, .p-home-talk__catch > span:after {
    top: -2.1333333333vw;
    height: 9.0666666667vw;
  }
}
.p-home-talk__catch > span:before {
  left: -52px;
  transform: rotate(-40deg);
}
@media not all and (min-width: 768px) {
  .p-home-talk__catch > span:before {
    left: -8vw;
  }
}
.p-home-talk__catch > span:after {
  right: -52px;
  transform: rotate(40deg);
}
@media not all and (min-width: 768px) {
  .p-home-talk__catch > span:after {
    right: -8vw;
  }
}
.p-home-talk__post {
  width: 200px;
  margin: 48px auto 0;
}
@media not all and (min-width: 768px) {
  .p-home-talk__post {
    width: 48vw;
    margin: 13.8666666667vw auto 0;
  }
}
.p-home-talk__post > img {
  width: 100%;
}
.p-home-talk__more {
  position: relative;
  z-index: 1;
  margin-top: 48px;
  text-align: center;
  font-size: 21px;
  font-weight: 500;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-home-talk__more {
    margin-top: 16vw;
    font-size: 4.2666666667vw;
  }
}
.p-home-talk__more > a {
  position: relative;
  display: inline-block;
  padding-right: 54px;
}
@media not all and (min-width: 768px) {
  .p-home-talk__more > a {
    padding-right: 13.8666666667vw;
  }
}
.p-home-talk__more > a:after {
  position: absolute;
  right: -20px;
  top: 50%;
  width: 45px;
  height: 27px;
  background: url(../images/home/ico_more.svg) no-repeat;
  transform: translateY(-50%);
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-talk__more > a:after {
    right: -2.1333333333vw;
    width: 9.0666666667vw;
    height: 5.6vw;
    background-size: 100% auto;
  }
}
.p-home-talk__overlay {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.p-home-talk__overlay > div {
  position: absolute;
}
.p-home-talk__overlay > div img,
.p-home-talk__overlay > div svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-home-talk__overlay > div:nth-child(1) {
  left: calc(50% - 728px);
  top: -122px;
  width: 485px;
}
@media not all and (min-width: 768px) {
  .p-home-talk__overlay > div:nth-child(1) {
    left: 54.4vw;
    top: 62.9333333333vw;
    width: 35.4666666667vw;
  }
}
.p-home-talk__overlay > div:nth-child(2) {
  left: calc(50% + 460px);
  top: 72px;
  width: 218px;
}
@media not all and (min-width: 768px) {
  .p-home-talk__overlay > div:nth-child(2) {
    display: none;
  }
}
.p-home-talk__overlay > div:nth-child(3) {
  left: calc(50% + 344px);
  top: 315px;
  width: 218px;
}
@media not all and (min-width: 768px) {
  .p-home-talk__overlay > div:nth-child(3) {
    display: none;
  }
}
.p-home-choose {
  padding-top: 120px;
  padding-bottom: 120px;
  background-color: #B8DCFF;
}
@media not all and (min-width: 768px) {
  .p-home-choose {
    padding-top: 10.6666666667vw;
    padding-bottom: 8vw;
  }
}
.p-home-choose__action {
  color: #FF6767;
}
.p-home-choose__action > span {
  border-color: #FF6767;
}
.p-home-choose__ttl {
  color: #FF6767;
}
.p-home-choose__bg > div:nth-child(1) {
  left: calc(50% - 780px);
  top: 192px;
  width: 286px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__bg > div:nth-child(1) {
    left: -7.4666666667vw;
    top: 133.3333333333vw;
    width: 53.3333333333vw;
  }
}
.p-home-choose__bg > div:nth-child(1) svg [data-name=group01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-home-choose__bg > div:nth-child(2) {
  left: calc(50% + 460px);
  top: 133px;
  width: 185px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__bg > div:nth-child(2) {
    display: none;
  }
}
.p-home-choose__bg > div:nth-child(3) {
  left: calc(50% + 601px);
  top: 1012px;
  width: 72px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__bg > div:nth-child(3) {
    display: none;
  }
}
.p-home-choose__box {
  position: relative;
  width: calc(50% + 595px);
  padding: 83px 0 64px;
  margin: -35px 0 0 calc(50% - 595px);
  background-color: #ffffff;
  border-radius: 6px 0 0 6px;
}
@media only screen and (max-width: 980px) {
  .p-home-choose__box {
    width: 100%;
    margin: -35px 0 0 0;
    border-radius: 0;
  }
}
@media not all and (min-width: 768px) {
  .p-home-choose__box {
    width: 92vw;
    padding: 17.6vw 0 14.9333333333vw;
    margin: -5.3333333333vw 0 0 8vw;
  }
}
.p-home-choose__in {
  max-width: 880px;
  padding-left: 150px;
}
@media only screen and (max-width: 980px) {
  .p-home-choose__in {
    padding-left: 24px;
    padding-right: 24px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media not all and (min-width: 768px) {
  .p-home-choose__in {
    padding-left: 8vw;
    padding-right: 16vw;
  }
}
.p-home-choose__logo {
  width: 200px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-choose__logo {
    width: 48vw;
  }
}
.p-home-choose__logo > img {
  display: block;
  width: 100%;
}
.p-home-choose__catch {
  margin-top: 30px;
  text-align: center;
}
@media not all and (min-width: 768px) {
  .p-home-choose__catch {
    margin-top: 7.4666666667vw;
  }
}
.p-home-choose__slider {
  margin-top: 32px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider {
    margin-top: 12.8vw;
  }
}
.p-home-choose__slider__prevnext {
  display: flex;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__prevnext {
    display: none;
  }
}
.p-home-choose__slider__prev, .p-home-choose__slider__next {
  width: 41px;
  height: 41px;
  padding: 0;
  margin: 0;
  border: 0;
  outline: 0 !important;
  cursor: pointer;
}
.p-home-choose__slider__prev.is-disabled, .p-home-choose__slider__next.is-disabled {
  pointer-events: none;
  cursor: default;
}
.p-home-choose__slider__prev {
  background: transparent url(../images/home/slider_prev.svg) no-repeat;
}
.p-home-choose__slider__prev.is-disabled {
  background-image: url(../images/home/slider_prev_off.svg);
}
.p-home-choose__slider__next {
  margin-left: 8px;
  background: transparent url(../images/home/slider_next.svg) no-repeat;
}
.p-home-choose__slider__next.is-disabled {
  background-image: url(../images/home/slider_next_off.svg);
}
.p-home-choose__slider__container {
  position: relative;
  width: auto;
  margin: 24px 0 0 0;
  overflow-x: scroll;
  -ms-overflow-style: none;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__container {
    margin: 0;
  }
}
.p-home-choose__slider__container::-webkit-scrollbar {
  display: none;
}
.p-home-choose__slider__slide {
  display: flex;
  padding: 0 0 0 150px;
}
@media only screen and (max-width: 980px) {
  .p-home-choose__slider__slide {
    padding-left: 24px;
  }
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__slide {
    padding: 0 0 0 8vw;
  }
}
.p-home-choose__slider__nav {
  display: flex;
  justify-content: flex-end;
  margin: 60px 0 0 0;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__nav {
    margin: 5.3333333333vw 0 0 0;
  }
}
.p-home-choose__slider__nav > span {
  display: block;
  width: 8px;
  height: 8px;
  background-color: #dddddd;
  border-radius: 4px;
  cursor: pointer;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__nav > span {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
    border-radius: 0.6666666667vw;
  }
}
.p-home-choose__slider__nav > span:not(:first-child) {
  margin-left: 6px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__nav > span:not(:first-child) {
    margin-left: 1.6vw;
  }
}
.p-home-choose__slider__nav > span.is-active {
  background-color: #FF6767;
}
@media not all and (min-width: 768px) {
  .p-home-choose__slider__nav > span.is-active {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    border-radius: 0.9333333333vw;
  }
}
.p-home-choose__item {
  width: 220px;
  padding-right: 44px;
  flex: 0 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item {
    width: 58.6666666667vw;
    padding-right: 6.9333333333vw;
  }
}
.p-home-choose__item__thumb {
  display: block;
}
.p-home-choose__item__thumb > img {
  display: block;
  width: 100%;
}
.p-home-choose__item__info {
  margin-top: 20px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item__info {
    margin-top: 4.2666666667vw;
  }
}
.p-home-choose__item__name {
  font-size: 12px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item__name {
    font-size: 3.2vw;
    line-height: 1.8333333333;
  }
}
.p-home-choose__item__price {
  font-size: 11px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item__price {
    font-size: 2.9333333333vw;
  }
}
.p-home-choose__item__price > em {
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item__price > em {
    font-size: 4vw;
  }
}
.p-home-choose__item__price > small {
  font-size: 11px;
}
@media not all and (min-width: 768px) {
  .p-home-choose__item__price > small {
    font-size: 2.9333333333vw;
  }
}
.p-home-choose__item__price > small > em {
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
}
.p-home-choose__more {
  margin-top: 32px;
  text-align: right;
}
@media not all and (min-width: 768px) {
  .p-home-choose__more {
    margin-top: 14.9333333333vw;
    text-align: center;
  }
}
.p-home-choose__more a {
  position: relative;
  display: inline-block;
  padding-right: 68px;
  font-size: 21px;
  font-weight: 500;
}
@media not all and (min-width: 768px) {
  .p-home-choose__more a {
    padding-right: 0;
    font-size: 4.2666666667vw;
  }
}
.p-home-choose__more a:after {
  position: absolute;
  right: 0;
  top: 50%;
  width: 45px;
  height: 27px;
  background: url(../images/home/ico_more.svg) no-repeat;
  transform: translateY(-50%);
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-choose__more a:after {
    right: -12.8vw;
    width: 9.0666666667vw;
    height: 5.6vw;
    background-size: 100% auto;
  }
}
.p-home-side {
  position: fixed;
  right: 62px;
  top: 0;
  z-index: 9996;
  display: flex;
  align-items: center;
  width: 36px;
  height: 100%;
}
@media only screen and (max-width: 1100px) {
  .p-home-side {
    display: none;
  }
}
.p-home-side ul > li:not(:first-child) {
  margin-top: 40px;
}
.p-home-side ul > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 108px;
  border: 2px solid #231815;
  border-radius: 18px;
  background-color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}
.p-home-side ul > li > a > span {
  display: inline-block;
  text-align: center;
  line-height: 1.3;
}
.p-home-popup {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 36px;
  box-sizing: border-box;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s;
}
@media not all and (min-width: 768px) {
  .p-home-popup {
    display: block;
    padding: 0;
  }
}
body.is-popup-visible .p-home-popup {
  opacity: 1;
  pointer-events: auto;
  transition: none;
}
.p-home-popup__bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 232, 231, 0.8);
}
.p-home-popup__in {
  position: relative;
  max-width: 696px;
}
@media not all and (min-width: 768px) {
  .p-home-popup__in {
    max-width: 100%;
    width: 100%;
    padding: 8vw;
    box-sizing: border-box;
  }
}
.p-home-popup__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 696px;
  min-height: 696px;
  border-radius: 50%;
  background-color: #ffffff;
}
@media not all and (min-width: 768px) {
  .p-home-popup__box {
    min-width: 0;
    min-height: 0;
    width: 100%;
    height: auto;
    padding: 14.9333333333vw 0;
    border-radius: 3.2vw;
  }
}
.p-home-popup__logo {
  width: 200px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-home-popup__logo {
    width: 48vw;
  }
}
.p-home-popup__catch {
  margin-top: 44px;
  text-align: center;
  color: #FF6767;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5909090909;
}
@media not all and (min-width: 768px) {
  .p-home-popup__catch {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
}
.p-home-popup__text {
  max-width: 77.5862068966%;
  margin: 24px auto 0;
}
@media not all and (min-width: 768px) {
  .p-home-popup__text {
    max-width: 72vw;
    margin: 5.8666666667vw auto 0;
  }
}
.p-home-popup__text > p {
  text-align: center;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.6923076923;
}
@media not all and (min-width: 768px) {
  .p-home-popup__text > p {
    font-size: 3.2vw;
    line-height: 1.6666666667;
  }
}
.p-home-popup__text > p:not(:first-child) {
  margin-top: 1.6923076923em;
}
@media not all and (min-width: 768px) {
  .p-home-popup__text > p:not(:first-child) {
    margin-top: 1.6666666667em;
  }
}
.p-home-popup__close {
  margin-top: 42px;
  text-align: center;
}
@media not all and (min-width: 768px) {
  .p-home-popup__close {
    margin-top: 10.6666666667vw;
  }
}
.p-home-popup__close > button {
  position: relative;
  display: inline-block;
  padding: 0 60px 0 0;
  margin: 0;
  border: 0;
  background: transparent;
  color: #FF6767;
  font-size: 21px;
  font-weight: 500;
  transition: opacity 0.2s;
  cursor: pointer;
}
@media not all and (min-width: 768px) {
  .p-home-popup__close > button {
    padding: 0 10.6666666667vw 0 0;
    font-size: 4.8vw;
  }
}
.p-home-popup__close > button:hover {
  opacity: 0.75;
}
.p-home-popup__close > button:after {
  position: absolute;
  right: 0;
  top: 50%;
  width: 45px;
  height: 27px;
  background: url(../images/home/popup_arw.svg) no-repeat;
  transform: translateY(-50%);
  content: "";
}
@media not all and (min-width: 768px) {
  .p-home-popup__close > button:after {
    width: 9.3333333333vw;
    height: 5.6vw;
    background-size: 100% auto;
  }
}

.p-concept {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-concept-head {
  position: relative;
  padding-top: 120px;
  padding-bottom: 180px;
}
@media not all and (min-width: 768px) {
  .p-concept-head {
    padding-top: 42.6666666667vw;
    padding-bottom: 42.6666666667vw;
  }
}
.p-concept-head__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.p-concept-head__bg > div {
  position: absolute;
}
.p-concept-head__bg > div svg,
.p-concept-head__bg > div img {
  display: block;
  width: 100%;
  height: auto;
}
.p-concept-head__bg > div svg {
  overflow: visible;
}
.p-concept-head__bg > div:nth-child(1) {
  left: calc(50% - 543px);
  top: 146px;
  width: 203px;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(1) {
    left: -4.2666666667vw;
    top: 118.1333333333vw;
    width: 26.1333333333vw;
  }
}
.p-concept-head__bg > div:nth-child(1) svg [data-name=circle01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-head__bg > div:nth-child(1) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-head__bg > div:nth-child(2) {
  left: calc(50% + 305px);
  top: 124px;
  width: 155px;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(2) {
    left: 83.0666666667vw;
    top: 93.8666666667vw;
    width: 21.7333333333vw;
  }
}
.p-concept-head__bg > div:nth-child(2) svg [data-name=circle01] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-head__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-head__bg > div:nth-child(3) {
  left: calc(50% + 250px);
  top: 378px;
  width: 403px;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(3) {
    left: 62.2666666667vw;
    top: 156.5333333333vw;
    width: 62.4vw;
  }
}
.p-concept-head__bg > div:nth-child(3) svg [data-name=circle02] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-head__bg > div:nth-child(3) svg [data-name=line01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-head__bg > div:nth-child(4) {
  display: none;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(4) {
    display: block;
    left: 56vw;
    top: -3.7333333333vw;
    width: 25.3333333333vw;
  }
}
.p-concept-head__bg > div:nth-child(4) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-head__bg > div:nth-child(4) svg [data-name=line01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-head__bg > div:nth-child(5) {
  display: none;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(5) {
    display: block;
    left: 6.8vw;
    top: 30.4vw;
    width: 5.3333333333vw;
  }
}
.p-concept-head__bg > div:nth-child(6) {
  display: none;
}
@media not all and (min-width: 768px) {
  .p-concept-head__bg > div:nth-child(6) {
    display: block;
    left: 22.8vw;
    top: 176.5333333333vw;
    width: 10vw;
  }
}
.p-concept-head__in {
  position: relative;
}
.p-concept-head__ttl {
  width: 226px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-concept-head__ttl {
    width: 60.2666666667vw;
  }
}
.p-concept-head__catch {
  margin-top: 54px;
  text-align: center;
  color: #FF6767;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3214285714;
}
@media not all and (min-width: 768px) {
  .p-concept-head__catch {
    margin-top: 5.6vw;
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
}
.p-concept-head__lead {
  margin-top: 64px;
  text-align: center;
  font-size: 14px;
  line-height: 1.7857142857;
}
@media not all and (min-width: 768px) {
  .p-concept-head__lead {
    margin-top: 11.2vw;
    font-size: 3.2vw;
    line-height: 1.6666666667;
  }
}
.p-concept-head__notes__ttl {
  position: relative;
  margin-top: 40px;
  text-align: center;
  color: #FF6767;
  font-size: 18px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-concept-head__notes__ttl {
    margin-top: 8vw;
    font-size: 4.2666666667vw;
  }
}
.p-concept-head__notes__txt {
  margin-top: 1.7857142857em;
  text-align: center;
  font-size: 14px;
  line-height: 1.7857142857;
}
@media not all and (min-width: 768px) {
  .p-concept-head__notes__txt {
    margin-top: 1.6666666667em;
    font-size: 3.2vw;
    line-height: 1.6666666667;
  }
}
.p-concept-q {
  position: relative;
  padding-top: 148px;
  padding-bottom: 96px;
  background-color: #FFE8E7;
}
@media not all and (min-width: 768px) {
  .p-concept-q {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
}
.p-concept-q__en {
  position: absolute;
  left: 50%;
  top: -36px;
  width: 920px;
  transform: translateX(-50%);
}
@media only screen and (max-width: 980px) {
  .p-concept-q__en {
    top: -3.6734693878vw;
    width: 93.8775510204vw;
  }
}
@media not all and (min-width: 768px) {
  .p-concept-q__en {
    display: none;
  }
}
@media not all and (min-width: 768px) {
  .p-concept-q:before {
    position: absolute;
    left: 2.6666666667vw;
    top: 10.6666666667vw;
    width: 9.6vw;
    height: 128vw;
    background: url(/gokigen/assets/images/concept/q_ttl_sp.svg) no-repeat;
    background-size: 100% auto;
    content: "";
  }
}
.p-concept-q__lead {
  position: relative;
  text-align: center;
  color: #FF6767;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.8;
}
@media not all and (min-width: 768px) {
  .p-concept-q__lead {
    margin-left: 2vw;
    margin-right: 2vw;
    font-size: 3.4666666667vw;
    line-height: 2;
  }
}
.p-concept-q__container {
  position: relative;
  max-width: 682px;
  margin: 78px auto 0;
}
@media not all and (min-width: 768px) {
  .p-concept-q__container {
    width: 84vw;
    margin: 19.2vw auto 0;
  }
}
.p-concept-q-sect {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect {
    flex-direction: column;
  }
}
.p-concept-q-sect:not(:first-child) {
  margin-top: 40px;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect:not(:first-child) {
    margin-top: 21.3333333333vw;
  }
}
.p-concept-q-sect:nth-child(2n) {
  flex-direction: row-reverse;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect:nth-child(2n) {
    flex-direction: column;
  }
}
.p-concept-q-sect__info {
  width: calc(100% - 350px - 42px);
  box-sizing: border-box;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__info {
    width: 100%;
  }
}
.p-concept-q-sect:nth-child(1) .p-concept-q-sect__info {
  padding-left: 42px;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect:nth-child(1) .p-concept-q-sect__info {
    padding-left: 0;
  }
}
.p-concept-q-sect__graph {
  width: 350px;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__graph {
    width: 53.3333333333vw;
    margin-top: 8vw;
  }
}
.p-concept-q-sect__graph > img,
.p-concept-q-sect__graph > svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-concept-q-sect__ttl {
  color: #FF6767;
  font-size: 20px;
  font-weight: 700;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__ttl {
    text-align: center;
  }
}
.p-concept-q-sect__ttl > span:nth-child(1) {
  display: inline-block;
  border-top: 2px solid #FF6767;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__ttl > span:nth-child(1) {
    font-size: 5.3333333333vw;
  }
}
.p-concept-q-sect__ttl > span:nth-child(2) {
  display: block;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__ttl > span:nth-child(2) {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
}
.p-concept-q-sect__ttl--long > span:nth-child(2) {
  font-size: 18px;
  line-height: 1.3333333333;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__ttl--long > span:nth-child(2) {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
}
.p-concept-q-sect__txt {
  margin-top: 32px;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__txt {
    display: none;
  }
}
.p-concept-q-sect__txt > p {
  font-size: 14px;
  line-height: 1.7857142857;
}
.p-concept-q-sect__txt > p:not(:first-child) {
  margin-top: 1.7857142857em;
}
.p-concept-q-sect__txt--sp {
  display: none;
}
@media not all and (min-width: 768px) {
  .p-concept-q-sect__txt--sp {
    display: block;
    margin-top: 10.6666666667vw;
  }
}
.p-concept-q-sect__txt--sp > p {
  font-size: 3.4666666667vw;
  line-height: 2.0769230769;
}
.p-concept-future {
  position: relative;
  padding-top: 140px;
  padding-bottom: 95px;
  background-color: #FFFEDE;
}
@media not all and (min-width: 768px) {
  .p-concept-future {
    padding-top: 24vw;
    padding-bottom: 27.2vw;
  }
}
.p-concept-future__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.p-concept-future__bg > div {
  position: absolute;
}
.p-concept-future__bg > div img,
.p-concept-future__bg > div svg {
  display: block;
  width: 100%;
}
.p-concept-future__bg > div svg {
  overflow: visible;
}
.p-concept-future__bg > div:nth-child(1) {
  left: calc(50% - 640px);
  top: 112px;
  width: 126px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(1) {
    display: none;
  }
}
.p-concept-future__bg > div:nth-child(2) {
  left: calc(50% + 402px);
  top: 116px;
  width: 243px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(2) {
    left: 80.8vw;
    top: 5.3333333333vw;
    width: 28.8vw;
  }
}
.p-concept-future__bg > div:nth-child(2) svg [data-name=circle01] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-future__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-future__bg > div:nth-child(3) {
  left: calc(50% - 700px);
  top: 790px;
  width: 184px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(3) {
    left: -7.7333333333vw;
    top: 292vw;
    width: 22.9333333333vw;
  }
}
.p-concept-future__bg > div:nth-child(3) svg [data-name=circle01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-future__bg > div:nth-child(3) svg [data-name=circle02] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-future__bg > div:nth-child(4) {
  left: calc(50% - 1034px);
  top: 1400px;
  width: 666px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(4) {
    display: none;
  }
}
.p-concept-future__bg > div:nth-child(4) svg [data-name=circle01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-future__bg > div:nth-child(4) svg [data-name=circle02] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-future__bg > div:nth-child(5) {
  left: calc(50% + 552px);
  top: 1650px;
  width: 47px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(5) {
    display: none;
  }
}
.p-concept-future__bg > div:nth-child(6) {
  left: calc(50% + 496px);
  top: 2116px;
  width: 157px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__bg > div:nth-child(6) {
    left: -3.7333333333vw;
    top: auto;
    bottom: 2.1333333333vw;
    width: 16.8vw;
  }
}
.p-concept-future__bg > div:nth-child(6) svg [data-name=circle01] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-future__bg > div:nth-child(6) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-future__box {
  position: relative;
  max-width: 866px;
  margin-left: auto;
  margin-right: auto;
  background-color: #ffffff;
}
.p-concept-future__box__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.p-concept-future__box__bg > div {
  position: absolute;
}
.p-concept-future__box__bg > div img,
.p-concept-future__box__bg > div svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-concept-future__box__bg > div svg {
  overflow: visible;
}
.p-concept-future__box__bg > div:nth-child(1) {
  right: 126px;
  top: 134px;
  width: 36px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__box__bg > div:nth-child(1) {
    display: none;
  }
}
.p-concept-future__box__bg > div:nth-child(2) {
  right: 44px;
  top: 528px;
  width: 156px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__box__bg > div:nth-child(2) {
    right: 5.8666666667vw;
    top: 123.7333333333vw;
    width: 22.9333333333vw;
  }
}
.p-concept-future__box__bg > div:nth-child(2) svg [data-name=circle01] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-future__box__bg > div:nth-child(2) svg [data-name=circle02] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-future__box__bg > div:nth-child(3) {
  left: 15px;
  top: 780px;
  width: 203px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__box__bg > div:nth-child(3) {
    display: none;
  }
}
.p-concept-future__box__bg > div:nth-child(3) svg [data-name=line01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-future__box__bg > div:nth-child(3) svg [data-name=circle01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-future__box__bg > div:nth-child(4) {
  left: -65px;
  top: 1144px;
  width: 80px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__box__bg > div:nth-child(4) {
    display: none;
  }
}
.p-concept-future__box__in {
  position: relative;
  padding: 116px 13.856812933% 90px 18.4757505774%;
}
@media not all and (min-width: 768px) {
  .p-concept-future__box__in {
    padding: 26.1333333333vw 5.8666666667vw 12.2666666667vw 5.8666666667vw;
  }
}
.p-concept-future__ttl {
  position: absolute;
  left: -26px;
  top: -24px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__ttl {
    left: -4.2666666667vw;
    top: -3.2vw;
  }
}
.p-concept-future__ttl > span {
  display: inline-block;
  background-color: #FF6767;
  color: #ffffff;
  font-size: 25px;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media not all and (min-width: 768px) {
  .p-concept-future__ttl > span {
    font-size: 4vw;
  }
}
.p-concept-future__ttl > span:nth-of-type(1) {
  padding: 12px 40px 12px 24px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__ttl > span:nth-of-type(1) {
    padding: 3.2vw 7.4666666667vw 3.2vw 4.2666666667vw;
  }
}
.p-concept-future__ttl > span:nth-of-type(2) {
  padding: 0 40px 12px 24px;
}
@media not all and (min-width: 768px) {
  .p-concept-future__ttl > span:nth-of-type(2) {
    padding: 0 7.4666666667vw 3.2vw 4.2666666667vw;
  }
}
.p-concept-future-sect {
  position: relative;
}
.p-concept-future-sect:not(:first-child) {
  margin-top: 120px;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect:not(:first-child) {
    margin-top: 40vw;
  }
}
.p-concept-future-sect__in {
  display: flex;
  justify-content: space-between;
}
.p-concept-future-sect:nth-child(2n) .p-concept-future-sect__in {
  flex-direction: row-reverse;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__main {
    width: 55.7333333333vw;
  }
}
.p-concept-future-sect:nth-child(1) .p-concept-future-sect__main {
  padding-top: 60px;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect:nth-child(1) .p-concept-future-sect__main {
    padding-top: 7.4666666667vw;
  }
}
.p-concept-future-sect:nth-child(2) .p-concept-future-sect__main {
  padding-top: 80px;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect:nth-child(2) .p-concept-future-sect__main {
    padding-top: 7.4666666667vw;
  }
}
.p-concept-future-sect__ttl {
  font-size: 40px;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__ttl {
    font-size: 5.3333333333vw;
  }
}
.p-concept-future-sect:nth-child(1) .p-concept-future-sect__ttl {
  color: #33D19D;
}
.p-concept-future-sect:nth-child(2) .p-concept-future-sect__ttl {
  color: #5A8FDB;
}
.p-concept-future-sect__txt {
  margin-top: 16px;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__txt {
    margin-top: 3.4666666667vw;
    padding-left: 1.6vw;
  }
}
.p-concept-future-sect__txt > p {
  font-size: 16px;
  line-height: 2.625;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__txt > p {
    font-size: 3.4666666667vw;
    line-height: 2.0769230769;
  }
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__catch {
    width: 10.1333333333vw;
  }
}
.p-concept-future-sect__catch > p {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.7272727273;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
  white-space: nowrap;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect__catch > p {
    font-size: 3.7333333333vw;
    line-height: 1.8461538462;
  }
}
.p-concept-future-sect:nth-child(1) .p-concept-future-sect__catch {
  padding: 0 58px;
  color: #33D19D;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect:nth-child(1) .p-concept-future-sect__catch {
    padding: 0 0 0 6.4vw;
  }
}
.p-concept-future-sect:nth-child(2) .p-concept-future-sect__catch {
  padding: 0 80px 0 0;
  color: #5A8FDB;
}
@media not all and (min-width: 768px) {
  .p-concept-future-sect:nth-child(2) .p-concept-future-sect__catch {
    padding: 0 4.2666666667vw 0 0;
  }
}
.p-concept-future-sect__overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.p-concept-future__catch {
  margin-top: 90px;
  text-align: center;
  color: #FF6767;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.8181818182;
}
@media not all and (min-width: 768px) {
  .p-concept-future__catch {
    margin-top: 18.6666666667vw;
    font-size: 4vw;
    line-height: 1.6;
  }
}
.p-concept-goal {
  position: relative;
  margin-top: 100px;
}
@media not all and (min-width: 768px) {
  .p-concept-goal {
    margin-top: 14.9333333333vw;
  }
}
.p-concept-goal__ttl {
  display: flex;
  justify-content: flex-end;
  font-size: 25px;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__ttl {
    font-size: 4vw;
    line-height: 1.6;
  }
}
.p-concept-goal__ttl > span {
  display: block;
  padding: 12px 24px;
  background-color: #FF6767;
  color: #ffffff;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__ttl > span {
    padding: 3.2vw 5.8666666667vw;
  }
}
.p-concept-goal__txt01, .p-concept-goal__txt02 {
  padding-left: 13.4090909091%;
  padding-right: 13.4090909091%;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__txt01, .p-concept-goal__txt02 {
    padding-left: 0;
    padding-right: 0;
  }
}
.p-concept-goal__txt01 > p, .p-concept-goal__txt02 > p {
  text-align: center;
  font-size: 15px;
  line-height: 1.8;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__txt01 > p, .p-concept-goal__txt02 > p {
    text-align: left;
    font-size: 3.4666666667vw;
    line-height: 2.0769230769;
  }
}
.p-concept-goal__txt01 {
  margin-top: 54px;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__txt01 {
    margin-top: 6.4vw;
  }
}
.p-concept-goal__figure {
  display: block;
  margin-top: 72px;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__figure {
    margin-top: 16vw;
  }
}
.p-concept-goal__txt02 {
  margin-top: 80px;
}
@media not all and (min-width: 768px) {
  .p-concept-goal__txt02 {
    margin-top: 16vw;
  }
}
.p-concept-staff {
  position: relative;
  background-color: #F8F8F8;
}
.p-concept-staff__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-concept-staff__bg > div {
  position: absolute;
}
.p-concept-staff__bg > div img,
.p-concept-staff__bg > div svg {
  display: block;
  width: 100%;
}
.p-concept-staff__bg > div svg {
  overflow: visible;
}
.p-concept-staff__bg > div:nth-child(1) {
  left: calc(50% + 512px);
  top: 158px;
  width: 350px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__bg > div:nth-child(1) {
    left: 79.2vw;
    top: 2.4vw;
    width: 15.7333333333vw;
  }
}
.p-concept-staff__bg > div:nth-child(2) {
  left: calc(50% - 658px);
  top: 300px;
  width: 145px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__bg > div:nth-child(2) {
    left: 85.3333333333vw;
    top: 179.4666666667vw;
    width: 12vw;
  }
}
.p-concept-staff__bg > div:nth-child(2) svg [data-name=circle01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-staff__bg > div:nth-child(2) svg [data-name=circle02] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-staff__bg > div:nth-child(3) {
  left: calc(50% + 315px);
  top: 694px;
  width: 350px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__bg > div:nth-child(3) {
    left: 77.8666666667vw;
    top: 244.5333333333vw;
    width: 22.1333333333vw;
  }
}
.p-concept-staff__bg > div:nth-child(3) svg [data-name=line01] {
  -webkit-animation: kf-rotate 10s linear infinite;
          animation: kf-rotate 10s linear infinite;
  transform-origin: 40% 60%;
}
.p-concept-staff__bg > div:nth-child(3) svg [data-name=circle01] {
  -webkit-animation: kf-rotate 16s linear infinite;
          animation: kf-rotate 16s linear infinite;
  transform-origin: 45% 40%;
}
.p-concept-staff__bg > div:nth-child(4) {
  left: calc(50% - 700px);
  top: 1312px;
  width: 131px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__bg > div:nth-child(4) {
    left: -4.2666666667vw;
    top: auto;
    bottom: -4.5333333333vw;
    width: 21.8666666667vw;
  }
}
.p-concept-staff__bg > div:nth-child(4) svg [data-name=line01] {
  animation: kf-rotate 10s linear infinite reverse;
  transform-origin: 40% 60%;
}
.p-concept-staff__bg > div:nth-child(4) svg [data-name=circle01] {
  animation: kf-rotate 16s linear infinite reverse;
  transform-origin: 45% 40%;
}
.p-concept-staff__in {
  position: relative;
  padding-top: 160px;
  padding-bottom: 116px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__in {
    padding-top: 26.6666666667vw;
    padding-bottom: 32vw;
  }
}
.p-concept-staff__ttl {
  position: absolute;
  left: 50%;
  top: -36px;
  width: 350px;
  transform: translateX(-50%);
}
@media not all and (min-width: 768px) {
  .p-concept-staff__ttl {
    top: -5.3333333333vw;
    width: 53.3333333333vw;
  }
}
.p-concept-staff__pic {
  display: block;
  border-radius: 6px;
  overflow: hidden;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__pic {
    border-radius: 1.0666666667vw;
  }
}
.p-concept-staff__pic > img {
  display: block;
}
.p-concept-staff__list {
  margin-top: 60px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__list {
    margin-top: 12.8vw;
  }
}
.p-concept-staff__row {
  display: flex;
  justify-content: space-between;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__row {
    flex-direction: column;
    align-items: center;
  }
}
.p-concept-staff__row:not(:first-child) {
  margin-top: 72px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__row:not(:first-child) {
    margin-top: 10.6666666667vw;
  }
}
.p-concept-staff__row--2 {
  justify-content: flex-start;
}
.p-concept-staff__row--1 .p-concept-staff-item, .p-concept-staff__row--2 .p-concept-staff-item, .p-concept-staff__row--3 .p-concept-staff-item {
  width: 230px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__row--1 .p-concept-staff-item, .p-concept-staff__row--2 .p-concept-staff-item, .p-concept-staff__row--3 .p-concept-staff-item {
    width: 100%;
  }
}
.p-concept-staff__row--2 .p-concept-staff-item:not(:first-child) {
  margin-left: 95px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__row--2 .p-concept-staff-item:not(:first-child) {
    margin-left: 0;
  }
}
.p-concept-staff__row--4 .p-concept-staff-item {
  width: 180px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff__row--4 .p-concept-staff-item {
    width: 100%;
  }
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item {
    display: flex;
    justify-content: space-between;
  }
  .p-concept-staff-item:not(:first-child) {
    margin-top: 10.6666666667vw;
  }
}
.p-concept-staff-item__pic {
  display: block;
  width: 110px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item__pic {
    width: 17.0666666667vw;
    margin: 0;
  }
}
.p-concept-staff-item__pic > img {
  display: block;
  width: 100%;
}
.p-concept-staff-item__info {
  margin-top: 18px;
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item__info {
    width: 61.3333333333vw;
    margin-top: 0;
  }
}
.p-concept-staff-item__name {
  text-align: center;
  font-size: 16px;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item__name {
    text-align: left;
    font-size: 3.7333333333vw;
  }
}
.p-concept-staff-item__prof {
  margin-top: 4px;
  text-align: center;
  color: #5A8FDB;
  font-size: 11px;
  line-height: 1.5;
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item__prof {
    margin-top: 0;
    text-align: left;
    font-size: 2.6666666667vw;
  }
}
.p-concept-staff-item__txt {
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.6428571429;
}
@media not all and (min-width: 768px) {
  .p-concept-staff-item__txt {
    margin-top: 1.6vw;
    font-size: 3.4666666667vw;
  }
}

.p-post {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-post-main {
  position: relative;
  padding: 70px 0;
  background-color: #FFE8E7;
}
@media not all and (min-width: 768px) {
  .p-post-main {
    padding: 30.1333333333vw 0;
  }
}
.p-post-main__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-post-main__bg > div {
  position: absolute;
}
.p-post-main__bg > div > img,
.p-post-main__bg > div > svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-post-main__bg > div:nth-child(1) {
  left: calc(50% - 646px);
  top: 122px;
  width: 317px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(1) {
    left: 20.8vw;
    top: 19.2vw;
    width: 39.4666666667vw;
  }
}
.p-post-main__bg > div:nth-child(2) {
  left: calc(50% + 544px);
  top: 176px;
  width: 241px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(2) {
    left: 65.6vw;
    top: 8vw;
    width: 58.1333333333vw;
  }
}
.p-post-main__bg > div:nth-child(3) {
  left: calc(50% + 334px);
  top: 348px;
  width: 182px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(3) {
    display: none;
  }
}
.p-post-main__bg > div:nth-child(4) {
  left: calc(50% - 774px);
  top: 449px;
  width: 241px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(4) {
    left: -14.1333333333vw;
    top: 130.6666666667vw;
    width: 32vw;
  }
}
.p-post-main__bg > div:nth-child(5) {
  left: calc(50% + 451px);
  top: 469px;
  width: 241px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(5) {
    left: 61.3333333333vw;
    top: 145.3333333333vw;
    width: 44.8vw;
  }
}
.p-post-main__bg > div:nth-child(6) {
  left: calc(50% - 445px);
  top: 578px;
  width: 125px;
}
@media not all and (min-width: 768px) {
  .p-post-main__bg > div:nth-child(6) {
    display: none;
  }
}
.p-post-main__box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 600px;
  height: 600px;
  margin: 0 auto;
  border-radius: 300px;
  box-sizing: border-box;
  background-color: #ffffff;
}
@media not all and (min-width: 768px) {
  .p-post-main__box {
    display: block;
    width: 84vw;
    height: auto;
    padding: 18.6666666667vw 5.3333333333vw;
    border-radius: 3.2vw;
    background-color: rgba(255, 255, 255, 0.9);
  }
}
.p-post-main__ttl {
  width: 280px;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  .p-post-main__ttl {
    width: 48vw;
  }
}
.p-post-main__txt {
  margin-top: 56px;
}
@media not all and (min-width: 768px) {
  .p-post-main__txt {
    margin-top: 10.6666666667vw;
  }
}
.p-post-main__txt > p {
  text-align: center;
  font-size: 15px;
  line-height: 1.8;
}
@media not all and (min-width: 768px) {
  .p-post-main__txt > p {
    font-size: 3.4666666667vw;
    line-height: 1.8076923077;
  }
}
.p-post-main__link {
  margin-top: 62px;
  text-align: center;
  font-size: 21px;
  font-weight: 500;
  line-height: 1;
}
@media not all and (min-width: 768px) {
  .p-post-main__link {
    margin-top: 15.4666666667vw;
    font-size: 4.8vw;
  }
}
.p-post-main__link > a {
  position: relative;
  display: inline-block;
  padding-right: 15px;
  color: #FF6767;
}
@media not all and (min-width: 768px) {
  .p-post-main__link > a {
    padding-right: 0;
  }
}
.p-post-main__link > a:after {
  position: absolute;
  right: -42px;
  top: 50%;
  width: 45px;
  height: 27px;
  background: url(../images/post/arw.svg) no-repeat;
  background-size: 100% auto;
  transform: translateY(-50%);
  content: "";
}
@media not all and (min-width: 768px) {
  .p-post-main__link > a:after {
    right: -10.6666666667vw;
    width: 9.3333333333vw;
    height: 5.6vw;
  }
}
/*# sourceMappingURL=style.css.map */