/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
#wrap {
  /* HTML5 display definitions
     ========================================================================== */
  /**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
  /**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
  /**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
  /**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
   */
  /* Links
     ========================================================================== */
  /**
   * Remove the gray background color from active links in IE 10.
   */
  /**
   * Improve readability of focused elements when they are also in an
   * active/hover state.
   */
  /* Text-level semantics
     ========================================================================== */
  /**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
  /**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
  /**
   * Address styling not present in Safari and Chrome.
   */
  /**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
  /* line 136, _normalize.scss */
  /**
   * Address styling not present in IE 8/9.
   */
  /* line 146, _normalize.scss */
  /**
   * Address inconsistent and variable font size in all browsers.
   */
  /* line 155, _normalize.scss */
  /**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
  /* line 163, _normalize.scss */
  /* line 171, _normalize.scss */
  /* line 175, _normalize.scss */
  /* Embedded content
     ========================================================================== */
  /**
   * Remove border when inside `a` element in IE 8/9/10.
   */
  /* line 186, _normalize.scss */
  /**
   * Correct overflow not hidden in IE 9/10/11.
   */
  /* line 194, _normalize.scss */
  /* Grouping content
     ========================================================================== */
  /**
   * Address margin not present in IE 8/9 and Safari.
   */
  /* line 205, _normalize.scss */
  /**
   * Address differences between Firefox and other browsers.
   */
  /* line 213, _normalize.scss */
  /**
   * Contain overflow in all browsers.
   */
  /* line 222, _normalize.scss */
  /**
   * Address odd `em`-unit font size rendering in all browsers.
   */
  /* line 230, _normalize.scss */
  /* Forms
     ========================================================================== */
  /**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
  /**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
  /* line 253, _normalize.scss */
  /**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
  /* line 267, _normalize.scss */
  /**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
  /* line 278, _normalize.scss */
  /**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
  /* line 291, _normalize.scss */
  /**
   * Re-set default cursor for disabled elements.
   */
  /* line 303, _normalize.scss */
  /**
   * Remove inner padding and border in Firefox 4+.
   */
  /* line 312, _normalize.scss */
  /**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
  /* line 323, _normalize.scss */
  /**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
  /* line 335, _normalize.scss */
  /**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
  /* line 347, _normalize.scss */
  /**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
   */
  /* line 357, _normalize.scss */
  /**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
  /* line 368, _normalize.scss */
  /**
   * Define consistent border, margin, and padding.
   */
  /* line 377, _normalize.scss */
  /**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
  /**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
  /* Tables
     ========================================================================== */
  /**
   * Remove most spacing between table cells.
   */
}
#wrap html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
#wrap body {
  margin: 0;
}
#wrap article,
#wrap aside,
#wrap details,
#wrap figcaption,
#wrap figure,
#wrap footer,
#wrap header,
#wrap hgroup,
#wrap main,
#wrap menu,
#wrap nav,
#wrap section,
#wrap summary {
  display: block;
}
#wrap audio,
#wrap canvas,
#wrap progress,
#wrap video {
  display: inline-block;
  vertical-align: baseline;
}
#wrap audio:not([controls]) {
  display: none;
  height: 0;
}
#wrap [hidden],
#wrap template {
  display: none;
}
#wrap a {
  background-color: transparent;
}
#wrap a:active,
#wrap a:hover {
  outline: 0;
}
#wrap abbr[title] {
  border-bottom: 1px dotted;
}
#wrap b,
#wrap strong {
  font-weight: bold;
}
#wrap dfn {
  font-style: italic;
}
#wrap h1 {
  font-size: 2em;
  margin: 0;
}
#wrap mark {
  background: #ff0;
  color: #000;
}
#wrap small {
  font-size: 80%;
}
#wrap sub,
#wrap sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
#wrap sup {
  top: -0.5em;
}
#wrap sub {
  bottom: -0.25em;
}
#wrap img {
  border: 0;
}
#wrap svg:not(:root) {
  overflow: hidden;
}
#wrap figure {
  margin: 1em 40px;
}
#wrap hr {
  box-sizing: content-box;
  height: 0;
}
#wrap pre {
  overflow: auto;
}
#wrap code,
#wrap kbd,
#wrap pre,
#wrap samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
#wrap button,
#wrap input,
#wrap optgroup,
#wrap select,
#wrap textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}
#wrap button {
  overflow: visible;
}
#wrap button,
#wrap select {
  text-transform: none;
}
#wrap button,
#wrap html input[type=button],
#wrap input[type=reset],
#wrap input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}
#wrap button[disabled],
#wrap html input[disabled] {
  cursor: default;
}
#wrap button::-moz-focus-inner,
#wrap input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
#wrap input {
  line-height: normal;
}
#wrap input[type=checkbox],
#wrap input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
#wrap input[type=number]::-webkit-inner-spin-button,
#wrap input[type=number]::-webkit-outer-spin-button {
  height: auto;
}
#wrap input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
}
#wrap input[type=search]::-webkit-search-cancel-button,
#wrap input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
#wrap fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
#wrap legend {
  border: 0;
  padding: 0;
}
#wrap textarea {
  overflow: auto;
}
#wrap table {
  border-collapse: collapse;
  border-spacing: 0;
}
#wrap td,
#wrap th {
  padding: 0;
}
#wrap * {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#wrap html {
  font-size: 62.5%;
}
#wrap h1, #wrap h2, #wrap h3, #wrap h4, #wrap h5, #wrap h6 {
  margin: 0;
  padding: 0;
  font-weight: 300;
}
#wrap p, #wrap ul, #wrap li, #wrap dl, #wrap dt, #wrap dd {
  margin: 0;
  padding: 0;
}
#wrap ul, #wrap ol {
  list-style: none;
}
#wrap img {
  vertical-align: top;
}
#wrap table {
  width: 100%;
}
#wrap table th {
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
#wrap input, #wrap button, #wrap textarea, #wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
}

@keyframes loopHashtag {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
body {
  margin: 0;
}
body.is-scroll-lock {
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  overscroll-behavior: none;
}

#wrap {
  font-size: 62.5%;
  min-width: 320px;
  background: #F8FCFC;
  color: #171A1C;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-break: break-all;
  padding-top: 160px;
}
@media screen and (max-width: 960px) {
  #wrap {
    padding-top: 0;
    font-size: 2.67vw;
  }
}
@media screen and (max-width: 374px) {
  #wrap {
    font-size: 62.5%;
  }
}
#wrap a {
  outline: none;
  text-decoration: none;
  color: #171A1C;
}
@media (hover: hover) {
  #wrap a {
    transition: opacity 0.2s ease-out;
  }
  #wrap a:hover {
    opacity: 0.6;
  }
}
#wrap img {
  width: 100%;
  height: auto;
  user-select: none;
}
#wrap ol {
  margin: 0;
  padding: 0;
}

#wrap .u-inner {
  position: relative;
  padding-left: 100px;
  padding-right: 100px;
  max-width: 1366px;
  margin: 0 auto;
}
@media screen and (max-width: 960px) {
  #wrap .u-inner {
    padding-left: 9.06%;
    padding-right: 9.06%;
  }
}
#wrap .u-inner--grow {
  max-width: 100%;
}
@media screen and (max-width: 960px) {
  #wrap .u-inner--pc {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
#wrap .u-inner--sp {
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 960px) {
  #wrap .u-inner--sp {
    padding-left: 9.06% !important;
    padding-right: 9.06% !important;
  }
}

#wrap .u-anchor-box {
  position: relative;
  overflow-x: hidden;
}
#wrap .u-anchor {
  position: absolute;
  top: 0;
}

#wrap .u-pc {
  display: block;
}
@media screen and (max-width: 960px) {
  #wrap .u-pc {
    display: none;
  }
}
#wrap .u-sp {
  display: none;
}
@media screen and (max-width: 960px) {
  #wrap .u-sp {
    display: block;
  }
}
#wrap br.u-pc {
  display: inline-block;
}
@media screen and (max-width: 960px) {
  #wrap br.u-pc {
    display: none;
  }
}
#wrap br.u-sp {
  display: none;
}
@media screen and (max-width: 960px) {
  #wrap br.u-sp {
    display: inline-block;
  }
}

#wrap .u-show[data-type=fadeUp], #wrap .u-show-stagger[data-type=fadeUp] {
  opacity: 0;
  transform: translateY(20px);
  will-change: transform;
}

#wrap .c-header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 30;
}
@media screen and (max-width: 960px) {
  #wrap .c-header {
    position: absolute;
  }
}
#wrap .c-header__inner {
  display: flex;
  justify-content: space-between;
}
#wrap .c-header__logo {
  width: 359px;
  margin-top: 85px;
  margin-left: 32px;
  transition: margin 0.4s, width 0.4s;
}
@media screen and (max-width: 1280px) {
  #wrap .c-header__logo {
    width: 223px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .c-header__logo {
    width: 72.64% !important;
    margin-top: 7.17% !important;
    margin-left: -3.91% !important;
    display: none;
  }
}
#wrap .c-header__logo.is-small {
  margin: 48px 0 0 0;
  width: 150px;
}
#wrap .c-header__nav {
  margin-top: 76px;
  margin-right: 84px;
}
@media screen and (max-width: 1280px) {
  #wrap .c-header__nav {
    margin-right: 42px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .c-header__nav {
    display: none;
  }
}
#wrap .c-header__menu {
  display: flex;
  gap: 0 80px;
}
@media screen and (max-width: 1365px) {
  #wrap .c-header__menu {
    gap: 0 40px;
  }
}
#wrap .c-header__menu-item {
  font-family: "Ysabeau", sans-serif;
  font-weight: 300;
  font-size: 240%;
  letter-spacing: 0.04em;
  line-height: 1;
}
@media screen and (max-width: 1280px) {
  #wrap .c-header__menu-item {
    font-size: 200%;
  }
}

#wrap .c-hashtag {
  position: fixed;
  top: 0;
  right: 37px;
  z-index: 20;
}
@media screen and (max-width: 960px) {
  #wrap .c-hashtag {
    right: 10px;
  }
}
#wrap .c-hashtag__item {
  width: 25px;
  padding-bottom: 40px;
}
@media screen and (max-width: 960px) {
  #wrap .c-hashtag__item {
    width: 14px;
    padding-bottom: 30px;
  }
}
#wrap .c-hashtag__item.is-animate {
  animation: loopHashtag 10s linear 0s infinite;
}

#wrap .c-pagetop {
  display: none;
}
@media screen and (max-width: 960px) {
  #wrap .c-pagetop {
    display: block;
    width: 82px;
    position: absolute;
    bottom: 16px;
    left: 16px;
    z-index: 30;
  }
}

#wrap .p-home-visual {
  position: relative;
  z-index: 20;
}

#wrap .p-home-intro__main {
  margin-top: -9.26%;
  padding: 19.63% 64px 160px;
  background: url("../img/intro_bg.webp") repeat center;
  background-size: cover;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__main {
    margin-top: -9.6%;
    padding: 21.33% 0 84px;
    background-image: url("../img/intro_bg_sp.webp");
  }
}
#wrap .p-home-intro__headline {
  font-weight: 500;
  font-size: 320%;
  line-height: 1.8;
  letter-spacing: 0.2em;
  text-align: center;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__headline {
    font-size: 200%;
    text-align: left;
  }
}
#wrap .p-home-intro__lead01 {
  font-weight: 500;
  font-size: 200%;
  line-height: 1.8;
  letter-spacing: 0.2em;
  text-align: center;
  margin-top: 48px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__lead01 {
    font-size: 140%;
    letter-spacing: 0.16em;
    text-align: left;
    margin-top: 44px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__lead01 span {
    display: block;
    margin-bottom: 8px;
  }
}
#wrap .p-home-intro__lead02 {
  font-weight: 500;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.2em;
  text-align: center;
  margin-top: 56px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__lead02 {
    font-size: 140%;
    letter-spacing: 0.16em;
    text-align: left;
    margin-top: 0;
  }
}
#wrap .p-home-intro__note {
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.2em;
  text-align: center;
  margin-top: 16px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-intro__note {
    text-align: left;
    margin-top: 8px;
    text-indent: -1.2em;
    padding-left: 1.2em;
  }
}





#wrap .p-home-recommend__main {
  background: #FFFFFF;
}
#wrap .p-home-recommend__main-inner {
  padding: 160px 64px 140px;
  position: relative;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__main-inner {
    padding: 80px 0 87px;
  }
}
#wrap .p-home-recommend__headline {
  width: 562px;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__headline {
    width: 86.64%;
  }
}
#wrap .p-home-recommend__block {
  display: none;
  opacity: 0;
}
#wrap .p-home-recommend__block01 {
  display: block;
  margin-top: 53px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block01 {
    margin-top: 31px;
  }
}
#wrap .p-home-recommend__block01 .p-home-recommend__col {
  gap: 0 50px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block01 .p-home-recommend__deco {
    top: auto;
    bottom: 38px;
    left: -206px;
  }
}
#wrap .p-home-recommend__block01 .p-home-recommend__image {
  width: 52.02%;
  margin-right: -38px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block01 .p-home-recommend__image {
    width: 100%;
    margin: auto;
  }
}
#wrap .p-home-recommend__block01 .p-home-recommend__texts {
  margin-top: 240px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block01 .p-home-recommend__texts {
    margin: 32px auto 0;
  }
}
#wrap .p-home-recommend__block02 {
  margin-top: 130px;
  display: block;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block02 {
    margin-top: 14px;
  }
}
#wrap .p-home-recommend__block02 .p-home-recommend__col {
  gap: 0 3px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block02 .p-home-recommend__deco {
    top: auto;
    bottom: 132px;
    left: auto;
    right: -156px;
  }
}
#wrap .p-home-recommend__block02 .p-home-recommend__image {
  width: 57%;
  margin-right: -50px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block02 .p-home-recommend__image {
    width: 109.61%;
    margin-left: -4.8%;
  }
}
#wrap .p-home-recommend__block02 .p-home-recommend__texts {
  margin-top: -220px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block02 .p-home-recommend__texts {
    margin: 0 auto;
  }
}
#wrap .p-home-recommend__block03 {
  margin-top: -16px;
  display: block;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block03 {
    margin-top: 30px;
  }
}
#wrap .p-home-recommend__block03 .p-home-recommend__col {
  gap: 0 51px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block03 .p-home-recommend__deco {
    top: auto;
    bottom: 175px;
    left: -187px;
  }
}
#wrap .p-home-recommend__block03 .p-home-recommend__image {
  width: 52.02%;
  margin-right: -38px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block03 .p-home-recommend__image {
    width: 100%;
    margin: auto;
  }
}
#wrap .p-home-recommend__block03 .p-home-recommend__texts {
  margin-top: 310px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__block03 .p-home-recommend__texts {
    margin: 22px auto 0;
  }
}
#wrap .p-home-recommend__col {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__col {
    display: block;
  }
}
#wrap .p-home-recommend__deco, #wrap .p-home-recommend__image, #wrap .p-home-recommend__texts {
  opacity: 0;
  transform: translateY(20px);
  will-change: transform;
}
#wrap .p-home-recommend__deco {
  position: absolute;
  top: 300px;
  left: -148px;
  width: 612px;
  opacity: 0;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__deco {
    width: 440px;
  }
}
#wrap .p-home-recommend__image {
  position: relative;
  z-index: 1;
  opacity: 0;
}
#wrap .p-home-recommend__texts {
  flex: 1;
  max-width: 441px;
  margin-left: 43px;
  position: relative;
  z-index: 1;
  opacity: 0;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__texts {
    max-width: 100%;
  }
}
#wrap .p-home-recommend__text {
  font-weight: 500;
  font-size: 240%;
  line-height: 1.8;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__text {
    font-size: 160%;
    letter-spacing: 0.16em;
  }
}
#wrap .p-home-recommend__desc {
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 24px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-recommend__desc {
    font-size: 140%;
    margin-top: 16px;
  }
}
#wrap .p-home-recommend__note {
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 8px;
}





#wrap .p-home-service__main {
  background: #FFFFFF;
  padding: 208px 64px 61px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__main {
    padding: 102px 0 0;
    overflow: hidden;
  }
}
#wrap .p-home-service__deco {
  position: absolute;
}
#wrap .p-home-service__deco01 {
  width: 208px;
  top: 0;
  left: -115px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__deco01 {
    width: 130px;
    left: -18px;
  }
}
#wrap .p-home-service__deco02 {
  width: 366px;
  top: 89px;
  right: -64px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__deco02 {
    width: 188px;
    top: 13px;
    right: -19px;
  }
}
#wrap .p-home-service__deco03 {
  width: 433px;
  bottom: -98px;
  left: 163px;
  z-index: 2;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__deco03 {
    display: none;
  }
}
#wrap .p-home-service__deco04 {
  width: 208px;
  bottom: 9px;
  right: 211px;
  z-index: 2;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__deco04 {
    width: 118px;
    bottom: 0;
    right: 30px;
    z-index: 2;
  }
}
#wrap .p-home-service__headline {
  width: 544px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__headline {
    width: 83.71%;
    margin: auto;
  }
}
#wrap .p-home-service__text01 {
  width: 340px;
  margin: 40px auto 0;
  position: relative;
  left: -20px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text01 {
    width: 87.95%;
    margin-top: 34px;
    left: 8%;
  }
}
#wrap .p-home-service__box {
  margin-top: -10px;
  display: flex;
  align-items: center;
  gap: 0 70px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__box {
    display: block;
    margin-top: 1px;
  }
}
#wrap .p-home-service__logo {
  width: 28.03%;
  margin-left: 39px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__logo {
    width: 50.81%;
    margin-left: 0;
  }
}
#wrap .p-home-service__texts01 {
  flex: 1;
  margin-top: 70px;
  margin-right: -18px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__texts01 {
    margin-top: 40px;
    margin-right: 0;
  }
}
#wrap .p-home-service__text02 {
  font-weight: 500;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text02 {
    font-size: 160%;
    letter-spacing: 0.16em;
  }
}
#wrap .p-home-service__text03 {
  margin-left: 20px;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text03 {
    font-size: 140%;
    /*width: 98%;*/
  }
}

#wrap .p-home-service__textb {
  color: #52A8BB;
  font-weight: bold;
  margin-top: 16px;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__textb {
    font-size: 140%;
    width: 98%;
    text-indent: -1.7em;
    padding-left: 1.7em;
    letter-spacing: 0.1em;
  }
}

#wrap .p-home-service__text06 {
  margin-top: 20px;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-left: 20px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text06 {
    font-size: 140%;
    width: 98%;
    text-indent: -1em;
    padding-left: 1em;
  }
}

#wrap .p-home-service__text07 {
  margin-top: 20px;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text07 {
    font-size: 140%;
    width: 98%;
  }
}

#wrap .p-home-service__image {
  margin: 64px -64px 0 auto;
  position: relative;
  width: 74.37%;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__image {
    margin-top: 75px;
    margin-right: -11.07%;
    width: 97.72%;
  }
}
#wrap .p-home-service__copy {
  width: 42.88%;
  position: absolute;
  top: 46%;
  transform: translateY(-50%);
  left: -31.47%;
  opacity: 1 !important;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__copy {
    width: 64.67%;
    top: 0;
    transform: translateY(0);
    margin-top: -16.33%;
    left: -13.67%;
  opacity: 1 !important;
  }
}
#wrap .p-home-service__texts02 {
  background: url("../img/service_bg.webp") repeat center;
  background-size: 665px 376px;
  /*padding: 0px 64px 48px 164px;
  margin-top: -10.88%;
  margin-left: calc(50% - 20vw);*/
  /*width: calc(50vw - 20px);*/
  /*min-width: 666px;*/
  position: relative;
  z-index: 1;
  /*padding-right: 120px;*/
    /*padding-top: 50px;*/
      width: 500px;
    height: 300px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__texts02 {
    background-image: url("../img/service_bg_sp.webp");
    background-size: cover;
    padding: 32px 0px 230px 0px;
    margin-top: 0px;
    margin-left: -11.07%;
    max-width: 111.07%;
    width: 111.07%;
    min-width: auto;
    max-height: 110%;
    height: 110%;
  }
}
#wrap .p-home-service__texts02-inner {
  max-width: 438px;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__texts02-inner {
    max-width: 100%;
    padding: 0px 16px 0px 32px;
  }
}
#wrap .p-home-service__text04 {
  font-weight: 500;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text04 {
    font-size: 160%;
    letter-spacing: 0.16em;
  }
}
#wrap .p-home-service__text05 {
  margin-top: 24px;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-service__text05 {
    font-size: 140%;
    margin-top: 15px;
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 960px) {
  #wrap .p-home-staff {
    overflow: hidden;
  }
}
#wrap .p-home-staff__main {
  background: url("../img/staff_bg.webp") repeat center;
  background-size: cover;
  padding: 200px 64px 60px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__main {
    padding: 81px 0 40px;
  }
}
#wrap .p-home-staff__head {
  display: flex;
  align-items: flex-end;
  gap: 0 24px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__head {
    display: block;
  }
}
#wrap .p-home-staff__headline {
  max-width: 667px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__headline {
    max-width: 100%;
    width: 100%;
  }
}
#wrap .p-home-staff__note {
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  position: relative;
  top: -4px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__note {
    top: 0;
    margin-top: 10px;
    text-align: right;
  }
}
#wrap .p-home-staff__blocks {
  margin-top: 79px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__blocks {
    margin-top: 32px;
  }
}
#wrap .p-home-staff__block {
  display: flex;
  align-items: flex-end;
  gap: 0 76px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__block {
    display: block;
  }
}
#wrap .p-home-staff__block + .p-home-staff__block {
  margin-top: 101px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__block + .p-home-staff__block {
    margin-top: 48px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__block:nth-child(2n+1) .p-home-staff__image {
    margin-left: auto;
  }
}
#wrap .p-home-staff__block:nth-child(2n) {
  flex-direction: row-reverse;
}
#wrap .p-home-staff__image {
  width: 36.6%;
}

#wrap .p-home-staff__image img{
      /*width: 20%;*/
}

@media screen and (max-width: 960px) {
#wrap .p-home-staff__image img{
      /*width: 67%;*/
  }
}

@media screen and (max-width: 960px) {
  #wrap .p-home-staff__image {
    display: flow;
    width: 67%;
  }
}
#wrap .p-home-staff__profile {
  flex: 1;
  border-top: 1px solid #171A1C;
  border-bottom: 1px solid #171A1C;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile {
    margin-top: 24px;
  }
}
#wrap .p-home-staff__profile-head {
  padding: 20px 0 24px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-head {
    padding: 12px 0;
  }
}
#wrap .p-home-staff__profile-dl {
  display: flex;
}
#wrap .p-home-staff__profile-col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 50%;
  padding: 0 30px;
  position: relative;
}
@media screen and (max-width: 1280px) {
  #wrap .p-home-staff__profile-col:nth-child(1) {
    padding: 0 13px 0 0;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-col:nth-child(1) {
    width: 36.48%;
  }
}
@media screen and (max-width: 1280px) {
  #wrap .p-home-staff__profile-col:nth-child(2) {
    padding: 0 0 0 13px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-col:nth-child(2) {
    flex: 1;
  }
}
#wrap .p-home-staff__profile-col + .p-home-staff__profile-col:before {
  content: "";
  position: absolute;
  width: 1px;
  height: 33px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: rgba(23, 26, 28, 0.3);
}
#wrap .p-home-staff__profile-headline {
  font-family: "Ysabeau", sans-serif;
  font-weight: 300;
  font-size: 240%;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1280px) {
  #wrap .p-home-staff__profile-headline {
    font-size: 200%;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-headline {
    font-size: 180%;
  }
}
#wrap .p-home-staff__profile-subheadline {
  margin-top: 2px;
  font-size: 120%;
  line-height: 1.6;
}
#wrap .p-home-staff__profile-dd {
  margin-top: 20px;
}
#wrap .p-home-staff__profile-desc01 {
  font-weight: 500;
  font-size: 140%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  text-align: right;
  white-space: nowrap;
}
@media screen and (max-width: 1280px) {
  #wrap .p-home-staff__profile-desc01 {
    font-size: 120%;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-desc01 {
    font-size: 140%;
  }
}
@media screen and (max-width: 374px) {
  #wrap .p-home-staff__profile-desc01 {
    font-size: 120%;
  }
}
#wrap .p-home-staff__profile-body {
  border-top: 1px solid #171A1C;
  padding: 31px 0;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staff__profile-body {
    padding: 16px 0;
  }
}
#wrap .p-home-staff__profile-desc02 {
  font-size: 140%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}

#wrap .p-home-color {
  background: #FFFFFF;
  padding: 200px 0 80px;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color {
    padding: 40px 0 80px;
  }
}
#wrap .p-home-color__headline {
  width: 718px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__headline {
    width: 100%;
  }
}
#wrap .p-home-color__lead {
  margin-top: 47px;
  font-weight: 500;
  font-size: 240%;
  line-height: 1.8;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__lead {
    font-size: 160%;
    margin-top: 24px;
    letter-spacing: 0.16em;
  }
}
#wrap .p-home-color__blocks {
  margin-top: 67px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__blocks {
    margin-top: 16px;
  }
}
#wrap .p-home-color__block {
  position: relative;
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-head {
  margin-left: auto;
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-images {
  margin-top: -10.2%;
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(1) {
  margin-top: 267px;
  margin-left: -32px;
  margin-right: -58px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(1) {
    margin-top: -22.48%;
    margin-left: auto;
    margin-right: -3.91%;
  }
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(2) {
  margin-top: 173px;
  margin-right: -44px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(2) {
    margin-top: -40.07%;
    margin-right: 0;
    margin-left: -10.1%;
  }
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(3) {
  margin-top: 134px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-thumb:nth-child(3) {
    margin-top: -29.64%;
    margin-left: auto;
    margin-right: -1.63%;
    transform: rotate(-4deg);
  }
}
#wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-info {
  margin-top: -47px;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n+1) .p-home-color__block-info {
    margin-top: -32.25%;
    margin-left: 0;
  }
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-images {
  flex-direction: row-reverse;
  margin-top: -6.86%;
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-note {
  text-align: right;
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(1) {
  margin-top: 95px;
  margin-right: -52px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(1) {
    margin-top: -18.89%;
    margin-left: -9.77%;
    margin-right: 0;
    transform: rotate(-19deg);
  }
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(2) {
  margin-top: 205px;
  margin-right: -43px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(2) {
    margin-top: -43%;
    margin-left: auto;
    margin-right: -1.3%;
    transform: rotate(21deg);
  }
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(3) {
  margin-top: 100px;
  margin-right: -30px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n) .p-home-color__block-thumb:nth-child(3) {
    margin-top: -26.71%;
    margin-right: 0;
    margin-left: -4.56%;
    transform: rotate(-8deg);
  }
}
#wrap .p-home-color__block:nth-child(2n) .p-home-color__block-info {
  margin-top: 32px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block:nth-child(2n) .p-home-color__block-info {
    margin-top: -37.79%;
    margin-left: auto;
  }
}
#wrap .p-home-color__block + .p-home-color__block {
  margin-top: 120px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block + .p-home-color__block {
    margin-top: 48px;
  }
}
#wrap .p-home-color__block01 .p-home-color__block-deco {
  bottom: -89px;
  left: -183px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block01 .p-home-color__block-deco {
    bottom: 87px;
    left: -239px;
  }
}
#wrap .p-home-color__block01 .p-home-color__block-head {
  width: 507px;
}
#wrap .p-home-color__block01 .p-home-color__block-desc {
  margin-left: 105px;
}
#wrap .p-home-color__block02 .p-home-color__block-deco {
  bottom: 2px;
  right: -151px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block02 .p-home-color__block-deco {
    top: 45px;
    bottom: auto;
    right: -235px;
  }
}
#wrap .p-home-color__block02 .p-home-color__block-head {
  width: 523px;
}
#wrap .p-home-color__block02 .p-home-color__block-desc {
  margin-left: 179px;
}
#wrap .p-home-color__block03 .p-home-color__block-deco {
  bottom: 66px;
  left: -183px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block03 .p-home-color__block-deco {
    top: 97px;
    bottom: auto;
    left: -183px;
  }
}
#wrap .p-home-color__block03 .p-home-color__block-head {
  width: 460px;
}
#wrap .p-home-color__block03 .p-home-color__block-desc {
  margin-left: 58px;
}
#wrap .p-home-color__block04 .p-home-color__block-deco {
  bottom: 2px;
  right: -149px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block04 .p-home-color__block-deco {
    bottom: 231px;
    right: -236px;
  }
}
#wrap .p-home-color__block04 .p-home-color__block-head {
  width: 709px;
}
#wrap .p-home-color__block04 .p-home-color__block-desc {
  margin-left: 177px;
}
#wrap .p-home-color__block-deco {
  position: absolute;
  width: 612px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-deco {
    width: 440px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-head {
    width: 100% !important;
  }
}
#wrap .p-home-color__block-desc {
  margin-top: 17px;
  font-size: 140%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-desc {
    margin-top: 13px;
    display: table;
    margin-left: auto !important;
  }
}
#wrap .p-home-color__block-images {
  display: flex;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-images {
    display: block;
    margin-top: 24px !important;
  }
}
#wrap .p-home-color__block-image {
  width: 50%;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-image {
    width: 100%;
  }
}
#wrap .p-home-color__block-note {
  margin-top: 16px;
  opacity: 0.5;
  font-weight: 500;
  font-size: 100%;
  line-height: 1.4;
  letter-spacing: 0.14em;
}
#wrap .p-home-color__block-thumbs {
  width: 50%;
  display: flex;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-thumbs {
    width: 100%;
    display: block;
  }
}
#wrap .p-home-color__block-thumb {
  position: relative;
}
#wrap .p-home-color__block-thumb:nth-child(1) {
  width: 252px;
  z-index: 3;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-thumb:nth-child(1) {
    width: 64.5%;
  }
}
#wrap .p-home-color__block-thumb:nth-child(2) {
  width: 244px;
  z-index: 2;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-thumb:nth-child(2) {
    width: 65.8%;
  }
}
#wrap .p-home-color__block-thumb:nth-child(3) {
  width: 213px;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-thumb:nth-child(3) {
    width: 57%;
  }
}
#wrap .p-home-color__block-info {
  width: 27.1%;
  font-weight: 500;
  font-size: 100%;
  line-height: 1.4;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-color__block-info {
    width: 39.74%;
  }
}

#wrap .p-home-sns {
  overflow: hidden;
  background: #FFFFFF;
  padding: 121px 0 135px;
  position: relative;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns {
    padding: 0 0 78px;
  }
}
#wrap .p-home-sns__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#wrap .p-home-sns__bg01 {
  background: #EDAAB6;
  height: 723px;
  clip-path: polygon(0 0, 100% 181px, 100% 100%, 0% 100%);
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__bg01 {
    top: 12px;
    height: 699px;
    clip-path: polygon(0 0, 100% 49px, 100% 100%, 0% 100%);
  }
}
#wrap .p-home-sns__bg02 {
  top: 125px;
  background: #F8FCFC;
  height: 598px;
  clip-path: polygon(0 178px, 100% 0, 100% 100%, 0% 100%);
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__bg02 {
    top: 40px;
    height: 1136px;
    clip-path: polygon(0 48px, 100% 0, 100% 100%, 0% 100%);
  }
}
#wrap .p-home-sns__headline {
  max-width: 1095px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__headline {
    max-width: 100%;
    width: 100%;
  }
}
#wrap .p-home-sns__panel {
  margin-top: 32px;
  margin-right: -100px;
  background: url("../img/sns_bg.webp") no-repeat center;
  background-size: 100% auto;
  padding: 3.85% 97px 8.57% 6.86%;
  aspect-ratio: 1273/864;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__panel {
    margin-top: 20px;
    margin-right: -11.07%;
    background-image: url("../img/sns_bg_sp.webp");
    padding: 14.66% 11.07% 15.64% 11.07%;
    aspect-ratio: 344/2049;
  }
}
#wrap .p-home-sns__list {
  display: flex;
  gap: 0 7.8%;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__list {
    display: block;
  }
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__item + .p-home-sns__item {
    margin-top: 17.58%;
  }
}
#wrap .p-home-sns__name {
  min-height: 78px;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-sns__name {
    min-height: auto;
  }
}
#wrap .p-home-sns__iframe {
  margin-top: 9px;
  aspect-ratio: 273/547;
}
#wrap .p-home-sns__iframe iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-width: auto !important;
}

#wrap .p-home-bottom {
  background: #FFFFFF url("../img/bottom_bg.webp") no-repeat left bottom;
  background-size: 941px 600px;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom {
    background-image: url("../img/bottom_bg_sp.webp");
    background-size: 100% auto;
  }
}
#wrap .p-home-bottom__main {
  padding: 0px 0 265px;
  position: relative;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__main {
    padding: 0 0 66.12%;
  }
}
#wrap .p-home-bottom__texts {
  display: table;
  text-align: center;
  margin-left: 66px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__texts {
    display: block;
    text-align: left;
    margin-left: 0;
  }
}
#wrap .p-home-bottom__headline {
  width: 589px;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__headline {
    width: 97.06%;
  }
}
#wrap .p-home-bottom__lead {
  margin-top: 30px;
  font-weight: 500;
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__lead {
    margin-top: 20px;
    font-size: 140%;
    letter-spacing: 0.14em;
  }
}
#wrap .p-home-bottom__note {
  margin-top: 24px;
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__note {
    margin-top: 16px;
    text-indent: -1em;
    padding-left: 1em;
  }
}
#wrap .p-home-bottom__image {
  width: 37.48%;
  position: absolute;
  bottom: -116px;
  right: 48px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-bottom__image {
    width: 58.63%;
    right: 0;
    bottom: 0;
    margin-bottom: -24.5%;
  }
}





.tracking{
 position: fixed;
 bottom: 8%;
 right: 5%;
 z-index: 9999;
    width: 120px;
    height: auto;
}

@media screen and (max-width: 960px) {
	.cta_follow {
		display: none;
	}

	.cta_follow_sp {
		background-color: rgba(220, 230, 240, 0.70);
		padding: 7px 20px;
		display: flex;
		display: none;
		margin: 0 auto;
		justify-content: center;
		align-items: center;
		gap: 10px;
		position: fixed;
		left: 0;
		
		bottom: 0px;
		width: 100%;
		/*height: 80px;*/
		text-align: center;
		transition: bottom 0.3s ease;
		/* アニメーション効果を追加 */
		z-index: 999;
	}

	.btn_follow {
		max-width: 300px;
		font-size: 12px;
	}

	.img_icon{
		/*max-width: 300px;*/
		font-size: 12px;
	}
}





#wrap .phomerecommend__note {
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 8px;
  text-indent: -1em;
  padding-left: 1em;
}






#wrap .phomerecommend__main {
  background: #FFFFFF;
}
#wrap .phomerecommend__main-inner {
  padding: 160px 64px 140px;
  position: relative;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__main-inner {
    padding: 80px 0 87px;
  }
}
#wrap .phomerecommend__headline {
  width: 562px;
  margin: auto;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__headline {
    width: 86.64%;
  }
}
#wrap .phomerecommend__block {
  display: none;
  /*opacity: 0;*/
}
#wrap .phomerecommend__block01 {
  display: block;
  margin-top: 53px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block01 {
    margin-top: 31px;
  }
}
#wrap .phomerecommend__block01 .phomerecommend__col {
  gap: 0 50px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block01 .phomerecommend__deco {
    /*top: 420px;*/
    /*bottom: 38px;*/
    left: -206px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block02 .phomerecommend__deco02 {
        top: 132px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block03 .phomerecommend__deco03 {
    top: 1320px;
    /*bottom: 38px;*/
    left: -206px;
  }
}
#wrap .phomerecommend__block01 .phomerecommend__image {
  width: 52.02%;
  margin-right: -38px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block01 .phomerecommend__image {
    width: 100%;
    margin: auto;
  }
}
#wrap .phomerecommend__block01 .phomerecommend__texts {
  margin-top: 240px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block01 .phomerecommend__texts {
    margin: 32px auto 0;
  }
}
#wrap .phomerecommend__block02 {
  margin-top: 130px;
  display: block;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block02 {
    margin-top: 14px;
    display: block;
  }
}
#wrap .phomerecommend__block02 .phomerecommend__col {
  gap: 0 3px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block02 .phomerecommend__deco {
    top: auto;
    bottom: 132px;
    left: auto;
    right: -156px;
  }
}
#wrap .phomerecommend__block02 .phomerecommend__image {
  width: 57%;
  margin-right: -50px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block02 .phomerecommend__image {
    width: 109.61%;
    margin-left: -4.8%;
  }
}
#wrap .phomerecommend__block02 .phomerecommend__texts {
  margin-top: -220px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block02 .phomerecommend__texts {
    margin: 0 auto;
  }
}
#wrap .phomerecommend__block03 {
  margin-top: -16px;
  display: block;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block03 {
    margin-top: 30px;
    display: block;
  }
}
#wrap .phomerecommend__block03 .phomerecommend__col {
  gap: 0 51px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block03 .phomerecommend__deco {
    top: auto;
    bottom: 175px;
    left: -187px;
  }
}
#wrap .phomerecommend__block03 .phomerecommend__image {
  width: 52.02%;
  margin-right: -38px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block03 .phomerecommend__image {
    width: 100%;
    margin: auto;
  }
}
#wrap .phomerecommend__block03 .phomerecommend__texts {
  margin-top: 310px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__block03 .phomerecommend__texts {
    margin: 22px auto 0;
  }
}
#wrap .phomerecommend__col {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__col {
    display: block;
  }
}
#wrap .phomerecommend__deco, #wrap .phomerecommend__image, #wrap .phomerecommend__texts {
  /*opacity: 0;*/
  transform: translateY(20px);
  will-change: transform;
}
#wrap .phomerecommend__deco {
  position: absolute;
  top: 70px;
  left: -148px;
  width: 612px;
  /*opacity: 0;*/
}

#wrap .phomerecommend__deco02 {
  position: absolute;
  /*top: 800px;*/
  left: -148px;
  width: 612px;
  /*opacity: 0;*/
}

#wrap .phomerecommend__deco03 {
  position: absolute;
  /*top: 1423px;*/
  left: -148px;
  width: 612px;
  /*opacity: 0;*/
}

@media screen and (max-width: 960px) {
  #wrap .phomerecommend__deco {
    width: 440px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__deco02 {
    width: 440px;
  }
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__deco03 {
    width: 440px;
    top: 100px;
    left: -148px;
  }
}
#wrap .phomerecommend__image {
  position: relative;
  z-index: 1;
  /*opacity: 0;*/
}
#wrap .phomerecommend__texts {
  flex: 1;
  max-width: 441px;
  margin-left: 43px;
  position: relative;
  z-index: 1;
  /*opacity: 0;*/
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__texts {
    max-width: 100%;
  }
}
#wrap .phomerecommend__text {
  font-weight: 500;
  font-size: 240%;
  line-height: 1.8;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__text {
    font-size: 160%;
    letter-spacing: 0.16em;
  }
}
#wrap .phomerecommend__desc {
  font-size: 180%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 24px;
}
@media screen and (max-width: 960px) {
  #wrap .phomerecommend__desc {
    font-size: 140%;
    margin-top: 16px;
  }
}
#wrap .phomerecommend__note {
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 8px;
}


.btn_pc {
	position: relative;
	width: 360px;
	height: 80px;
	margin: 0 auto;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
}
.btn_pc img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}
.btn_pc:hover img:nth-of-type(2) {
	opacity: 0;
}

.btn_sp {
	position: relative;
	/*width: 300px;*/
	/*height: 80px;*/
	margin: 0 auto;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	padding-top: 28%;
}
.btn_sp img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}
.btn_sp:hover img:nth-of-type(2) {
	opacity: 0;
}

  #wrap .p-home-staffb {
        /*display: flex;*/
    position: relative;

  }

@media screen and (max-width: 960px) {
  #wrap .p-home-staffb {
    overflow: hidden;
                display: flow;

  }
}

#wrap .p-home-staffb__main {
  background: #FFFFFF;
  padding: 0px 64px 61px;
}
@media screen and (max-width: 960px) {
  #wrap .p-home-staffb__main {
    padding: 50px 0 50px;
    overflow: hidden;
  }
}



#wrap .phome-staff__image {
  display: flex;
  margin-top: 30px;
    /*height: 100%;
    width: 80%;*/
    gap: 0 50px;
    margin-left: 120px;
    z-index: 3
}

#wrap .phome-staff__image img{
      /*width: 20%;*/
}

@media screen and (max-width: 960px) {
#wrap .phome-staff__image img{
      width: 60%;
      z-index: 15;
  }
}

@media screen and (max-width: 960px) {
  #wrap .phome-staff__image {
    /*display: flow;*/
        margin-top: -210px;
    margin-left: 20px;
  }
}

#wrap .p-home-staffb .phomerecommend__col {
  gap: 0 50px;
}

#wrap .phomerecommend__note02 {
  margin-left: 20px;
  font-size: 120%;
  line-height: 1.8;
  letter-spacing: 0.14em;
  margin-top: 8px;
}
@media screen and (max-width: 960px){
div.inner {
padding: 8px 0 60px!important;
}


}