@charset "UTF-8";
/**

  Responsive Functions

*/
/**

  Assets Functions
  Example:

    background: #000000 image('btn/btn.png') no-repeat 0 0;

*/
/**

  Test Colors

*/
/**

  Background Colors

*/
/**

  Border Colors

*/
/**
$bp-xxs-min: 359;
$bp-xs-min: 480;
$bp-s-min: 640;
$bp-m-min: 768; // iPad portrait
$bp-l-min: 1024; // iPad landscape
$bp-xl-min: 1244; // 1280px screen resolution minus scrollbars
$bp-xxl-min: 1410; // 1440px screen resolution minus scrollbars
*/
/**

  Font Size Settings

*/
/**

  Responsiveness Settings

*/
/**

  Size Settings

*/
/**

  Transition Common Mixins

  Example:

    @include transition-common;
    @include transition-property(opacity);
    @include transition-duration(0.4s);
    @include transition-timing-function($ease-out-quart);

*/
/**

  Animation Common Mixins

  Example:

    @include keyframes(some-animation-name) {

    }

    @include set-animation($name: some-animation-name, $duration: 0.75s ,$easing: $ease-in-out-quad);
*/
/**

  Common Mixins

*/
/**

  mediaquery Mixins

*/
/* global */
/**
 * Breakpoints for JavaScript. Works with the Deloitte Digital SCSS @bp mixin
 *
 * @version 1.0.0
 * @copyright 2012-2014 Deloitte Digital Australia - http://www.deloittedigital.com/au
 * @author Deloitte Digital Australia deloittedigital@deloitte.com.au
 * @license BSD 3-Clause (http://opensource.org/licenses/BSD-3-Clause)
 */
@import "//fonts.googleapis.com/earlyaccess/notosansjapanese.css";
.input {
  font-size: 14px;
  appearance: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 0.9rem;
  padding: 0.9rem;
  background: #fff;
  border: 1px solid #bbb;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
  border-radius: 3px;
  outline: none;
  resize: vertical;
  transition: border-color 0.3s ease; }
  .input[disabled] {
    border-color: #c8c8c8;
    background-color: #f2f2f2;
    box-shadow: none;
    cursor: not-allowed; }
  .input:focus {
    border-color: #0c69d6; }

.control {
  margin: 0 0 0.9rem;
  box-sizing: border-box; }
  .control__input {
    position: absolute;
    opacity: 0;
    pointer-events: none; }
  .control__label {
    display: block;
    position: relative;
    padding-left: calc(20px + 0.6rem);
    will-change: transform; }
    .control__label::before, .control__label::after {
      content: '';
      position: absolute;
      top: calc(50% - 10px);
      left: 0;
      width: 20px;
      height: 20px;
      border: 1px solid transparent; }
    .control__label::before {
      content: '';
      position: absolute;
      top: calc(50% - 10px);
      left: 0;
      width: 20px;
      height: 20px;
      border-color: #bbb;
      box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
      background: #fff;
      background-size: 0; }
    .control__label::after {
      background-size: 60%;
      background-repeat: no-repeat;
      background-position: center;
      transform: scale(0);
      transition: transform 0.3s ease;
      will-change: transform; }
  .control__input[type='radio'] + .control__label::before {
    border-radius: 100%; }
  .control__input[type='radio'] + .control__label::after {
    background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M256%2C464c114.9%2C0%2C208-93.1%2C208-208c0-114.9-93.1-208-208-208C141.1%2C48%2C48%2C141.1%2C48%2C256C48%2C370.9%2C141.1%2C464%2C256%2C464z%22/%3E%3C/svg%3E"); }
  .control__input[type='checkbox'] + .control__label::after {
    background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M461.6%2C109.6l-54.9-43.3c-1.7-1.4-3.8-2.4-6.2-2.4c-2.4%2C0-4.6%2C1-6.3%2C2.5L194.5%2C323c0%2C0-78.5-75.5-80.7-77.7c-2.2-2.2-5.1-5.9-9.5-5.9c-4.4%2C0-6.4%2C3.1-8.7%2C5.4c-1.7%2C1.8-29.7%2C31.2-43.5%2C45.8c-0.8%2C0.9-1.3%2C1.4-2%2C2.1c-1.2%2C1.7-2%2C3.6-2%2C5.7c0%2C2.2%2C0.8%2C4%2C2%2C5.7l2.8%2C2.6c0%2C0%2C139.3%2C133.8%2C141.6%2C136.1c2.3%2C2.3%2C5.1%2C5.2%2C9.2%2C5.2c4%2C0%2C7.3-4.3%2C9.2-6.2L462%2C121.8c1.2-1.7%2C2-3.6%2C2-5.8C464%2C113.5%2C463%2C111.4%2C461.6%2C109.6z%22/%3E%3C/svg%3E"); }
  .control__input[type='radio'][disabled] + .control__label,
  .control__input[type='checkbox'][disabled] + .control__label {
    cursor: not-allowed; }
  .control__input[type='radio'][disabled] + .control__label::before,
  .control__input[type='checkbox'][disabled] + .control__label::before {
    border-color: #c8c8c8;
    background-color: #f2f2f2;
    box-shadow: none; }
  .control__input:checked + .control__label::after {
    transform: scale(1); }

.select {
  appearance: none;
  box-sizing: border-box;
  margin: 0 0 0.9rem;
  padding: 0.6rem;
  width: 100%;
  background: #fff;
  background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M256%2C298.3L256%2C298.3L256%2C298.3l174.2-167.2c4.3-4.2%2C11.4-4.1%2C15.8%2C0.2l30.6%2C29.9c4.4%2C4.3%2C4.5%2C11.3%2C0.2%2C15.5L264.1%2C380.9c-2.2%2C2.2-5.2%2C3.2-8.1%2C3c-3%2C0.1-5.9-0.9-8.1-3L35.2%2C176.7c-4.3-4.2-4.2-11.2%2C0.2-15.5L66%2C131.3c4.4-4.3%2C11.5-4.4%2C15.8-0.2L256%2C298.3z%22/%3E%3C/svg%3E");
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: calc(100% - 0.6rem) center;
  border: 1px solid #bbb;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
  border-radius: 0;
  outline: 0; }
  .select[disabled] {
    border-color: #c8c8c8;
    background-color: #f2f2f2;
    box-shadow: none;
    cursor: not-allowed; }
  .select:focus {
    border-color: #0c69d6; }
  .select::-ms-expand {
    display: none; }

/* http://meyerweb.com/eric/tools/css/reset/ 
 * v2.0 | 20110126
 * License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/**

  fonts

*/
small {
  font-size: 12px; }

strong {
  font-weight: bold; }

* {
  box-sizing: border-box; }

img {
  max-width: 100%;
  height: auto; }

img[src$=".svg"] {
  width: 100%; }

a {
  color: #000; }

html {
  width: 100%;
  height: 100%;
  font-size: 62.5%;
  overflow-y: scroll; }

body {
  width: 100%;
  height: auto;
  font-size: 14px;
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 300;
  background: #ffffff;
  color: #000;
  line-height: 1.6;
  -webkit-text-size-adjust: none; }

@media screen and (max-width: 1024px) {
  .u-br--sp {
    display: block; } }

.u-br--pc {
  display: block; }
  @media screen and (max-width: 1024px) {
    .u-br--pc {
      display: inline; } }

@media screen and (max-width: 768px) {
  .u-device-pc {
    display: none !important; } }

.u-device-sp {
  display: none !important; }
  @media screen and (max-width: 768px) {
    .u-device-sp {
      display: block !important; } }

.u-device-sp--in {
  display: none; }
  @media (max-width: 64em) {
    .u-device-sp--in {
      display: inline; } }

.u-text--right {
  text-align: right; }

.u-text--left {
  text-align: left; }

.u-border--bottom {
  border-bottom: solid 1px #f2f2f2;
  padding-bottom: 70px !important; }

.c-button, .c-button--primary, .p-contact .c-button--back, .p-contact .c-button--send, .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form .c-button--send, .p-contact .c-button--address, .p-multilingual__inquiry__form .c-button--address {
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  user-select: none;
  text-decoration: none;
  transition: all 0.1s ease;
  position: relative;
  padding-top: 10px;
  padding-bottom: 10px; }
  @media screen and (max-width: 1024px) {
    .c-button, .c-button--primary, .p-contact .c-button--back, .p-contact .c-button--send, .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form .c-button--send, .p-contact .c-button--address, .p-multilingual__inquiry__form .c-button--address {
      font-size: 11px; } }
  .c-button--primary, .p-contact .c-button--back, .p-contact .c-button--send, .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form .c-button--send {
    border-radius: 200px;
    font-family: "Noto Sans Japanese";
    font-weight: 700;
    color: #e60012;
    background: transparent;
    border: 2px solid #e60012; }
    .c-button--primary::after, .p-contact .c-button--back::after, .p-contact .c-button--send::after, .p-multilingual__inquiry__form .c-button--back::after, .p-multilingual__inquiry__form .c-button--send::after {
      content: "";
      display: block;
      position: absolute;
      background: url("../images/commons/icon-primary-arrow.svg") no-repeat center center;
      background-size: contain;
      width: 10px;
      height: 16px;
      right: 12px;
      top: 50%;
      margin-top: -8px; }
    .c-button--primary:hover, .p-contact .c-button--back:hover, .p-contact .c-button--send:hover, .p-multilingual__inquiry__form .c-button--back:hover, .p-multilingual__inquiry__form .c-button--send:hover {
      background: #e60012;
      color: #fff; }
      .c-button--primary:hover::after, .p-contact .c-button--back:hover::after, .p-contact .c-button--send:hover::after, .p-multilingual__inquiry__form .c-button--back:hover::after, .p-multilingual__inquiry__form .c-button--send:hover::after {
        background: url("../images/commons/icon-primary-arrow-white.svg") no-repeat center center;
        background-size: contain; }

.c-subPage__topicPath {
  background: #e60012;
  padding: 8px 17px 10px; }
  .c-subPage__topicPath ul {
    line-height: 1;
  }
  @media screen and (min-width: 1024px) {
    .c-subPage__topicPath {
      padding: 18px 87px 21px;
    }
  }
  .c-subPage__topicPath ul li {
    display: inline-block;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
   }
    .c-subPage__topicPath ul li::after {
      content: ">";
      display: inline-block;
      padding: 0 6px 0 10px;
      position: relative;
      top: -1px; }
    .c-subPage__topicPath ul li:last-child::after {
      content: none; }
    .c-subPage__topicPath ul li a {
      color: #fff;
      text-decoration: none; }
      .c-subPage__topicPath ul li a:hover {
        text-decoration: underline; }

.c-subPage__mainvisual {
  width: 100%;
  margin-bottom: 30px;
  position: relative; }
  .c-subPage__mainvisual::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0;
    background: url("../images/commons/mainvisual-mask.png") no-repeat left bottom;
    background-size: cover;
    width: 100%;
    height: 140px; }
    @media screen and (max-width: 1024px) {
      .c-subPage__mainvisual::after {
        background: url("../images/commons/sp-mainvisual-mask.png") no-repeat left top;
        background-size: cover;
        height: 57px; } }
  .c-subPage__mainvisual img {
    width: 100%; }
  .c-subPage__mainvisual__hgroup {
    position: absolute;
    text-align: center;
    width: 100%;
    top: 30%;
    z-index: 1;
    font-family: "Noto Sans Japanese"; }
    .c-subPage__mainvisual__hgroup h1 {
      font-size: 45px;
      color: #fff;
      text-shadow: 0px 0px 10px #000;
      font-weight: 500; }
      @media screen and (max-width: 1024px) {
        .c-subPage__mainvisual__hgroup h1 {
          font-size: 32px; } }
    .c-subPage__mainvisual__hgroup p {
      font-size: 16px;
      color: #e60012;
      font-weight: 500; }
      @media screen and (max-width: 1024px) {
        .c-subPage__mainvisual__hgroup p {
          font-size: 13px; } }

.c-subPage__content {
  width: 942px;
  margin: 0 auto 60px;
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  align-content: flex-start; }
  @media screen and (max-width: 1024px) {
    .c-subPage__content {
      width: 100%;
      flex-direction: column; } }
  .c-subPage__content__main {
    width: 650px; }
    @media screen and (max-width: 1024px) {
      .c-subPage__content__main {
        width: 100%;
        padding: 0 20px; } }
    .c-subPage__content__main--column1 {
      width: 942px; }
      @media screen and (max-width: 1024px) {
        .c-subPage__content__main--column1 {
          width: 100%;
          padding: 0 20px; } }
    .c-subPage__content__main section {
      margin-bottom: 60px;
      padding: 0 20px; }
      @media screen and (max-width: 1024px) {
        .c-subPage__content__main section {
          padding: 0 4px;
          margin-bottom: 40px; } }
      .c-subPage__content__main section > section {
        margin-bottom: 20px; }
    .c-subPage__content__main p {
      margin-bottom: 40px;
      line-height: 2.0; }
      .c-subPage__content__main p img {
        display: block;
        margin: 0 auto; }
    .c-subPage__content__main ul li {
      margin-bottom: 4px;
      position: relative;
      padding-left: 16px; }
      .c-subPage__content__main ul li::before {
        content: '';
        display: block;
        position: absolute;
        background: #000;
        width: 3px;
        height: 3px;
        top: calc(50% - 2px);
        left: 5px;
        border-radius: 5px; }
    .c-subPage__content__main nav {
      text-align: center;
      margin-bottom: 40px; }
      .c-subPage__content__main nav .c-button--primary, .c-subPage__content__main nav .p-contact .c-button--back, .p-contact .c-subPage__content__main nav .c-button--back, .c-subPage__content__main nav .p-contact .c-button--send, .p-contact .c-subPage__content__main nav .c-button--send, .c-subPage__content__main nav .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form .c-subPage__content__main nav .c-button--back, .c-subPage__content__main nav .p-multilingual__inquiry__form .c-button--send, .p-multilingual__inquiry__form .c-subPage__content__main nav .c-button--send {
        padding-left: 60px;
        padding-right: 60px; }
        @media screen and (max-width: 1024px) {
          .c-subPage__content__main nav .c-button--primary, .c-subPage__content__main nav .p-contact .c-button--back, .p-contact .c-subPage__content__main nav .c-button--back, .c-subPage__content__main nav .p-contact .c-button--send, .p-contact .c-subPage__content__main nav .c-button--send, .c-subPage__content__main nav .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form .c-subPage__content__main nav .c-button--back, .c-subPage__content__main nav .p-multilingual__inquiry__form .c-button--send, .p-multilingual__inquiry__form .c-subPage__content__main nav .c-button--send {
            width: 100%;
            padding-left: initial;
            padding-right: initial; } }
    .c-subPage__content__main hr {
      height: 1px;
      border: 0;
      background: #e5e5e5;
      margin: 30px 0 40px; }
  .c-subPage__content__sub {
    width: 220px; }
    @media screen and (max-width: 1024px) {
      .c-subPage__content__sub {
        width: 100%;
        padding: 0 20px; } }

.c-subPage__columns {
  -js-display: flex;
  display: flex;
  justify-content: space-between; }
  .c-subPage__columns img {
    max-width: inherit; }
  @media screen and (max-width: 1024px) {
    .c-subPage__columns {
      flex-wrap: wrap; } }

.c-subPage__column + .c-subPage__column {
  padding-left: 20px; }
  @media screen and (max-width: 1024px) {
    .c-subPage__column + .c-subPage__column {
      padding-left: 0; } }

.c-subPage__sidebar {
  border: 1px solid #e5e5e5; }
  .c-subPage__sidebar__header {
    font-size: 16px;
    text-align: center;
    padding: 14px 30px;
    border-bottom: 1px solid #e5e5e5; }
  .c-subPage__sidebar__body a,
  .c-subPage__sidebar__body span {
    font-size: 12px;
    display: block;
    padding: 14px 20px 14px 34px;
    border-bottom: 1px dotted #e5e5e5;
    position: relative;
    text-decoration: none; }
    .c-subPage__sidebar__body a:hover, .c-subPage__sidebar__body a.active,
    .c-subPage__sidebar__body span:hover,
    .c-subPage__sidebar__body span.active {
      color: #e60012; }
    .c-subPage__sidebar__body a::before,
    .c-subPage__sidebar__body span::before {
      content: "";
      width: 15px;
      height: 15px;
      background: url("../images/commons/icon-list.svg") no-repeat left top;
      background-size: contain;
      position: absolute;
      display: block;
      left: 10px;
      top: 50%;
      margin-top: -7px; }
    .c-subPage__sidebar__body a:last-child,
    .c-subPage__sidebar__body span:last-child {
      border-bottom: none; }

.c-subPage__h2 {
  font-size: 25px;
  font-family: "Noto Sans Japanese";
  font-weight: 500;
  position: relative;
  padding-bottom: 8px;
  margin-bottom: 30px;
  left: 20px; }
  .c-subPage__h2::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background: #e8e8e8;
    bottom: 0;
    left: -20px; }
  .c-subPage__h2::after {
    content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 23px;
    background: #e60012;
    top: 8px;
    left: -15px;
    -moz-transform: skewX(-22deg);
    -webkit-transform: skewX(-22deg);
    -o-transform: skewX(-22deg);
    -ms-transform: skewX(-22deg); }
  .c-subPage__h2 #anchor1,
  .c-subPage__h2 #anchor2,
  .c-subPage__h2 #anchor3 {
    position: absolute;
    top: -90px; }

.c-subPage__h3 {
  font-size: 20px;
  font-family: "Noto Sans Japanese";
  font-weight: 500;
  margin-bottom: 10px; }

.c-subPage__h4 {
  font-size: 16px;
  font-family: "Noto Sans Japanese";
  font-weight: 500;
  margin-bottom: 6px; }

.c-subPage__h5 {
  font-size: 14px;
  font-family: "Noto Sans Japanese";
  font-weight: 500;
  margin-bottom: 6px; }

.c-subPage__option {
  padding: 40px;
  margin-bottom: 40px;
  border: 1px solid #e5e5e5;
  background: #fffcf3; }
  .c-subPage__option p {
    margin-bottom: 0; }

.c-subPage__table {
  width: 100%;
  border: 1px solid #e5e5e5;
  margin-bottom: 20px;
  font-size: 12px; }
  .c-subPage__table th, .c-subPage__table td {
    padding: 10px 15px;
    border: 1px solid #e5e5e5;
    text-align: left; }
  .c-subPage__table th {
    width: 30%;
    background: #fffcf3; }

.c-subPage__anchorNav {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 1024px) {
    .c-subPage__anchorNav {
      flex-wrap: wrap;
      flex-direction: column; } }
  .c-subPage__anchorNav a {
    border: 1px solid #e5e5e5;
    width: 32%;
    text-decoration: none;
    padding: 14px 40px 14px 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .c-subPage__anchorNav a {
        width: 100%;
        margin-bottom: 10px;
        border-radius: 6px; }
        .c-subPage__anchorNav a br {
          display: none; } }
    .c-subPage__anchorNav a::after {
      content: "";
      width: 15px;
      height: 15px;
      background: url("../images/commons/icon-list.svg") no-repeat left top;
      background-size: contain;
      position: absolute;
      display: block;
      right: 15px;
      top: 50%;
      margin-top: -7px;
      transform: rotate(90deg); }

.p-news--detail .c-subPage__content__main section p img {
  width: 100%; }

.p-news--detail .c-subPage__content__main section p a {
  border-bottom: solid 1px #e60012;
  color: #e60012;
  position: relative;
  padding-bottom: 6px;
  text-decoration: none;
  padding-left: 12px; }
  .p-news--detail .c-subPage__content__main section p a:before {
    content: '>';
    position: absolute;
    left: 0;
    top: -8px;
    border-bottom: solid 1px #fff; }

.c-newlist a {
  -js-display: flex;
  display: flex;
  align-items: flex-start;
  width: 460px;
  color: #000;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
  position: relative;
  text-decoration: none;
  transition: all 0.2s ease-in-out; }
  .c-newlist a:hover {
    transform: translateX(6px);
    opacity: 0.8; }
  @media screen and (max-width: 1024px) {
    .c-newlist a {
      width: 100%;
      align-items: flex-start;
      flex-wrap: wrap;
      padding-bottom: 10px;
      margin-bottom: 10px; } }
  .c-newlist a::after {
    content: "";
    display: block;
    position: absolute;
    background: url("../images/commons/icon-primary-arrow.svg") no-repeat center center;
    background-size: contain;
    width: 10px;
    height: 16px;
    right: 12px;
    top: 50%;
    margin-top: -16px; }

.c-newlist__thumbnail {
  width: 110px;
  padding: 4px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  overflow-y: hidden;
  max-height: 77px;
  -js-display: flex;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap; }
  @media screen and (max-width: 1024px) {
    .c-newlist__thumbnail {
      display: block; } }

.c-newlist__text {
  width: 210px;
  padding-left: 20px; }
  .c-newlist__text dt {
    padding-right: 30px;
    margin-bottom: 10px; }
    @media screen and (max-width: 1024px) {
      .c-newlist__text dt {
        margin-bottom: 4px; } }
  .c-newlist__text dd {
    padding-right: 30px; }

.c-newlist__date {
  display: block; }

.c-newlist__category {
  margin-right: 10px;
  padding: 2px 15px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  display: inline-block; }
  .c-newlist__category.original {
    color: #fff;
    background: #558f34;
    border: 1px solid #558f34; }
  .c-newlist__category.planning {
    color: #fff;
    background: #e37037;
    border: 1px solid #e37037; }
  .c-newlist__category.column {
    color: #fff;
    background: #ee5c93;
    border: 1px solid #ee5c93; }
  .c-newlist__category.info {
    color: #fff;
    background: #e60012;
    border: 1px solid #e60012; }

@media screen and (max-width: 768px) {
  html, body {
    overflow-x: hidden; }
  .c-subPage__content .c-newlist__text {
    width: 210px; } }

@media screen and (max-width: 320px) {
  .c-subPage__content .c-newlist__text {
    width: 170px; } }

.c-form dl {
  width: 100%;
  -js-display: flex;
  display: flex;
  padding: 20px 10px;
  border-bottom: 1px solid #e5e5e5; }
  @media screen and (max-width: 1024px) {
    .c-form dl {
      flex-direction: column;
      padding: 10px 0; } }
  .c-form dl dt {
    width: 30%;
    margin-bottom: 10px; }
    @media screen and (max-width: 1024px) {
      .c-form dl dt {
        font-weight: bold;
        width: 100%; } }
  .c-form dl dd {
    width: 70%; }
    @media screen and (max-width: 1024px) {
      .c-form dl dd {
        width: 100%; } }

.c-form__navi {
  text-align: center;
  -js-display: flex;
  display: flex;
  justify-content: center;
  align-content: center; }
  @media screen and (max-width: 1024px) {
    .c-form__navi {
      flex-direction: column-reverse; } }

.c-select {
  position: relative;
  overflow: hidden;
  display: inline-block;
  min-width: 200px;
  background-color: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 6px; }
  .c-select::after {
    content: "";
    width: 15px;
    height: 15px;
    background: url("../images/commons/icon-list.svg") no-repeat left top;
    background-size: contain;
    position: absolute;
    display: block;
    right: 10px;
    top: calc(50% - 7px);
    transform: rotate(90deg); }
  .c-select__list {
    font-size: 14px;
    appearance: none;
    position: relative;
    z-index: 2;
    display: block;
    width: -webkit-calc(100% + 5em);
    padding: 12px 24px;
    background: transparent;
    border: 0;
    outline: none; }
  @media screen and (max-width: 1024px) {
    .c-select {
      font-size: 11px; } }

.p-noSupport {
  width: 100%;
  min-width: 1100px;
  padding: 20px;
  color: #fff;
  background: #FF9C29; }

.loader {
  background: #fff;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10; }

.loader-animation {
  height: 10px;
  left: 50%;
  position: absolute;
  top: 50%;
  color: #e60012;
  text-indent: -9999em;
  font-size: 10px;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
  background: url(/assets/images/commons/header-siteid.png) no-repeat;
  width: 217px;
  height: 27px;
  margin-left: -108px;
  animation: animate .8s linear infinite; }

@keyframes animate {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(8px); }
  100% {
    transform: translateY(0); } }

.p-home__mainvisual__hgroup {
  position: relative; }

.kv {
  position: relative;
  width: 100%;
  padding-bottom: 40%;
  z-index: 1; }

.kv__bg {
  position: absolute;
  width: 100%;
  z-index: 0;
  top: 0; }

.kv div {
  width: 100%; }

.kv img {
  width: 100%; }

#img1 .p-home__mainvisual__hgroup__text span {
  opacity: 0;
  display: inline-block;
  position: relative; }

#img1 .p-home__mainvisual__hgroup__text small {
  opacity: 0; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(1) {
  animation: TypoAnimate .5s ease-in 0.8s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(2) {
  animation: TypoAnimate 0.38s cubic-bezier(0.165, 1, 0.735, 0.48) 0.9s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(3) {
  animation: TypoAnimate 0.36s cubic-bezier(0.165, 1, 0.735, 0.48) 1s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(4) {
  animation: TypoAnimate 0.34s cubic-bezier(0.165, 1, 0.735, 0.48) 1.1s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(5) {
  animation: TypoAnimate 0.32s cubic-bezier(0.165, 1, 0.735, 0.48) 1.2s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(6) {
  animation: TypoAnimate 0.3s cubic-bezier(0.165, 1, 0.735, 0.48) 1.3s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(7) {
  animation: TypoAnimate 0.28s cubic-bezier(0.165, 1, 0.735, 0.48) 1.4s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(8) {
  animation: TypoAnimate 0.26s cubic-bezier(0.165, 1, 0.735, 0.48) 1.5s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(9) {
  animation: TypoAnimate 0.24s cubic-bezier(0.165, 1, 0.735, 0.48) 1.6s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(10) {
  animation: TypoAnimate 0.22s cubic-bezier(0.165, 1, 0.735, 0.48) 1.7s forwards; }

#img1 .p-home__mainvisual__hgroup__text span:nth-of-type(11) {
  animation: TypoAnimate 0.2s cubic-bezier(0.165, 1, 0.735, 0.48) 1.8s forwards; }

#img1 .p-home__mainvisual__hgroup__text small {
  animation: TypoAnimate2 0.5s linear 1.7s forwards; }

@keyframes TypoAnimate {
  0% {
    /*transform: translateX(160px) translateY(0) rotate(0deg);*/
    opacity: 0; }
  50% {
    /*transform: translateX(-20px) translateY(0) rotate(0deg);*/
    opacity: 0.7; }
  100% {
    /*transform: translateX(0) translateY(0) rotate(0deg);*/
    opacity: 1; } }

@keyframes TypoAnimate2 {
  0% {
    transform: translateY(7px);
    opacity: 0; }
  50% {
    opacity: 0.7; }
  100% {
    transform: translateY(0);
    opacity: 1; } }

.p-home__mainvisual__hgroup__text {
  font-size: 5.0vw;
  font-weight: bold;
  text-align: center;
  letter-spacing: -0.5vw;
  position: absolute;
  top: 2.5%; }

#img2 .p-home__mainvisual__hgroup__text {
  font-size: 4.0vw;
  font-weight: bold;
  text-align: left;
  letter-spacing: -0.7vw;
  position: absolute;
  top: 23%;
  left: 63%;
  max-width: 32.0vw; }

#img2 .p-home__mainvisual__hgroup__text p {
  text-shadow: -1px -1px 3px rgba(255, 255, 255, 0.7), 1px 1px 3px rgba(255, 255, 255, 0.9); }

.p-home__mainvisual__hgroup__text p {
  position: relative;
  top: 0; }

.p-home__mainvisual__hgroup__text__small {
  font-size: 3.5vw; }

.p-home__mainvisual__hgroup__text__color {
  color: #e60012; }

.p-home__mainvisual__hgroup__text small {
  font-size: 1.2vw;
  display: block;
  letter-spacing: 1px;
  font-weight: normal; }

#img2 .p-home__mainvisual__hgroup__text small {
  margin-top: 0.5%; }

#img2 .p-home__flow__navi {
  position: absolute;
  top: 53%;
  left: 60.5%;
  max-width: 32.0vw; }

#img2 .c-button--primary, #img2 .p-contact .c-button--back, .p-contact #img2 .c-button--back, #img2 .p-contact .c-button--send, .p-contact #img2 .c-button--send, #img2 .p-multilingual__inquiry__form .c-button--back, .p-multilingual__inquiry__form #img2 .c-button--back, #img2 .p-multilingual__inquiry__form .c-button--send, .p-multilingual__inquiry__form #img2 .c-button--send {
  background-color: #fff; }

#img2 .c-button--primary:hover, #img2 .p-contact .c-button--back:hover, .p-contact #img2 .c-button--back:hover, #img2 .p-contact .c-button--send:hover, .p-contact #img2 .c-button--send:hover, #img2 .p-multilingual__inquiry__form .c-button--back:hover, .p-multilingual__inquiry__form #img2 .c-button--back:hover, #img2 .p-multilingual__inquiry__form .c-button--send:hover, .p-multilingual__inquiry__form #img2 .c-button--send:hover {
  background-color: #e60012; }

@media screen and (max-width: 480px) {
  .kv {
    padding-bottom: 92%; }
  .p-home__mainvisual__hgroup__text {
    display: none; }
  #img2 .p-home__flow__navi {
    display: none; }
  #canvas-container,
  #sineCanvas,
  #sineCanvas2 {
    transition: all ease 0.5;
    opacity: 0;
    display: none; } }

/* .p-home__flow {
  margin-bottom: 30px;
  position: relative;
  z-index: 3; } */

#canvas-container {
  position: relative;
  z-index: 2;
  top: 30vw; }

#sineCanvas {
  width: 100%;
  height: 350px;
  vertical-align: top;
  position: absolute;
  z-index: 1; }

#sineCanvas2 {
  width: 100%;
  height: 350px;
  vertical-align: top;
  position: absolute;
  z-index: 2;
  top: 20px; }

@media screen and (max-width: 2500px) {
  #canvas-container {
    top: 27vw; } }

@media screen and (max-width: 2000px) {
  #canvas-container {
    top: 24vw; }
  #sineCanvas {
    height: 300px; }
  #sineCanvas2 {
    height: 300px; } }

@media screen and (max-width: 1200px) {
  #sineCanvas {
    height: 250px; }
  #sineCanvas2 {
    height: 250px; } }

@media screen and (max-width: 1100px) {
  #canvas-container {
    top: 22vw; } }

@media screen and (max-width: 900px) {
  #canvas-container {
    top: 20vw; } }

@media screen and (max-width: 800px) {
  #canvas-container {
    top: 18vw; } }

@media screen and (max-width: 700px) {
  #canvas-container {
    top: 15vw; }
  #sineCanvas {
    height: 200px; }
  #sineCanvas2 {
    height: 200px; } }

@media screen and (max-width: 600px) {
  #canvas-container {
    top: 12vw; } }

@media screen and (max-width: 480px) {
  #canvas-container,
  #sineCanvas,
  #sineCanvas2 {
    opacity: 0;
    display: none; } }

.p-about--index .c-subPage__h3 {
  position: relative;
  padding-left: 50px; }

.p-about--index__icon {
  display: block;
  width: 35px;
  position: absolute;
  top: 4px;
  left: 0; }

.p-oversea_lab--index .c-subPage__h3 {
  position: relative;
  padding-left: 50px; }

.p-oversea_lab--index__icon {
  display: block;
  width: 35px;
  position: absolute;
  top: 4px;
  left: 0; }

.p-oem_planning--index__step {
  position: relative; }
  .p-oem_planning--index__step #step1,
  .p-oem_planning--index__step #step2,
  .p-oem_planning--index__step #step3,
  .p-oem_planning--index__step #step4,
  .p-oem_planning--index__step #step5,
  .p-oem_planning--index__step #step6 {
    position: absolute;
    top: -90px; }
  .p-oem_planning--index__step::after {
    content: "";
    width: 100%;
    display: block;
    height: 60px;
    background: url("../images/commons/icon-step-arrow.svg") no-repeat center top;
    background-size: contain; }
  .p-oem_planning--index__step:last-child::after {
    content: none; }

.p-oem_planning--index__list, .p-oem_planning--share__list {
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .p-oem_planning--index__list a, .p-oem_planning--share__list a {
    width: 190px;
    display: block;
    border: 1px solid #e5e5e5;
    margin-bottom: 20px; }
    @media screen and (max-width: 1024px) {
      .p-oem_planning--index__list a, .p-oem_planning--share__list a {
        width: 47%; } }
  .p-oem_planning--index__list dl, .p-oem_planning--share__list dl {
    width: 100%;
    padding: 6px 10px;
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center; }
    .p-oem_planning--index__list dl dt, .p-oem_planning--share__list dl dt {
      width: 100%;
      margin-bottom: 10px; }
      .p-oem_planning--index__list dl dt img, .p-oem_planning--share__list dl dt img {
        width: 80px; }
    .p-oem_planning--index__list dl dd::after, .p-oem_planning--share__list dl dd::after {
      content: "";
      display: inline-block;
      width: 14px;
      height: 14px;
      background: url("../images/commons/icon-list.svg") no-repeat left top;
      background-size: contain;
      vertical-align: middle;
      margin: 0 8px;
      transform: rotate(90deg); }

.p-oem_planning--index .c-subPage__h3 {
  position: relative;
  padding-left: 50px; }

.p-oem_planning--index__icon {
  display: block;
  width: 35px;
  position: absolute;
  top: 0px;
  left: 0; }

.p-oem_planning--healthfood .c-subPage__h3 {
  margin-bottom: 30px; }

.p-oem_planning--healthfood__icon {
  background: #e60012;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  display: inline-block;
  padding: 2px 4px;
  margin: 0 4px; }

.p-oem_planning--share #step1,
.p-oem_planning--share #step2,
.p-oem_planning--share #step3,
.p-oem_planning--share #step4,
.p-oem_planning--share #step5,
.p-oem_planning--share #step6 {
  position: absolute;
  top: -90px; }

.p-oem_planning--share .c-subPage__h3 {
  -js-display: flex;
  display: flex;
  align-items: center; }

.p-oem_planning--share .c-subPage__h4 {
  margin-bottom: 10px; }

.p-oem_planning--share .c-subPage__content__main p {
  margin-bottom: 20px; }

.p-oem_planning--share .c-select {
  width: 200px;
  display: block;
  margin: 0 auto; }

.p-oem_planning--share .c-subPage__content__main section {
  position: relative; }

.p-oem_planning--share .c-subPage__content__main section > section.p-oem_planning--share__box {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #e5e5e5; }
  .p-oem_planning--share .c-subPage__content__main section > section.p-oem_planning--share__box.last {
    border-bottom: none;
    padding-bottom: 0; }

.p-oem_planning--share__icon {
  width: 50px;
  margin-right: 10px; }

.p-oem_planning--share .js-sort::before {
  content: none; }

.p-oem_planning--share__material {
  -js-display: flex;
  display: flex;
  align-items: center;
  margin-bottom: 10px; }
  .p-oem_planning--share__material__thumb {
    margin-right: 20px; }
  .p-oem_planning--share__material__text dt {
    font-size: 12px;
    background: #e60012;
    color: #fff;
    display: inline-block;
    border-radius: 4px;
    padding: 2px 6px;
    margin-bottom: 10px; }
  .p-oem_planning--share__material__text dd {
    font-weight: bold;
    font-size: 16px; }

.p-oem_planning--cosmetics .c-subPage__h3 {
  margin-bottom: 30px; }

.p-oem_planning--cosmetics__icon {
  background: #e60012;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  display: inline-block;
  padding: 2px 10px;
  margin: 0 4px; }

.p-material--index__lists {
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

.p-material--index__list {
  display: block;
  width: 49%;
  margin-bottom: 20px;
  border: 1px solid #e5e5e5;
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
  position: relative;
  transition: all 0.2s ease-in-out; }
  @media screen and (max-width: 1024px) {
    .p-material--index__list {
      width: 100%;
      align-items: flex-start;
      padding-bottom: 10px;
      margin-bottom: 10px; } }
  .p-material--index__list:hover {
    transform: translateX(6px);
    opacity: 0.8; }
  .p-material--index__list::after {
    content: "";
    display: block;
    position: absolute;
    background: url("../images/commons/icon-primary-arrow.svg") no-repeat center center;
    background-size: contain;
    width: 10px;
    height: 16px;
    right: 12px;
    top: 50%;
    margin-top: -8px; }
  .p-material--index__list dl {
    -js-display: flex;
    display: flex;
    align-items: center; }
    .p-material--index__list dl dt {
      padding: 10px; }

.p-faq__list dt {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
  cursor: pointer;
  position: relative; }
  @media screen and (max-width: 1024px) {
    .p-faq__list dt {
      padding-right: 50px;
      font-size: 18px; } }
  .p-faq__list dt::after {
    width: 24px;
    height: 24px;
    content: "";
    position: absolute;
    top: calc(50% - 24px);
    right: 10px;
    background: url("../images/commons/icon-list.svg") no-repeat;
    background-size: contain;
    transform: rotate(90deg); }
  .p-faq__list dt.active::after {
    transform: rotate(-90deg); }

.p-faq__list dd {
  display: none; }

.p-news--index__menu {
  width: 810px;
  margin: 60px auto;
  -js-display: flex;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 1024px) {
    .p-news--index__menu {
      width: 100%;
      margin: 0 auto 30px;
      flex-direction: column; } }
  .p-news--index__menu__navi {
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    -js-display: flex;
    display: flex; }
    @media screen and (max-width: 1024px) {
      .p-news--index__menu__navi {
        width: 100%;
        margin: 0 auto 10px;
        flex-direction: column; } }
    .p-news--index__menu__navi a {
      display: block;
      padding: 10px 40px;
      text-decoration: none;
      border-right: 1px solid #e5e5e5; }
      @media screen and (max-width: 1024px) {
        .p-news--index__menu__navi a {
          width: 100%;
          padding: 4px 20px;
          border-right: none;
          border-bottom: 1px solid #e5e5e5; } }
      .p-news--index__menu__navi a:last-child {
        border-right: none; }
        @media screen and (max-width: 1024px) {
          .p-news--index__menu__navi a:last-child {
            border-bottom: none; } }
      .p-news--index__menu__navi a:hover, .p-news--index__menu__navi a.active {
        color: #e60012;
        font-weight: bold; }

.p-news--index__lists {
  width: 942px;
  margin: 0 auto 50px;
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  align-content: flex-start;
  flex-wrap: wrap; }
  @media screen and (max-width: 1024px) {
    .p-news--index__lists {
      width: 100%;
      margin: 0 auto 20px;
      flex-direction: column; } }

.p-news--detail__topics__header {
  font-size: 16px;
  font-weight: bold;
  padding: 14px 0; }

.p-news--detail__topics__body a {
  text-decoration: none; }

.p-news--detail__topics__list {
  margin-bottom: 20px; }
  .p-news--detail__topics__list__thumbnail {
    margin-bottom: 4px;
    border: 1px solid #e5e5e5;
    max-height: 140px;
    overflow: hidden;
    align-items: center;
    -js-display: flex;
    display: flex; }
    @media screen and (max-width: 1024px) {
      .p-news--detail__topics__list__thumbnail {
        max-height: 435px; } }
    .p-news--detail__topics__list__thumbnail img {
      width: 100%; }
  .p-news--detail__topics__list__title {
    position: relative;
    padding-left: 24px; }
    .p-news--detail__topics__list__title::before {
      content: "";
      background: url("../images/commons/icon-list.svg") no-repeat left top;
      background-size: cover;
      width: 16px;
      height: 16px;
      position: absolute;
      left: 0;
      top: 3px; }

.p-company--index__sign {
  display: flex;
  justify-content: flex-end; }
  .p-company--index__sign dt {
    margin-right: 20px; }
  .p-company--index__sign dd {
    display: flex;
    align-items: center; }

.p-company--access .c-subPage__content section {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 60px;
  margin-bottom: 60px; }

.p-company--access__info {
  display: flex;
  margin-bottom: 20px;
  line-height: 1.9; }
  .p-company--access__info__text {
    margin: 0 20px 0 0; }
    .p-company--access__info__text dt {
      font-weight: bold;
      font-size: 16px;
      margin-bottom: 4px; }
  .p-company--access__info__img {
    margin: 0 0 0 auto; }

.p-recruit--index .c-subPage__h3 {
  margin-bottom: 100px; }

.p-contact .c-form button,
.p-contact .c-form .c-button--send {
  width: 240px;
  font-size: 14px;
  margin: 0 10px; }
  @media screen and (max-width: 1024px) {
    .p-contact .c-form button,
    .p-contact .c-form .c-button--send {
      width: 100%;
      margin: 0 10px 10px 10px; } }

.p-contact .c-button--back {
  color: #5f5f5f;
  border: 2px solid #5f5f5f; }
  .p-contact .c-button--back::after {
    content: none; }

.p-contact .c-button--address {
  background: #e60012;
  color: #fff;
  padding-left: 30px;
  padding-right: 30px;
  border-radius: 5px; }

.p-contact .c-form__selects {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap; }
  .p-contact .c-form__selects .control {
    margin-right: 14px; }
  .p-contact .c-form__selects .control__label {
    padding-left: calc(24px + 0.6rem); }

.p-contact .c-form--option {
  -js-display: flex;
  display: flex;
  justify-content: center;
  padding: 20px 0 0; }
  .p-contact .c-form--option .control__label::before {
    border-radius: 50px; }

.p-contact .error {
  font-size: 12px;
  color: #e60012;
  margin: 10px 0;
  display: block; }

a[href^="tel:"] {
  cursor: default; }

.p-multilingual--zh {
  font-family: 'SimSun', "Microsoft YaHei", "微软雅黑", sans-serif; }

.p-multilingual__hgroup {
  text-align: center; }
  .p-multilingual__hgroup__title {
    font-size: 30px;
    font-weight: 500;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 30px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__hgroup__title {
        font-size: 22px; } }
    .p-multilingual__hgroup__title::after {
      content: "";
      display: block;
      position: absolute;
      width: 50px;
      height: 2px;
      background: #e60012;
      bottom: 0;
      left: 50%;
      margin-left: -25px; }

.p-multilingual table {
  width: 100%;
  border: 1px solid #e5e5e5;
  margin-bottom: 20px;
  font-size: 14px; }
  .p-multilingual table th, .p-multilingual table td {
    padding: 20px 15px;
    border: 1px solid #e5e5e5;
    background: #ffffff;
    text-align: left; }
  .p-multilingual table th {
    width: 30%;
    background: #fffcf3; }

.p-multilingual__mainvisual {
  margin-bottom: 30px; }
  .p-multilingual__mainvisual img {
    width: 100%; }

.p-multilingual__about {
  margin-bottom: 30px;
  width: 942px;
  margin: 0 auto 60px;
  text-align: center; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__about {
      width: 90%;
      min-width: inherit;
      text-align: left; } }
  .p-multilingual__about p {
    font-weight: bold;
    margin-bottom: 10px; }

.p-multilingual__business {
  background: #f8f8f8;
  position: relative;
  padding-top: 100px;
  min-width: 1100px;
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__business {
      width: 100%;
      min-width: inherit;
      padding-top: 60px; } }
  .p-multilingual__business::before {
    content: "";
    display: block;
    position: absolute;
    background: url("../images/en/common-bg-top-left.png") no-repeat left top;
    background-size: contain;
    width: 305px;
    height: 397px;
    z-index: 1;
    left: 0;
    top: 30px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__business::before {
        top: 0;
        width: 150px;
        height: 200px; } }
  .p-multilingual__business::after {
    content: "";
    display: block;
    position: absolute;
    background: url("../images/home/chara-bg-top-right.png") no-repeat right top;
    width: 400px;
    height: 589px;
    z-index: 0;
    right: 0;
    top: 0px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__business::after {
        background: url("../images/home/sp-chara-bg-top-right.png") no-repeat right top;
        background-size: contain;
        width: 140px;
        height: 130px;
        top: 0; } }
  .p-multilingual__business--inner {
    position: relative;
    padding-bottom: 150px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__business--inner {
        padding-bottom: 40px; } }
    .p-multilingual__business--inner::before {
      content: "";
      display: block;
      position: absolute;
      background: url("../images/home/chara-bg-bottom-left.png") no-repeat left top;
      background-size: contain;
      width: 560px;
      height: 475px;
      z-index: 0;
      left: 0;
      bottom: 0; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__business--inner::before {
          content: none; } }
    .p-multilingual__business--inner::after {
      content: "";
      display: block;
      position: absolute;
      background: url("../images/en/common-bg-bottom-right.png") no-repeat left top;
      background-size: contain;
      width: 615px;
      height: 328px;
      z-index: 0;
      right: 0;
      bottom: 0; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__business--inner::after {
          width: 300px;
          height: 150px; } }
  .p-multilingual__business__lists {
    width: 768px;
    margin: 0 auto;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__business__lists {
        width: 90%; } }
    .p-multilingual__business__lists__list {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 40px; }
      .p-multilingual__business__lists__list .thumb {
        width: 300px; }
        @media screen and (max-width: 1024px) {
          .p-multilingual__business__lists__list .thumb {
            width: 100%;
            margin-bottom: 10px; } }
      .p-multilingual__business__lists__list .text {
        margin: 0 0 0 auto;
        width: 430px; }
        @media screen and (max-width: 1024px) {
          .p-multilingual__business__lists__list .text {
            width: 100%; } }
        .p-multilingual__business__lists__list .text dt {
          font-size: 20px;
          font-weight: bold;
          margin-bottom: 10px; }

.p-multilingual__policy {
  width: 768px;
  margin: 0 auto 60px;
  text-align: center; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__policy {
      width: 90%;
      margin: 0 auto 60px;
      text-align: left; } }
  .p-multilingual__policy__read h3 {
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 10px; }
  .p-multilingual__policy__read p {
    margin-bottom: 20px; }
  .p-multilingual__policy__read dl {
    width: 630px;
    margin: 0 auto;
    padding: 40px;
    margin-bottom: 40px;
    text-align: left;
    border: 1px solid #e5e5e5;
    background: #fffcf3; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__policy__read dl {
        width: 100%;
        padding: 20px; } }
    .p-multilingual__policy__read dl dt {
      margin-bottom: 6px;
      font-weight: bold; }

.p-multilingual__info {
  background: #f8f8f8;
  position: relative;
  padding-top: 100px;
  min-width: 1100px;
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__info {
      width: 100%;
      min-width: inherit;
      padding-top: 60px; } }
  .p-multilingual__info--inner {
    position: relative;
    padding-bottom: 150px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__info--inner {
        padding-bottom: 40px; } }
    .p-multilingual__info--inner table {
      width: 768px;
      margin: 0 auto;
      position: relative;
      z-index: 1; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__info--inner table {
          width: 90%; } }

.p-multilingual__history {
  width: 768px;
  margin: 0 auto 60px; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__history {
      width: 90%; } }

.p-multilingual__inquiry {
  background: #f8f8f8;
  position: relative;
  padding-top: 100px;
  min-width: 1100px;
  margin-bottom: 0; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__inquiry {
      width: 100%;
      min-width: inherit;
      padding-top: 140px; } }
  .p-multilingual__inquiry .error {
    font-size: 12px;
    color: #e60012;
    margin: 10px 0;
    display: block; }
  .p-multilingual__inquiry--inner {
    position: relative;
    padding-bottom: 60px; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__inquiry--inner {
        padding-bottom: 40px; } }
  .p-multilingual__inquiry__form {
    width: 768px;
    background: #ffffff;
    padding: 30px 40px;
    margin: 0 auto 60px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 1024px) {
      .p-multilingual__inquiry__form {
        width: 90%;
        padding: 14px 20px; } }
    .p-multilingual__inquiry__form__read {
      text-align: center;
      margin-bottom: 20px; }
    .p-multilingual__inquiry__form .c-form__inputs {
      margin-bottom: 60px; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__inquiry__form .c-form__inputs {
          margin-bottom: 20px; } }
    .p-multilingual__inquiry__form .c-form__navi button {
      margin: 0 10px; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__inquiry__form .c-form__navi button {
          margin: 0 auto 10px; } }
    .p-multilingual__inquiry__form .c-button--back {
      color: #5f5f5f;
      border: 2px solid #5f5f5f;
      width: 300px; }
      .p-multilingual__inquiry__form .c-button--back:hover {
        background: #5f5f5f; }
      .p-multilingual__inquiry__form .c-button--back::after {
        content: none; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__inquiry__form .c-button--back {
          width: 90%; } }
    .p-multilingual__inquiry__form .c-button--send {
      width: 300px;
      margin: 0 auto; }
      @media screen and (max-width: 1024px) {
        .p-multilingual__inquiry__form .c-button--send {
          width: 90%; } }
    .p-multilingual__inquiry__form .c-button--address {
      background: #e60012;
      color: #fff;
      padding-left: 30px;
      padding-right: 30px;
      border-radius: 5px; }
  .p-multilingual__inquiry__complete section {
    margin-bottom: 20px; }

.p-multilingual__footer {
  color: #fff;
  text-align: center;
  padding: 20px 0;
  font-size: 11px;
  background: #e60012; }

.p-multilingual__info::before, .p-multilingual__inquiry::before {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/en/common-bg-top-left.png") no-repeat left top;
  background-size: contain;
  width: 305px;
  height: 397px;
  z-index: 1;
  left: 0;
  top: 30px; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__info::before, .p-multilingual__inquiry::before {
      top: 0;
      width: 150px;
      height: 200px; } }

.p-multilingual__info::after, .p-multilingual__inquiry::after {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/en/common-bg-top-right.png") no-repeat left top;
  background-size: contain;
  width: 393px;
  height: 417px;
  z-index: 0;
  right: 0;
  top: 0px; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__info::after, .p-multilingual__inquiry::after {
      width: 140px;
      height: 130px;
      top: 0; } }

.p-multilingual__info--inner::before, .p-multilingual__inquiry--inner::before {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/en/common-bg-bottom-left.png") no-repeat left top;
  background-size: contain;
  width: 212px;
  height: 217px;
  z-index: 0;
  left: 0;
  bottom: 0; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__info--inner::before, .p-multilingual__inquiry--inner::before {
      width: 106px;
      height: 219px; } }

.p-multilingual__info--inner::after, .p-multilingual__inquiry--inner::after {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/en/common-bg-bottom-right.png") no-repeat left top;
  background-size: contain;
  width: 615px;
  height: 328px;
  z-index: 0;
  right: 0;
  bottom: 0; }
  @media screen and (max-width: 1024px) {
    .p-multilingual__info--inner::after, .p-multilingual__inquiry--inner::after {
      content: none; } }



/*---------------------------------

  トップページ

---------------------------------*/

/* ========================
  mv
======================== */
.p-home .p-mv {
  border-bottom: 4px solid #e60012;
}

@media screen and (min-width: 1024px) {
  .p-home .p-mv {
    border-bottom-width: 5px;
  }
}

.p-home .p-mv__items {}

.p-home .p-mv__item {}


/* ========================
  business
======================== */
.p-home .p-business {}

.p-home .p-business__container {
  padding: 50px 26px 65px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__container {
    width: 940px;
    padding: 70px 0 25px;
    margin: 0 auto;
  }
}

.p-home .p-business__heading {
  text-align: center;
}

.p-home .p-business__heading-ja,
.p-home .p-business__heading-en {
  display: block;
}

.p-home .p-business__heading-ja {
  font-size: 22.5px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__heading-ja {
    font-size: 30px;
  }
}

.p-home .p-business__heading-en {
  margin-top: 2px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 9px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__heading-en {
    margin-top: 7px;
    font-size: 11px;
  }
}

.p-home .p-business__content {
  margin-top: 26px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__content {
    margin-top: 60px;
  }
}


.p-home .p-business__list {}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list {
    display: flex;
    margin: 0 -8px;
  }
}

.p-home .p-business__list-item {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list-item {
    display: block;
    width: 25%;
    padding: 0 8px;
  }
}

.p-home .p-business__list-item:nth-child(n + 2) {
  margin-top: 24px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list-item:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-home .p-business__icon {
  display: flex;
  justify-content: center;
  min-width: 64px;
  margin-right: 30px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__icon {
    align-items: center;
    min-width: auto;
    min-height: 88px;
    margin-right: 0;
  }
}

.p-home .p-business__icon--01 img {
  width: 50px;
}

.p-home .p-business__icon--02 img {
  width: 55px;
}

.p-home .p-business__icon--03 img {
  width: 64px;
}

.p-home .p-business__icon--04 img {
  width: 54px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__icon--01 img {
    width: 71px;
  }
  
  .p-home .p-business__icon--02 img {
    width: 71px;
  }
  
  .p-home .p-business__icon--03 img {
    width: 88px;
  }
  
  .p-home .p-business__icon--04 img {
    width: 66px;
    margin-bottom: -7px;
  }
}

.p-home .p-business__list-content {
  width: calc(100% - (64px + 30px));
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list-content {
    width: auto;
    margin-top: 43px;
    text-align: center;
  }
}

.p-home .p-business__list-content dt {
  font-size: 15.5px;
  font-weight: 500;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list-content dt {
    font-size: 18px;
  }
}

.p-home .p-business__list-content dd {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-business__list-content dd {
    margin-top: 25px;
    line-height: 2.25;
  }
}


/* ========================
  features
======================== */
.p-home .p-features {
  background-image: url('../images/home/features_bg.png');
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features {
    background-image: url('../images/home/features_bg_md.png');
  }
}

.p-home .p-features__container {
  padding-top: 75px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__container {
    padding-top: 235px;
  }
}

.p-home .p-features__heading {
  text-align: center;
}

.p-home .p-features__heading-ja,
.p-home .p-features__heading-en {
  display: block;
}

.p-home .p-features__heading-ja {
  font-size: 22.5px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__heading-ja {
    font-size: 30px;
  }
}

.p-home .p-features__heading-en {
  margin-top: 2px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 9px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__heading-en {
    margin-top: 7px;
    font-size: 11px;
  }
}

.p-home .p-features__lede {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.714;
  text-align: center;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__lede {
    margin-top: 30px;
    font-size: 16px;
    font-weight: 400;
    line-height: 2.0625;
  }
}

.p-home .p-features__wrap {
	background: #F8F8F8;
}

.p-home .p-features__items {
  margin-top: 32px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__items {
    display: flex;
    flex-wrap: wrap;
    margin: 50px auto 0;
    width: 980px;
  }
}

.p-home .p-features__item {
	position: relative;
	
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__item {
    width: 470px;
    margin: 0 10px 20px;
    /* padding: 0 15px; */
    border: 1px solid #e5e5e5;
  }

  .p-home .p-features__item:nth-child(2n) {
    /*border-left: 1px solid #e5e5e5;*/
  }

  .p-home .p-features__item:nth-child(n + 3) {
    /*border-top: 1px solid #e5e5e5;*/
  }
}

.p-home .p-features__img {}

.p-home .p-features__ico {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 50px;
    height: 50px;
    text-align: center;
    padding: 14px 0 0;
    background: #e60012;
    color: #fff;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 400;
}

.p-home .p-features__content {
  padding: 27px 30px 30px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__content {
    padding: 40px;
  }
}

.p-home .p-features__content dt,
.p-home .p-features__content dd {
  letter-spacing: 0.025em;
}

.p-home .p-features__content dt {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.3;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__content dt {
    font-size: 20px;
    line-height: 1.45;
  }
}

.p-home .p-features__content dt span {
  color: #e60012;
}

.p-home .p-features__content dd {
  margin-top: 11px;
  font-size: 13px;
  line-height: 1.692;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__content dd {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 400;
    line-height: 2.071;
  }
}

.p-home .p-features__link {
  padding: 35px 52px 51px;
  text-align: center;
  /*border-top: 1px solid #e5e5e5;*/
  background-image: url('../images/home/features_button_bg.png');
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__link {
    padding: 60px 0 111px;
    background-image: url('../images/home/features_button_bg_md.png');
    background-position: 50% 50%;
  }
}

.p-home .p-features__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #e60012;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-features__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-home .p-features__link a:hover {
    color: #fff;
    border-color: #e60012;
    background-color: #e60012;
  }
}


/* ========================
  case
======================== */
.p-home .p-case {
  background-color: #e60012;
}

.p-home .p-case__container {
  padding: 38px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__container {
    width: 940px;
    padding: 90px 0 95px;
    margin: 0 auto;
  }
}

.p-home .p-case__heading {
  text-align: center;
}

.p-home .p-case__heading-ja,
.p-home .p-case__heading-en {
  display: block;
}

.p-home .p-case__heading-ja {
  font-size: 22.5px;
  font-size: 24px;
  font-weight: 500;
  color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__heading-ja {
    font-size: 30px;
  }
}

.p-home .p-case__heading-en {
  margin-top: 2px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 9px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__heading-en {
    margin-top: 7px;
    font-size: 11px;
  }
}

.p-home .p-case__item {
  margin-top: 42px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__item {
    margin-top: 76px;
  }
}

.p-home .p-case__list {}

.p-home .p-case__list-item {
  position: relative;
  display: flex;
}

.p-home .p-case__list-item:nth-child(n + 2) {
  margin-top: 48px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item:nth-child(n + 2) {
    margin-top: 128px;
  }
}

.p-home .p-case__list-item::before {
  position: absolute;
  top: -16px;
  left: 0;
  content: '';
  background-size: contain;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item::before {
    top: -34px;
  }
}

.p-home .p-case__list-item--01::before {
  width: 155px;
  height: 32px;
  background-image: url('../images/oversea_lab/case_text01.png');
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item--01::before {
    width: 234px;
    height: 49px;
  }
}

.p-home .p-case__list-item--02::before {
  width: 159px;
  height: 32px;
  background-image: url('../images/oversea_lab/case_text02.png');
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item--02::before {
    width: 240px;
    height: 49px;
  }
}

.p-home .p-case__list-item--03::before {
  width: 159px;
  height: 33px;
  background-image: url('../images/oversea_lab/case_text03.png');
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item--03::before {
    width: 239px;
    height: 49px;
  }
}

.p-home .p-case__list-item--04::before {
  width: 160px;
  height: 33px;
  background-image: url('../images/oversea_lab/case_text04.png');
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__list-item--04::before {
    width: 241px;
    height: 49px;
  }
}

.p-home .p-case__img {
  position: relative;
  width: 116px;
  margin-right: 19px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__img {
    width: 175px;
    margin-right: 30px;
  }
}

.p-home .p-case__content {
  width: calc(100% - (116px + 19px));
  color: #fff;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__content {
    width: calc(100% - (175px + 30px));
  }
}

.p-home .p-case__category {
  font-size: 10px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__category {
    font-size: 12px;
  }
}

.p-home .p-case__ttl {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__ttl {
    margin-top: 15px;
    font-size: 18px;
    line-height: 1.5;
  }
}

.p-home .p-case__body {
  margin-top: 9px;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__body {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.833;
  }
}

.p-home .p-case__link {
  padding: 0 30px;
  margin-top: 28px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__link {
    padding: 0;
    margin-top: 50px;
  }
}

.p-home .p-case__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-home .p-case__link a:hover {
    color: #e60012;
    border-color: #fff;
    background-color: #fff;
  }
}
.p-home .p-case__banner {
  display: block;
  margin-top: 35px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-case__banner {
    margin-top: 70px;
  }
}


/* ========================
  news
======================== */
.p-home .p-news {
  background-image: url('../images/home/news_bg.png');
  background-size: 27px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news {
    background-size: 47px;
  }
}

.p-home .p-news__container {
  padding: 43px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__container {
    width: 940px;
    padding: 80px 0 100px;
    margin: 0 auto;
  }
}

.p-home .p-news__heading {
  text-align: center;
}

.p-home .p-news__heading-ja,
.p-home .p-news__heading-en {
  display: block;
}

.p-home .p-news__heading-ja {
  font-size: 22.5px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__heading-ja {
    font-size: 30px;
  }
}

.p-home .p-news__heading-en {
  margin-top: 2px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 9px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__heading-en {
    margin-top: 7px;
    font-size: 11px;
  }
}

.p-home .p-news__content {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__content {
    margin-top: 43px;
  }
}

.p-home .p-news__link {
  margin-top: 25px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__link {
    margin-top: 45px;
  }
}

.p-home .p-news__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 240px;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #e60012;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-home .p-news__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-home .p-news__link a:hover {
    color: #fff;
    border-color: #e60012;
    background-color: #e60012;
  }
}

.p-home .c-newslist {
  display: flex;
  flex-wrap: wrap;
  margin-right: -9px;
  margin-left: -9px;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist {
    margin-right: -18px;
    margin-left: -18px;
  }
}

.p-home .c-newslist__item {
  width: 50%;
  padding: 0 9px;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist__item {
    width: 25%;
    padding: 0 18px;
  }
}

.p-home .c-newslist__item:nth-child(n + 3) {
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist__item:nth-child(n + 3) {
    margin-top: 0;
  }

  .p-home .c-newslist__item:nth-child(n + 5) {
    margin-top: 50px;
  }
}

.p-home .c-newslist__link {
  text-decoration: none;
}

.p-home .c-newslist__header {
  position: relative;
}

.p-home .c-newslist__thumb {}

.p-home .c-newslist__category {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1px 9px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.025em;
  background-color: #eee;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist__category {
    padding: 3px 16px;
  }
}

.p-home .c-newslist__category.original {
  color: #fff;
  background-color: #558f34;
}

.p-home .c-newslist__category.planning {
  color: #fff;
  background-color: #e37037;
}

.p-home .c-newslist__category.column {
  color: #fff;
  background-color: #ee5c93;
}

.p-home .c-newslist__category.info {
  color: #fff;
  background-color: #e60012;
}

.p-home .c-newslist__content {
  margin-top: 12px;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist__content {
    margin-top: 16px;
  }
}

.p-home .c-newslist__date {
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.05em;
}

.p-home .c-newslist__heading {
  margin-top: 3px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-home .c-newslist__heading {
    margin-top: 7px;
    font-size: 14px;
  }
}



/*---------------------------------

  王子食品の特長

---------------------------------*/

/* ========================
  mv
======================== */
.p-about .p-mv {
  position: relative;
  background-image: url('../images/about/mv_img.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-about .p-mv {
    background-image: url('../images/about/mv_img_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-about .p-mv__container {
  padding: 45px 20px 274px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-mv__container {
    padding: 100px 0 165px;
  }
}

.p-about .p-mv__text {
  text-align: center;
}

.p-about .p-mv__text span {
  display: inline-block;
  padding: 4px;
  font-size: 13px;
  font-weight: 500;
  color: #e60012;
  letter-spacing: 0.025em;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
}

@media screen and (min-width: 1024px) {
  .p-about .p-mv__text span {
    padding: 4px 14px;
    font-size: 16px;
  }
}

.p-about .p-mv__heading {
  margin-top: 15px;
  font-size: 35px;
  font-weight: 500;
  line-height: 1.142;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-about .p-mv__heading {
    font-size: 40px;
    line-height: 1.3;
  }
}

.p-about .p-mv__heading span {
  color: #e60012;
}

.p-about .p-mv__body {
  margin-top: 19px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-about .p-mv__body {
    margin-top: 17px;
    font-size: 14px;
    line-height: 2.2;
    text-align: center;
  }
}


/* ========================
  features
======================== */
.p-about .p-features {
  margin-top: -25px;
  background-color: #f8f8f8;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features {
    margin-top: -70px;
  }
}

.p-about .p-features__container {
  padding: 57px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__container {
    width: 940px;
    padding: 123px 0 100px;
    margin: 0 auto;
  }
}

.p-about .p-features__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__heading {
    font-size: 28px;
  }
}

.p-about .p-features__content {
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__content {
    margin-top: 53px;
  }
}

.p-about .p-features__item {}

@media screen and (min-width: 1024px) {
  .p-about .p-features__item {
    display: flex;
  }
}

.p-about .p-features__item:nth-child(n + 2) {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-about .p-features__item:nth-child(odd) {
    flex-direction: row-reverse;
  }
}

.p-about .p-features__img {
  margin: 0 -20px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__img {
    width: 50%;
    margin: 0;
  }
}

.p-about .p-features__inner {
  position: relative;
  padding: 45px 25px;
  margin-top: -25px;
  border: 1px solid #e5e5e5;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__inner {
    width: 50%;
    padding: 43px 50px 40px;
    margin-top: 0;
  }
}

.p-about .p-features__ttl {
  position: relative;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.388;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__ttl {
    font-size: 22px;
    line-height: 1.454;
  }
}

.p-about .p-features__ttl::before {
  position: absolute;
  top: 0;
  left: -25px;
  width: 2px;
  height: 100%;
  content: '';
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__ttl::before {
    left: -51px;
  }
}

.p-about .p-features__ttl span {
  color: #e60012;
}

.p-about .p-features__body {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__body {
    margin-top: 17px;
    font-size: 14px;
    line-height: 2.2;
  }
}

.p-about .p-features__link {
  margin-top: 20px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__link {
    margin-top: 25px;
  }
}

.p-about .p-features__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 190px;
  height: 50px;
  font-size: 14px;
  font-weight: 500;
  color: #e60012;
  letter-spacing: 0.03em;
  text-decoration: none;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-features__link a {
    width: 198px;
    height: 56px;
    font-weight: 600;
    border-width: 2px;
    border-radius: 28px;
    transition: 0.25s;
  }

  .p-about .p-features__link a:hover {
    color: #fff;
    border-color: #e60012;
    background-color: #e60012;
  }
}


/* ========================
  business
======================== */
.p-about .p-business {}

.p-about .p-business__container {
  padding: 42px 26px 47px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__container {
    width: 940px;
    padding: 90px 0;
    margin: 0 auto;
  }
}

.p-about .p-business__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__heading {
    font-size: 28px;
  }
}

.p-about .p-business__content {
  margin-top: 26px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__content {
    margin-top: 47px;
  }
}


.p-about .p-business__list {}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list {
    display: flex;
    margin: 0 -8px;
  }
}

.p-about .p-business__list-item {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list-item {
    display: block;
    width: 25%;
    padding: 0 8px;
  }
}

.p-about .p-business__list-item:nth-child(n + 2) {
  margin-top: 24px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list-item:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-about .p-business__icon {
  display: flex;
  justify-content: center;
  min-width: 64px;
  margin-right: 30px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__icon {
    align-items: center;
    min-width: auto;
    min-height: 88px;
    margin-right: 0;
  }
}

.p-about .p-business__icon--01 img {
  width: 50px;
}

.p-about .p-business__icon--02 img {
  width: 55px;
}

.p-about .p-business__icon--03 img {
  width: 64px;
}

.p-about .p-business__icon--04 img {
  width: 54px;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__icon--01 img {
    width: 71px;
  }
  
  .p-about .p-business__icon--02 img {
    width: 71px;
  }
  
  .p-about .p-business__icon--03 img {
    width: 88px;
  }
  
  .p-about .p-business__icon--04 img {
    width: 66px;
    margin-bottom: -7px;
  }
}

.p-about .p-business__list-content {
  width: calc(100% - (64px + 30px));
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list-content {
    width: auto;
    margin-top: 43px;
    text-align: center;
  }
}

.p-about .p-business__list-content dt {
  font-size: 15.5px;
  font-weight: 500;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list-content dt {
    font-size: 18px;
  }
}

.p-about .p-business__list-content dd {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-about .p-business__list-content dd {
    margin-top: 25px;
    line-height: 2.25;
  }
}


/*---------------------------------

  化粧品OEM

---------------------------------*/

/* ========================
  mv
======================== */
.p-cosmetics .p-mv {
  position: relative;
  background-image: url('../images/cosmetics/mv_img.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-mv {
    background-image: url('../images/cosmetics/mv_img_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-cosmetics .p-mv__container {
  padding: 72px 0 98px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-mv__container {
    padding: 121px 0 156px;
  }
}

.p-cosmetics .p-mv__heading {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  text-shadow: 0 0 11.36px rgba(68, 69, 74, 0.5);
}

@media screen and (min-width: 1024px) { 
  .p-cosmetics .p-mv__heading {
    font-size: 45px;
  }
}


/* ========================
  intro
======================== */
.p-cosmetics .p-intro {
  margin-top: -35px;
  background-image: url('../images/cosmetics/intro_bg.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro {
    margin-top: -50px;
    background-image: url('../images/cosmetics/intro_bg_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-cosmetics .p-intro__container {
  padding: 68px 25px 281px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro__container {
    padding: 112px 0 404px;
  }
}

.p-cosmetics .p-intro__heading {
  position: relative;
  font-weight: 500;
  text-align: center;
}

.p-cosmetics .p-intro__heading::before {
  position: absolute;
  bottom: -18px;
  left: 50%;
  width: 33px;
  height: 3px;
  content: '';
  background-color: #e60012;
  transform: translateX(-50%);
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro__heading::before {
    bottom: -23px;
    width: 23px;
    height: 2px;
  }
}


.p-cosmetics .p-intro__heading-sub,
.p-cosmetics .p-intro__heading-main {
  display: block;
}

.p-cosmetics .p-intro__heading-sub {
  font-size: 14px;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro__heading-sub {
    font-size: 15px;
  }
}

.p-cosmetics .p-intro__heading-main {
  margin-top: 6px;
  font-size: 24px;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro__heading-main {
    margin-top: 11px;
    font-size: 28px;
  }
}

.p-cosmetics .p-intro__lede {
  margin-top: 32px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-intro__lede {
    margin-top: 36px;
    text-align: center;
    line-height: 2.15;
  }
}



/* ========================
  diff
======================== */
.p-cosmetics .p-diff {}

.p-cosmetics .p-diff__container {
  padding: 42px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__container {
    width: 940px;
    padding: 90px 0 100px;
    margin: 0 auto;
  }
}

.p-cosmetics .p-diff__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__heading {
    font-size: 28px;
  }
}

.p-cosmetics .p-diff__items {
  margin-top: 22px;
  display: flex;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__items {
    margin-top: 51px;
  }
}

.p-cosmetics .p-diff__item {}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__item {
    /* display: flex; */
    width: 33%;
  }
}

.p-cosmetics .p-diff__item:nth-child(n + 2) {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-cosmetics .p-diff__item:nth-child(odd) {
    /* flex-direction: row-reverse; */
  }
}

.p-cosmetics .p-diff__img {}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__img {
    width: 50%;
  }
}

.p-cosmetics .p-diff__content {
  padding: 27px 27px 27px;
  /* color: #fff; */
  /* background-color: #e60012; */
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__content {
    /* width: 33%; */
    padding: 0 20px;
  }
}

.p-cosmetics .p-diff__content dt {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.25;
  color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__content dt {
    font-size: 22px;
    line-height: 1.454;
  }
}

.p-cosmetics .p-diff__content dd {
  margin-top: 11px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-diff__content dd {
    margin-top: 18px;
    font-size: 14px;
    line-height: 2.15;
  }
}


/* ========================
  line up
======================== */
.p-cosmetics .p-lineup {
  background-color: #f8f8f8;
}

.p-cosmetics .p-lineup__container {
  padding: 36px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__container {
    width: 940px;
    padding: 90px 0 106px;
    margin: 0 auto;
  }
}

.p-cosmetics .p-lineup__heading {
  text-align: center;
}

.p-cosmetics .p-lineup__heading-en,
.p-cosmetics .p-lineup__heading-ja {
  display: block;
}

.p-cosmetics .p-lineup__heading-en {
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 25px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__heading-en {
    font-size: 28px;
  }
}

.p-cosmetics .p-lineup__heading-ja {
  margin-top: 14px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__heading-ja {
    margin-top: 25px;
  }
}

.p-cosmetics .p-lineup__content {
  margin-top: 27px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__content {
    margin-top: 38px;
  }
}

.p-cosmetics .p-lineup__list {}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__list {
    display: flex;
    margin: 0 -17px;
  }
}

.p-cosmetics .p-lineup__list-item {}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__list-item {
    width: 33.33%;
    padding: 0 17px;
  }
}

.p-cosmetics .p-lineup__list-item:nth-child(n + 2) {
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__list-item:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-cosmetics .p-lineup__list-inner {
  position: relative;
  border: 1px solid #e5e5e5;
  background-color: #fff;
}

.p-cosmetics .p-lineup__num {
  position: absolute;
  top: 10px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.03em;
  border-radius: 50%;
  background-color: rgba(230, 0, 18, 0.1);
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__num {
    top: 15px;
    left: 15px;
    width: 37px;
    height: 37px;
    font-size: 12px;
  }
}

.p-cosmetics .p-lineup__item {
  padding: 25px 47px 24px;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__item {
    min-height: 271px;
    padding: 61px 40px 43px;
  }
}

.p-cosmetics .p-lineup__item dt {
  font-size: 14px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__item dt {
    font-size: 16px;
    text-align: center;
  }
}

.p-cosmetics .p-lineup__item dd {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.55;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__item dd {
    margin-top: 12px;
    font-size: 12px;
    line-height: 2.17;
    text-align: center;
  }
}

.p-cosmetics .p-lineup__main {
  display: flex;
  align-items: center;
  padding: 23px 30px 28px 23px;
  background-color: #f8f8f8;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__main {
    display: block;
    min-height: 166px;
    padding: 24px 40px 40px;
  }
}

.p-cosmetics .p-lineup__main dt {
  width: 75px;
  margin-right: 26px;
  font-size: 12px;
  font-weight: 600;
  color: #e60012;
  text-align: center;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__main dt {
    width: auto;
    margin-right: 0;
    font-size: 14px;
  }
}

.p-cosmetics .p-lineup__main dd {
  width: calc(100% - (75px + 26px));
  font-size: 11px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__main dd {
    width: auto;
    margin-top: 14px;
    font-size: 12px;
    line-height: 1.84;
  }
}

.p-cosmetics .p-lineup__service {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service {
    margin-top: 48px;
  }
}

.p-cosmetics .p-lineup__service-heading {
  text-align: center;
}

.p-cosmetics .p-lineup__service-heading span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-heading span {
    padding: 6px 22px 7px;
    font-size: 14px;
  }
}

.p-cosmetics .p-lineup__service-content {
  padding: 30px;
  margin-top: -13px;
  background-color: #f1f1f1;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-content {
    display: flex;
    justify-content: space-between;
    padding: 50px;
    margin-top: -19px;
  }
}

.p-cosmetics .p-lineup__service-content dl {
  padding: 20px 21px 23px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-content dl {
    width: 261px;
    padding: 29px 35px 41px;
  }
}

.p-cosmetics .p-lineup__service-content dl:nth-child(n + 2) {
  margin-top: 10px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-content dl:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-cosmetics .p-lineup__service-content dt {
  font-size: 14px;
  font-weight: 500;
  color: #e60012;
  text-align: center;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-content dt {
    font-weight: 600;
  }
}

.p-cosmetics .p-lineup__service-content dd {
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.416;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-lineup__service-content dd {
    margin-top: 10px;
    line-height: 1.84;
  }
}


/* ========================
  case
======================== */
.p-cosmetics .p-case {
  background-color: #e60012;
}

.p-cosmetics .p-case__container {
  padding: 38px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__container {
    width: 940px;
    padding: 90px 0 95px;
    margin: 0 auto;
  }
}

.p-cosmetics .p-case__heading {
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__heading {
    font-size: 28px;
  }
}

.p-cosmetics .p-case__item {
  margin-top: 42px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__item {
    margin-top: 76px;
  }
}

.p-cosmetics .p-case__list {}

.p-cosmetics .p-case__list-item {
  position: relative;
  display: flex;
}

.p-cosmetics .p-case__list-item:nth-child(n + 2) {
  margin-top: 48px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item:nth-child(n + 2) {
    margin-top: 128px;
  }
}

.p-cosmetics .p-case__list-item::before {
  position: absolute;
  top: -16px;
  left: 0;
  content: '';
  background-size: contain;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item::before {
    top: -34px;
  }
}

.p-cosmetics .p-case__list-item--01::before {
  width: 155px;
  height: 32px;
  background-image: url('../images/cosmetics/case_text01.png');
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item--01::before {
    width: 234px;
    height: 49px;
  }
}

.p-cosmetics .p-case__list-item--02::before {
  width: 159px;
  height: 32px;
  background-image: url('../images/cosmetics/case_text02.png');
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item--02::before {
    width: 240px;
    height: 49px;
  }
}

.p-cosmetics .p-case__list-item--03::before {
  width: 159px;
  height: 33px;
  background-image: url('../images/cosmetics/case_text03.png');
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item--03::before {
    width: 239px;
    height: 49px;
  }
}

.p-cosmetics .p-case__list-item--04::before {
  width: 160px;
  height: 33px;
  background-image: url('../images/cosmetics/case_text04.png');
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__list-item--04::before {
    width: 241px;
    height: 49px;
  }
}

.p-cosmetics .p-case__img {
  position: relative;
  width: 116px;
  margin-right: 19px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__img {
    width: 175px;
    margin-right: 30px;
  }
}

.p-cosmetics .p-case__content {
  width: calc(100% - (116px + 19px));
  color: #fff;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__content {
    width: calc(100% - (175px + 30px));
  }
}

.p-cosmetics .p-case__category {
  font-size: 10px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__category {
    font-size: 12px;
  }
}

.p-cosmetics .p-case__ttl {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__ttl {
    margin-top: 15px;
    font-size: 18px;
    line-height: 1.5;
  }
}

.p-cosmetics .p-case__body {
  margin-top: 9px;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__body {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.833;
  }
}

.p-cosmetics .p-case__link {
  padding: 0 30px;
  margin-top: 28px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__link {
    padding: 0;
    margin-top: 50px;
  }
}

.p-cosmetics .p-case__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-case__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-cosmetics .p-case__link a:hover {
    color: #e60012;
    border-color: #fff;
    background-color: #fff;
  }
}

/* ========================
  flow
======================== */
.p-cosmetics .p-flow {}

.p-cosmetics .p-flow__container {
  padding: 43px 20px 49px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__container {
    width: 940px;
    padding: 93px 0 98px;
    margin: 0 auto;
  }
}

.p-cosmetics .p-flow__heading {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__heading {
    font-size: 28px;
  }
}

.p-cosmetics .p-flow__list {
  display: flex;
  flex-wrap: wrap;
  margin: 36px -6px 0;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list {
    margin: 74px -16px 0;
  }
}

.p-cosmetics .p-flow__list-item {
  width: 50%;
  padding: 0 6px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-item {
    position: relative;
    width: 25%;
    padding: 0 16px;
  }

  .p-cosmetics .p-flow__list-item:not(:nth-child(4)):not(:last-child)::before {
    position: absolute;
    top: 27px;
    right: 0;
    width: 9px;
    height: 13px;
    content: '';
    background-image: url('/assets/images/cosmetics/flow_arrow_icon.svg');
    background-size: contain;
  }
}

.p-cosmetics .p-flow__list-item:nth-child(n + 3) {
  margin-top: 33px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-item:nth-child(n + 3) {
    margin-top: 0;
  }

  .p-cosmetics .p-flow__list-item:nth-child(n + 5) {
    margin-top: 77px;
  }
}

.p-cosmetics .p-flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
}

.p-cosmetics .p-flow__icon--01 img {
  width: 68px;
}

.p-cosmetics .p-flow__icon--02 img {
  width: 61px;
}

.p-cosmetics .p-flow__icon--03 img {
  width: 52px;
}

.p-cosmetics .p-flow__icon--04 img {
  width: 59px;
}

.p-cosmetics .p-flow__icon--05 img {
  width: 54px;
}

.p-cosmetics .p-flow__icon--06 img {
  width: 70px;
}

.p-cosmetics .p-flow__icon--07 img {
  width: 84px;
}

.p-cosmetics .p-flow__list-content {
  margin-top: 12px;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-content {
    margin-top: 35px;
  }
}

.p-cosmetics .p-flow__list-heading {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-heading {
    height: 30px;
  }
}

.p-cosmetics .p-flow__list-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.03em;
  background-color: #e60012;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-num {
    margin-right: 12px;
  }
}

.p-cosmetics .p-flow__list-text {
  width: calc(100% - (30px + 8px));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.23;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-text {
    width: calc(100% - (30px + 12px));
    font-size: 14px;
    font-weight: 600;
  }
}

.p-cosmetics .p-flow__list-body {
  margin-top: 7px;
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-cosmetics .p-flow__list-body {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.72;
  }
}


/*---------------------------------

  健康食品OEM

---------------------------------*/

/* ========================
  mv
======================== */
.p-healthfood .p-mv {
  position: relative;
  background-image: url('../images/healthfood/mv_img.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-mv {
    background-image: url('../images/healthfood/mv_img_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-healthfood .p-mv__container {
  padding: 72px 0 98px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-mv__container {
    padding: 121px 0 156px;
  }
}

.p-healthfood .p-mv__heading {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  text-shadow: 0 0 11.36px rgba(68, 69, 74, 0.5);
}

@media screen and (min-width: 1024px) { 
  .p-healthfood .p-mv__heading {
    font-size: 45px;
  }
}


/* ========================
  intro
======================== */
.p-healthfood .p-intro {
  margin-top: -35px;
  background-image: url('../images/healthfood/intro_bg.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro {
    margin-top: -50px;
    background-image: url('../images/healthfood/intro_bg_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-healthfood .p-intro__container {
  padding: 96px 25px 358px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__container {
    padding: 115px 0 660px;
  }
}

.p-healthfood .p-intro__heading {
  position: relative;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__heading {
    font-size: 28px;
  }
}

.p-healthfood .p-intro__heading::before {
  position: absolute;
  bottom: -18px;
  left: 50%;
  width: 33px;
  height: 3px;
  content: '';
  background-color: #e60012;
  transform: translateX(-50%);
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__heading::before {
    bottom: -23px;
    width: 23px;
    height: 2px;
  }
}

.p-healthfood .p-intro__heading-sub,
.p-healthfood .p-intro__heading-main {
  display: block;
}

.p-healthfood .p-intro__heading-sub {
  font-size: 14px;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__heading-sub {
    font-size: 16px;
  }
}

.p-healthfood .p-intro__heading-main {
  margin-top: 6px;
  font-size: 24px;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__heading-main {
    margin-top: 11px;
    font-size: 28px;
  }
}

.p-healthfood .p-intro__lede {
  margin-top: 32px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-intro__lede {
    margin-top: 37px;
    text-align: center;
    line-height: 2.15;
  }
}


/* ========================
  diff
======================== */
.p-healthfood .p-diff {}

.p-healthfood .p-diff__container {
  padding: 42px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__container {
    width: 940px;
    padding: 90px 0 100px;
    margin: 0 auto;
  }
}

.p-healthfood .p-diff__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__heading {
    font-size: 28px;
  }
}

.p-healthfood .p-diff__items {
  margin-top: 22px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__items {
    margin-top: 51px;
  }
}

.p-healthfood .p-diff__items:nth-of-type(n + 2) {
  margin-top: 40px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__items:nth-of-type(n + 2) {
    margin-top: 80px;
  }
}

.p-healthfood .p-diff__item {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__item {
    display: flex;
  }

  .p-healthfood .p-diff__item--reverse {
    flex-direction: row-reverse;
  }
}

.p-healthfood .p-diff__img {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__img {
    width: 50%;
  }
}

.p-healthfood .p-diff__content {
  padding: 27px 27px 37px;
  color: #fff;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    padding: 0 48px;
  }
}

.p-healthfood .p-diff__content dt {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__content dt {
    font-size: 22px;
    line-height: 1.454;
  }
}

.p-healthfood .p-diff__content dd {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__content dd {
    margin-top: 18px;
    font-size: 14px;
    line-height: 2.15;
  }
}

.p-healthfood .p-diff__content a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  margin: 25px 6px 0;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  text-decoration: none;
  border: 1px solid #fff;
  border-radius: 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__content a {
    height: 66px;
    margin: 35px 0 0;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.03em;
    border-width: 2px;
    transition: 0.25s;
  }

  .p-healthfood .p-diff__content a:hover {
    color: #e60012;
    border-color: #fff;
    background-color: #fff;
  }
}

.p-healthfood .p-diff__materials {
  margin-top: 60px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__materials {
    margin: 80px -18px 0;
  }
}

.p-healthfood .p-diff__materials-heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__materials-heading {
    font-size: 28px;
  }
}

.p-healthfood .p-diff__materials-inner {
  margin-top: 22px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__materials-inner {
    display: flex;
    margin-top: 51px;
  }
}

.p-healthfood .p-diff__material {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__material {
    width: 50%;
    padding: 0 18px;
  }
}

.p-healthfood .p-diff__material:nth-child(n + 2) {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__material:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-healthfood .p-diff__material-img {}

.p-healthfood .p-diff__material-content {
  margin-top: 13px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__material-content {
    margin-top: 23px;
  }
}

.p-healthfood .p-diff__material-content dt {
  font-size: 16px;
  font-weight: 500;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__material-content dt {
    font-size: 18px;
  }
}

.p-healthfood .p-diff__material-content dd {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.54;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__material-content dd {
    margin-top: 9px;
    font-size: 14px;
    line-height: 2.15;
  }
}

.p-healthfood .p-diff__links {
  margin-top: 32px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__links {
    display: flex;
    justify-content: center;
  }
}

.p-healthfood .p-diff__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 56px;
  font-size: 15px;
  font-weight: 500;
  color: #e60012;
  letter-spacing: 0.025em;
  text-decoration: none;
  border: 1px solid #e60012;
  border-radius: 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__link {
    width: 361px;
    height: 66px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.03em;
    border-width: 2px;
    transition: 0.25s;
  }

  .p-healthfood .p-diff__link:hover {
    color: #fff;
    border-color: #e60012;
    background-color: #e60012;
  }
}

.p-healthfood .p-diff__link:nth-child(n + 2) {
  margin-top: 16px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__link:nth-child(n + 2) {
    margin-top: 0;
    margin-left: 20px;
  }
}

.p-healthfood .p-diff__intro {
  padding: 27px 29px 36px;
  border: 2px solid #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro {
    display: flex;
    flex-direction: row-reverse;
    padding: 60px;
    border-width: 3px;
  }
}

.p-healthfood .p-diff__group01 {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__group01 {
    margin-top: -5px;
    margin-left: 45px;
  }
}

.p-healthfood .p-diff__intro-heading {
  margin-bottom: 16px;
  font-size: 17px;
  font-weight: 500;
  color: #e60012;
  line-height: 1.24;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-heading {
    margin-bottom: 21px;
    font-size: 22px;
    line-height: 1.46;
  }
}

.p-healthfood .p-diff__intro-body {
  font-size: 10px;
  line-height: 1.6;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-body {
    font-size: 12px;
    line-height: 2.1;
  }
}

.p-healthfood .p-diff__intro-body:nth-of-type(n + 2) {
  margin-top: 8px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-body:nth-of-type(n + 2) {
    margin-top: 15px;
  }
}

.p-healthfood .p-diff__group02 {
  margin-top: 28px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__group02 {
    margin-top: 0;
  }
}

.p-healthfood .p-diff__intro-img {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-img {
    width: 339px;
  }
}

.p-healthfood .p-diff__intro-name {
  margin-top: 13px;
  font-size: 14px;
  line-height: 1.392;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-name {
    margin-top: 23px;
    font-size: 16px;
  }
}

.p-healthfood .p-diff__intro-name span {
  font-size: 10px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-diff__intro-name span {
    display: inline-block;
    margin-top: 7px;
    font-size: 12px;
  }
}


/* ========================
  line up
======================== */
.p-healthfood .p-lineup {
  background-color: #f8f8f8;
}

.p-healthfood .p-lineup__container {
  padding: 36px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__container {
    width: 940px;
    padding: 90px 0 94px;
    margin: 0 auto;
  }
}

.p-healthfood .p-lineup__heading {
  text-align: center;
}

.p-healthfood .p-lineup__heading-en,
.p-healthfood .p-lineup__heading-ja {
  display: block;
}

.p-healthfood .p-lineup__heading-en {
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 25px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__heading-en {
    font-size: 28px;
  }
}

.p-healthfood .p-lineup__heading-ja {
  margin-top: 14px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__heading-ja {
    margin-top: 25px;
  }
}

.p-healthfood .p-lineup__content {
  margin-top: 32px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__content {
    margin-top: 45px;
  }
}

.p-healthfood .p-lineup__items-heading {
  text-align: center;
}

.p-healthfood .p-lineup__items-heading span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__items-heading span {
    padding: 6px 22px 7px;
    font-size: 14px;
  }
}

.p-healthfood .p-lineup__list {
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list {
    display: flex;
    flex-wrap: wrap;
    margin: 33px -16px 0;
  }
}

.p-healthfood .p-lineup__list-item {
  position: relative;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-item {
    width: 33.33%;
    padding: 0 16px;
  }
}

.p-healthfood .p-lineup__list-item:nth-child(n + 2) {
  margin-top: 15px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-healthfood .p-lineup__list-item:nth-child(n + 4) {
    margin-top: 30px;
  }
}

.p-healthfood .p-lineup__list-num {
  position: absolute;
  top: 10px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.03em;
  background-color: #fff;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-num {
    left: 24px;
    width: 37px;
    height: 37px;
    font-size: 12px;
  }
}

.p-healthfood .p-lineup__list-inner {
  display: flex;
  align-items: center;
  border: 1px solid #e5e5e5;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-inner {
    align-items: flex-start;
  }
}

.p-healthfood .p-lineup__list-img {
  width: 132px;
  border-right: 1px solid #e5e5e5;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-img {
    width: 144px;
  }
}

.p-healthfood .p-lineup__list-content {
  width: calc(100% - 132px);
  padding: 0 29px;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-content {
    width: calc(100% - 144px);
    padding: 37px 22px 0;
    text-align: center;
  }
}

.p-healthfood .p-lineup__list-content dt {
  font-size: 14px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-content dt {
    min-height: 46px;
    font-size: 16px;
    line-height: 1.4375;
  }
}

.p-healthfood .p-lineup__list-content dd {
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.545;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__list-content dd {
    margin-top: 10px;
    font-size: 12px;
    line-height: 2;
  }
}

.p-healthfood .p-lineup__other {
  margin-top: 19px;
  font-size: 11px;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__other {
    display: flex;
    margin-top: 36px;
    font-size: 12px;
  }
}

.p-healthfood .p-lineup__other dt {
  font-weight: 500;
  color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__other dt {
    width: 55px;
    line-height: 1.833;
  }
}

.p-healthfood .p-lineup__other dd {
  margin-top: 3px;
  line-height: 1.46;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__other dd {
    width: calc(100% - 55px);
    margin-top: 0;
    line-height: 1.833;
  }
}

.p-healthfood .p-lineup__service {
  margin-top: 27px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service {
    margin-top: 28px;
  }
}

.p-healthfood .p-lineup__service-heading {
  text-align: center;
}

.p-healthfood .p-lineup__service-heading span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-heading span {
    padding: 6px 22px 7px;
    font-size: 14px;
  }
}

.p-healthfood .p-lineup__service-content {
  padding: 30px;
  margin-top: -13px;
  background-color: #f1f1f1;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-content {
    display: flex;
    justify-content: space-between;
    padding: 50px;
    margin-top: -19px;
  }
}

.p-healthfood .p-lineup__service-content dl {
  padding: 20px 21px 23px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-content dl {
    width: 261px;
    padding: 29px 35px 41px;
  }
}

.p-healthfood .p-lineup__service-content dl:nth-child(n + 2) {
  margin-top: 10px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-content dl:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-healthfood .p-lineup__service-content dt {
  font-size: 14px;
  font-weight: 500;
  color: #e60012;
  text-align: center;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-content dt {
    font-weight: 600;
  }
}

.p-healthfood .p-lineup__service-content dd {
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.416;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-lineup__service-content dd {
    margin-top: 10px;
    line-height: 1.84;
  }
}


/* ========================
  case
======================== */
.p-healthfood .p-case {
  background-color: #e60012;
}

.p-healthfood .p-case__container {
  padding: 38px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__container {
    width: 940px;
    padding: 90px 0 95px;
    margin: 0 auto;
  }
}

.p-healthfood .p-case__heading {
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__heading {
    font-size: 28px;
  }
}

.p-healthfood .p-case__item {
  margin-top: 42px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__item {
    margin-top: 76px;
  }
}

.p-healthfood .p-case__list {}

.p-healthfood .p-case__list-item {
  position: relative;
  display: flex;
}

.p-healthfood .p-case__list-item:nth-child(n + 2) {
  margin-top: 48px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item:nth-child(n + 2) {
    margin-top: 128px;
  }
}

.p-healthfood .p-case__list-item::before {
  position: absolute;
  top: -16px;
  left: 0;
  content: '';
  background-size: contain;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item::before {
    top: -34px;
  }
}

.p-healthfood .p-case__list-item--01::before {
  width: 155px;
  height: 32px;
  background-image: url('../images/healthfood/case_text01.png');
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item--01::before {
    width: 234px;
    height: 49px;
  }
}

.p-healthfood .p-case__list-item--02::before {
  width: 159px;
  height: 32px;
  background-image: url('../images/healthfood/case_text02.png');
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item--02::before {
    width: 240px;
    height: 49px;
  }
}

.p-healthfood .p-case__list-item--03::before {
  width: 159px;
  height: 33px;
  background-image: url('../images/healthfood/case_text03.png');
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item--03::before {
    width: 239px;
    height: 49px;
  }
}

.p-healthfood .p-case__list-item--04::before {
  width: 160px;
  height: 33px;
  background-image: url('../images/healthfood/case_text04.png');
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__list-item--04::before {
    width: 241px;
    height: 49px;
  }
}

.p-healthfood .p-case__img {
  position: relative;
  width: 116px;
  margin-right: 19px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__img {
    width: 175px;
    margin-right: 30px;
  }
}

.p-healthfood .p-case__content {
  width: calc(100% - (116px + 19px));
  color: #fff;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__content {
    width: calc(100% - (175px + 30px));
  }
}

.p-healthfood .p-case__category {
  font-size: 10px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__category {
    font-size: 12px;
  }
}

.p-healthfood .p-case__ttl {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__ttl {
    margin-top: 15px;
    font-size: 18px;
    line-height: 1.5;
  }
}

.p-healthfood .p-case__body {
  margin-top: 9px;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__body {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.833;
  }
}

.p-healthfood .p-case__link {
  padding: 0 30px;
  margin-top: 28px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__link {
    padding: 0;
    margin-top: 50px;
  }
}

.p-healthfood .p-case__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-case__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-healthfood .p-case__link a:hover {
    color: #e60012;
    border-color: #fff;
    background-color: #fff;
  }
}

/* ========================
  questionary
======================== */
.p-healthfood .p-questionary {
  background-color: #f8f8f8;
}

.p-healthfood .p-questionary__container {
  padding: 41px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__container {
    width: 940px;
    padding: 90px 0 110px;
    margin: 0 auto;
  }
}

.p-healthfood .p-questionary__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__heading {
    font-size: 28px;
  }
}

.p-healthfood .p-questionary__heading span {
  display: block;
  font-size: 9px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__heading span {
    font-size: 11px;
  }
}

.p-healthfood .p-questionary__content {
  margin-top: 33px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__content {
    margin-top: 44px;
  }
}

.p-healthfood .p-questionary__response {}

.p-healthfood .p-questionary__header {}

.p-healthfood .p-questionary__ttl {
  padding: 6px 0;
  margin: 0 20px;
  font-size: 22px;
  font-weight: 500;
  text-align: center;
  background-color: rgba(230, 0, 19, 0.1);
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 528px;
    padding: 3px 0 5px;
    margin: 0 auto;
    font-size: 28px;
  }
}

.p-healthfood .p-questionary__ttl-em {
  display: block;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 47.5px;
  font-weight: 600;
  line-height: 1;
  color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__ttl-em {
    padding-right: 7px;
    font-size: 62px;
  }
}

.p-healthfood .p-questionary__ttl-sm {
  font-size: 26px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__ttl-sm {
    font-size: 34px;
  }
}

.p-healthfood .p-questionary__lede {
  padding: 0 5px;
  margin-top: 18px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__lede {
    padding: 0;
    margin-top: 31px;
    line-height: 2.142;
    text-align: center;
  }
}

.p-healthfood .p-questionary__img {
  margin-top: 23px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__img {
    margin-top: 40px;
  }
}

.p-healthfood .p-questionary__voice {
  margin-top: 31px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice {
    margin-top: 60px;
  }
}

.p-healthfood .p-questionary__voice-heading {
  text-align: center;
}

.p-healthfood .p-questionary__voice-heading span {
  display: inline-block;
  padding: 4px 13px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice-heading span {
    padding: 5px 30px;
    font-size: 18px;
  }
}

.p-healthfood .p-questionary__voice-list {
  padding: 40px 31px 33px 41px;
  margin-top: -14px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice-list {
    padding: 45px 87px;
    margin-top: -19px;
  }
}

.p-healthfood .p-questionary__voice-item {
  position: relative;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.54;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice-item {
    font-size: 16px;
    line-height: 2.5;
  }
}

.p-healthfood .p-questionary__voice-item:nth-child(n + 2) {
  margin-top: 10px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice-item:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-healthfood .p-questionary__voice-item::before {
  position: absolute;
  top: 6px;
  left: -14px;
  width: 6px;
  height: 6px;
  content: '';
  background-color: #e60012;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-questionary__voice-item::before {
    top: 16px;
    left: -19px;
    width: 8px;
    height: 8px;
  }
}


/* ========================
  banner
======================== */
.p-healthfood .p-banner {}

.p-healthfood .p-banner__container {
  padding: 50px 20px 0;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-banner__container {
    width: 940px;
    padding: 100px 0 0;
    margin: 0 auto;
  }
}

.p-healthfood .p-banner__link {}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-banner__link {
    backface-visibility: hidden;
    transition: 0.25s;
  }

  .p-healthfood .p-banner__link:hover {
    opacity: 0.8;
  }
}


/* ========================
  flow
======================== */
.p-healthfood .p-flow {}

.p-healthfood .p-flow__container {
  padding: 43px 20px 49px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__container {
    width: 940px;
    padding: 93px 0 98px;
    margin: 0 auto;
  }
}

.p-healthfood .p-flow__heading {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__heading {
    font-size: 28px;
  }
}

.p-healthfood .p-flow__list {
  display: flex;
  flex-wrap: wrap;
  margin: 36px -6px 0;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list {
    margin: 74px -16px 0;
  }
}

.p-healthfood .p-flow__list-item {
  width: 50%;
  padding: 0 6px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-item {
    position: relative;
    width: 25%;
    padding: 0 16px;
  }

  .p-healthfood .p-flow__list-item:not(:nth-child(4)):not(:last-child)::before {
    position: absolute;
    top: 27px;
    right: 0;
    width: 9px;
    height: 13px;
    content: '';
    background-image: url('/assets/images/healthfood/flow_arrow_icon.svg');
    background-size: contain;
  }
}

.p-healthfood .p-flow__list-item:nth-child(n + 3) {
  margin-top: 33px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-item:nth-child(n + 3) {
    margin-top: 0;
  }

  .p-healthfood .p-flow__list-item:nth-child(n + 5) {
    margin-top: 77px;
  }
}

.p-healthfood .p-flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
}

.p-healthfood .p-flow__icon--01 img {
  width: 68px;
}

.p-healthfood .p-flow__icon--02 img {
  width: 61px;
}

.p-healthfood .p-flow__icon--03 img {
  width: 52px;
}

.p-healthfood .p-flow__icon--04 img {
  width: 59px;
}

.p-healthfood .p-flow__icon--05 img {
  width: 72px;
}

.p-healthfood .p-flow__icon--06 img {
  width: 70px;
}

.p-healthfood .p-flow__icon--07 img {
  width: 84px;
}

.p-healthfood .p-flow__list-content {
  margin-top: 12px;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-content {
    margin-top: 35px;
  }
}

.p-healthfood .p-flow__list-heading {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-heading {
    height: 30px;
  }
}

.p-healthfood .p-flow__list-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.03em;
  background-color: #e60012;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-num {
    margin-right: 12px;
  }
}

.p-healthfood .p-flow__list-text {
  width: calc(100% - (30px + 8px));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.23;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-text {
    width: calc(100% - (30px + 12px));
    font-size: 14px;
    font-weight: 600;
  }
}

.p-healthfood .p-flow__list-body {
  margin-top: 7px;
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-healthfood .p-flow__list-body {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.72;
  }
}


/*---------------------------------

  原材料

---------------------------------*/

/* ========================
  mv
======================== */
.p-materials .p-mv {
  position: relative;
  background-image: url('../images/material/mv_img.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-mv {
    background-image: url('../images/material/mv_img_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-materials .p-mv__container {
  padding: 72px 0 98px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-mv__container {
    padding: 121px 0 156px;
  }
}

.p-materials .p-mv__heading {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  text-shadow: 0 0 11.36px rgba(68, 69, 74, 0.5);
}

@media screen and (min-width: 1024px) { 
  .p-materials .p-mv__heading {
    font-size: 45px;
  }
}


/* ========================
  material
======================== */
.p-materials .p-material {}

.p-materials .p-material__container {
  padding: 42px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__container {
    width: 940px;
    padding: 63px 0 100px;
    margin: 0 auto;
  }
}

.p-materials .p-material__inner {}

.p-materials .p-material__inner:nth-child(n + 2) {
  margin-top: 60px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__inner:nth-child(n + 2) {
    margin-top: 80px;
  }
}

.p-materials .p-material__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__heading {
    font-size: 28px;
  }
}

.p-materials .p-material__items {
  margin-top: 22px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__items {
    display: flex;
    flex-wrap: wrap;
    margin: 51px -20px 0;
  }
}

.p-materials .p-material__item {
  display: block;
  text-decoration: none;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__item {
    width: 50%;
    padding: 0 20px;
    backface-visibility: hidden;
    transition: opacity 0.25s;
  }

  .p-materials .p-material__item:hover {
    opacity: 0.8;
  }
}

.p-materials .p-material__item:nth-child(n + 2) {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-materials .p-material__item:nth-child(n + 3) {
    margin-top: 40px;
  }
}

.p-materials .p-material__img {}

.p-materials .p-material__content {
  padding: 27px 27px 32px;
  color: #fff;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__content {
    padding: 32px 40px 46px;
  }

  .p-materials .p-material__content--md {
    min-height: 215px;
  }
}

.p-materials .p-material__content dt {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__content dt {
    font-size: 18px;
    line-height: 1.454;
  }
}

.p-materials .p-material__content dd {
  margin-top: 14px;
  font-size: 11px;
  line-height: 2;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-material__content dd {
    margin-top: 15px;
    font-size: 12px;
  }
}


/* ========================
  intro
======================== */
.p-materials .p-intro {
  background-color: #f8f8f8;
}

.p-materials .p-intro__container {
  padding: 42px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__container {
    width: 940px;
    padding: 88px 0;
    margin: 0 auto;
  }
}

.p-materials .p-intro__lede {
  margin-top: 23px;
  text-align: center;
}

.p-materials .p-intro__lede.pc {
  display: none;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__lede {
    margin-top: 27px;
  }

  .p-materials .p-intro__lede.sp {
    display: none;
  }

  .p-materials .p-intro__lede.pc {
    display: block;
  }
}

.p-materials .p-intro__lede span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__lede span {
    padding: 3px 10px 5px 12px;
    font-size: 14px;
  }
}

.p-materials .p-intro__lede span:nth-child(n + 2) {
  margin-top: 4px;
}

.p-materials .p-intro__heading {
  font-size: 25px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__heading {
    font-size: 28px;
  }
}

.p-materials .p-intro__content {
  margin-top: 50px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__content {
    display: flex;
    flex-wrap: wrap;
    margin: 60px -17px 0;
  }
}

.p-materials .p-intro__items {}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__items {
    width: 50%;
    padding: 0 17px;
  }
}

.p-materials .p-intro__items:nth-child(n + 2) {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__items:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-materials .p-intro__items:nth-child(n + 3) {
    margin-top: 40px;
  }
}

.p-materials .p-intro__inner {
  position: relative;
  padding: 30px 40px 40px;
  border-right: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  border-left: 1px solid #e5e5e5;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__inner {
    padding: 46px 60px;
  }

  .p-materials .p-intro__items:nth-child(1) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(2) .p-intro__inner {
    min-height: 1382px;
  }

  .p-materials .p-intro__items:nth-child(3) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(4) .p-intro__inner {
    min-height: 572px;
  }

  .p-materials .p-intro__items:nth-child(5) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(6) .p-intro__inner {
    min-height: 912px;
  }

  .p-materials .p-intro__items:nth-child(7) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(8) .p-intro__inner {
    min-height: 957px;
  }

  .p-materials .p-intro__items:nth-child(9) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(10) .p-intro__inner {
    min-height: 285px;
  }

  .p-materials .p-intro__items:nth-child(11) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(12) .p-intro__inner {
    min-height: 903px;
  }

  .p-materials .p-intro__items:nth-child(13) .p-intro__inner,
  .p-materials .p-intro__items:nth-child(14) .p-intro__inner {
    min-height: 1040px;
  }
}

.p-materials .p-intro__inner::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background-color: #e60012;
}

.p-materials .p-intro__ttl {
  font-size: 19px;
  font-weight: 500;
  color: #e60012;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__ttl {
    font-size: 20px;
  }
}

.p-materials .p-intro__item {
  display: flex;
  margin: 25px -10px 0;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__item {
    margin: 33px -17px 0;
  }
}

.p-materials .p-intro__list {
  width: 50%;
  padding: 0 10px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__list {
    padding: 0 17px;
  }
}

.p-materials .p-intro__list li {
  position: relative;
  padding-left: 15px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.571;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__list li {
    padding-left: 20px;
    font-size: 14px;
  }
}

.p-materials .p-intro__list li:nth-child(n + 2) {
  margin-top: 7px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__list li:nth-child(n + 2) {
    margin-top: 11px;
  }
}

.p-materials .p-intro__list li::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 5px;
  height: 5px;
  content: '';
  background-color: #e60012;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-intro__list li::before {
    width: 6px;
    height: 6px;
  }
}


/* ========================
  line up
======================== */
.p-materials .p-lineup {}

.p-materials .p-lineup__container {
  padding: 36px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__container {
    width: 940px;
    padding: 56px 0 94px;
    margin: 0 auto;
  }
}

.p-materials .p-lineup__heading {
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 25px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__heading {
    font-size: 28px;
  }
}

.p-materials .p-lineup__content {
  margin-top: 28px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__content {
    margin-top: 45px;
  }
}

.p-materials .p-lineup__items-heading {
  text-align: center;
}

.p-materials .p-lineup__items-heading span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__items-heading span {
    padding: 6px 22px 7px;
    font-size: 14px;
  }
}

.p-materials .p-lineup__list {
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list {
    display: flex;
    flex-wrap: wrap;
    margin: 33px -16px 0;
  }
}

.p-materials .p-lineup__list-item {
  position: relative;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-item {
    width: 33.33%;
    padding: 0 16px;
  }
}

.p-materials .p-lineup__list-item:nth-child(n + 2) {
  margin-top: 15px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-materials .p-lineup__list-item:nth-child(n + 4) {
    margin-top: 30px;
  }
}

.p-materials .p-lineup__list-num {
  position: absolute;
  top: 10px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #e60012;
  letter-spacing: 0.03em;
  background-color: #fff;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-num {
    left: 24px;
    width: 37px;
    height: 37px;
    font-size: 12px;
  }
}

.p-materials .p-lineup__list-inner {
  display: flex;
  align-items: center;
  border: 1px solid #e5e5e5;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-inner {
    align-items: flex-start;
  }
}

.p-materials .p-lineup__list-img {
  width: 132px;
  border-right: 1px solid #e5e5e5;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-img {
    width: 144px;
  }
}

.p-materials .p-lineup__list-content {
  width: calc(100% - 132px);
  padding: 0 29px;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-content {
    width: calc(100% - 144px);
    padding: 37px 22px 0;
    text-align: center;
  }
}

.p-materials .p-lineup__list-content dt {
  font-size: 14px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-content dt {
    min-height: 46px;
    font-size: 16px;
    line-height: 1.4375;
  }
}

.p-materials .p-lineup__list-content dd {
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.545;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__list-content dd {
    margin-top: 10px;
    font-size: 12px;
    line-height: 2;
  }
}

.p-materials .p-lineup__other {
  margin-top: 19px;
  font-size: 11px;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__other {
    display: flex;
    margin-top: 36px;
    font-size: 12px;
  }
}

.p-materials .p-lineup__other dt {
  font-weight: 500;
  color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__other dt {
    width: 55px;
    line-height: 1.833;
  }
}

.p-materials .p-lineup__other dd {
  margin-top: 3px;
  line-height: 1.46;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__other dd {
    width: calc(100% - 55px);
    margin-top: 0;
    line-height: 1.833;
  }
}

.p-materials .p-lineup__service {
  margin-top: 27px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service {
    margin-top: 28px;
  }
}

.p-materials .p-lineup__service-heading {
  text-align: center;
}

.p-materials .p-lineup__service-heading span {
  display: inline-block;
  padding: 2px 13px 3px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.025em;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-heading span {
    padding: 6px 22px 7px;
    font-size: 14px;
  }
}

.p-materials .p-lineup__service-content {
  padding: 30px;
  margin-top: -13px;
  background-color: #f1f1f1;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-content {
    display: flex;
    justify-content: space-between;
    padding: 50px;
    margin-top: -19px;
  }
}

.p-materials .p-lineup__service-content dl {
  padding: 20px 21px 23px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-content dl {
    width: 261px;
    padding: 29px 35px 41px;
  }
}

.p-materials .p-lineup__service-content dl:nth-child(n + 2) {
  margin-top: 10px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-content dl:nth-child(n + 2) {
    margin-top: 0;
  }
}

.p-materials .p-lineup__service-content dt {
  font-size: 14px;
  font-weight: 500;
  color: #e60012;
  text-align: center;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-content dt {
    font-weight: 600;
  }
}

.p-materials .p-lineup__service-content dd {
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.416;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__service-content dd {
    margin-top: 10px;
    line-height: 1.84;
  }
}

.p-materials .p-lineup__misc {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc {
    margin-top: 40px;
  }
}

.p-materials .p-lineup__misc-body {
  font-size: 13px;
  font-weight: 600;
  color: #e60012;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-body {
    font-size: 14px;
    line-height: 1.687142;
  }
}

.p-materials .p-lineup__misc-text {
  margin-top: 20px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-text {
    margin-top: 22px;
  }
}

.p-materials .p-lineup__misc-text span {
  position: relative;
  font-size: 14px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-text span {
    font-size: 16px;
  }
}

.p-materials .p-lineup__misc-text span::before,
.p-materials .p-lineup__misc-text span::after {
  position: absolute;
  top: 3px;
  width: 2px;
  height: 17px;
  content: '';
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-text span::before,
  .p-materials .p-lineup__misc-text span::after {
    top: 4px;
    height: 19px;
  }
}

.p-materials .p-lineup__misc-text span::before {
  left: -18px;
  transform: rotate(-30deg);
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-text span::before {
    left: -26px;
  }
}

.p-materials .p-lineup__misc-text span::after {
  right: -17px;
  transform: rotate(30deg);
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-text span::after {
    right: -25px;
  }
}

.p-materials .p-lineup__misc-link {
  padding: 0 30px;
  margin-top: 12px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-link {
    margin-top: 15px;
  }
}

.p-materials .p-lineup__misc-link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #e60012;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-lineup__misc-link a {
    width: 391px;
    height: 68px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 35px;
    transition: 0.25s;
  }

  .p-materials .p-lineup__misc-link a:hover {
    color: #fff;
    background-color: #e60012;
    border-color: #e60012;
  }
}


/* ========================
  flow
======================== */
.p-materials .p-flow {}

.p-materials .p-flow__container {
  padding: 43px 20px 49px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__container {
    width: 940px;
    padding: 62px 0 98px;
    margin: 0 auto;
  }
}

.p-materials .p-flow__heading {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__heading {
    font-size: 28px;
  }
}

.p-materials .p-flow__list {
  display: flex;
  flex-wrap: wrap;
  margin: 36px -6px 0;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list {
    margin: 74px -16px 0;
  }
}

.p-materials .p-flow__list-item {
  width: 50%;
  padding: 0 6px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-item {
    position: relative;
    width: 25%;
    padding: 0 16px;
  }

  .p-materials .p-flow__list-item:not(:nth-child(4)):not(:last-child)::before {
    position: absolute;
    top: 27px;
    right: 0;
    width: 9px;
    height: 13px;
    content: '';
    background-image: url('/assets/images/material/flow_arrow_icon.svg');
    background-size: contain;
  }
}

.p-materials .p-flow__list-item:nth-child(n + 3) {
  margin-top: 33px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-item:nth-child(n + 3) {
    margin-top: 0;
  }

  .p-materials .p-flow__list-item:nth-child(n + 5) {
    margin-top: 77px;
  }
}

.p-materials .p-flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
}

.p-materials .p-flow__icon--01 img {
  width: 68px;
}

.p-materials .p-flow__icon--02 img {
  width: 61px;
}

.p-materials .p-flow__icon--03 img {
  width: 52px;
}

.p-materials .p-flow__icon--04 img {
  width: 59px;
}

.p-materials .p-flow__icon--05 img {
  width: 72px;
}

.p-materials .p-flow__icon--06 img {
  width: 70px;
}

.p-materials .p-flow__icon--07 img {
  width: 84px;
}

.p-materials .p-flow__list-content {
  margin-top: 12px;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-content {
    margin-top: 35px;
  }
}

.p-materials .p-flow__list-heading {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-heading {
    height: 30px;
  }
}

.p-materials .p-flow__list-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  font-family: 'objektiv-mk2', sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.03em;
  background-color: #e60012;
  border-radius: 50%;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-num {
    margin-right: 12px;
  }
}

.p-materials .p-flow__list-text {
  width: calc(100% - (30px + 8px));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.23;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-text {
    width: calc(100% - (30px + 12px));
    font-size: 14px;
    font-weight: 600;
  }
}

.p-materials .p-flow__list-body {
  margin-top: 7px;
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-materials .p-flow__list-body {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.72;
  }
}


/*---------------------------------

  グローバルサービス

---------------------------------*/

/* ========================
  mv
======================== */
.p-oversea .p-mv {
  position: relative;
  background-image: url('../images/oversea_lab/mv_img.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-mv {
    background-image: url('../images/oversea_lab/mv_img_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-oversea .p-mv__container {
  padding: 72px 0 98px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-mv__container {
    padding: 121px 0 156px;
  }
}

.p-oversea .p-mv__heading {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  text-shadow: 0 0 11.36px rgba(68, 69, 74, 0.5);
}

@media screen and (min-width: 1024px) { 
  .p-oversea .p-mv__heading {
    font-size: 45px;
  }
}


/* ========================
  intro
======================== */
.p-oversea .p-intro {
  margin-top: -35px;
  background-image: url('../images/oversea_lab/intro_bg.png');
  background-repeat: no-repeat;
  background-position: bottom 0 left 0;
  background-size: cover;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro {
    margin-top: -50px;
    background-image: url('../images/oversea_lab/intro_bg_md.png');
    background-position: bottom 0 left 50%;
  }
}

.p-oversea .p-intro__container {
  padding: 68px 25px 344px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro__container {
    padding: 112px 0 479px;
  }
}

.p-oversea .p-intro__heading {
  position: relative;
  font-weight: 500;
  text-align: center;
}

.p-oversea .p-intro__heading::before {
  position: absolute;
  bottom: -18px;
  left: 50%;
  width: 33px;
  height: 3px;
  content: '';
  background-color: #e60012;
  transform: translateX(-50%);
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro__heading::before {
    bottom: -23px;
    width: 23px;
    height: 2px;
  }
}


.p-oversea .p-intro__heading-sub,
.p-oversea .p-intro__heading-main {
  display: block;
}

.p-oversea .p-intro__heading-sub {
  font-size: 14px;
  color: #e60012;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro__heading-sub {
    font-size: 15px;
  }
}

.p-oversea .p-intro__heading-main {
  margin-top: 6px;
  font-size: 24px;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro__heading-main {
    margin-top: 11px;
    font-size: 28px;
  }
}

.p-oversea .p-intro__lede {
  margin-top: 32px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-intro__lede {
    margin-top: 36px;
    text-align: center;
    line-height: 2.15;
  }
}


/* ========================
  service
======================== */
.p-oversea .p-service {}

.p-oversea .p-service__container {
  padding: 42px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__container {
    width: 940px;
    padding: 90px 0 65px;
    margin: 0 auto;
  }
}

.p-oversea .p-service__heading {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__heading {
    font-size: 28px;
  }
}

.p-oversea .p-service__items {
  margin-top: 40px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__items {
    margin-top: 51px;
  }
}

.p-oversea .p-service__items:nth-of-type(n + 2) {
  margin-top: 60px;
}

.p-oversea .p-service__items-heading {
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__items-heading {
    font-size: 22px;
  }
}

.p-oversea .p-service__items-heading-inline {
  display: inline-block;
  padding-bottom: 4px;
  border-bottom: 1px solid #e60012;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__items-heading-inline {
    padding-bottom: 7px;
    border-bottom-width: 2px;
  }
}

.p-oversea .p-service__items-heading-inline span {
  color: #e60012;
}

.p-oversea .p-service__item {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__item {
    display: flex;
    flex-direction: row-reverse;
    margin-top: 40px;
  }

  .p-oversea .p-service__item:nth-of-type(n + 2) {
    margin-top: 0;
  }

  .p-oversea .p-service__item:nth-child(odd) {
    flex-direction: row;
  }
}

.p-oversea .p-service__img {}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__img {
    width: 50%;
  }
}

.p-oversea .p-service__content {
  padding: 27px;
  color: #fff;
  background-color: #e60012;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__content {
    width: 50%;
    padding: 60px 50px;
  }
}

.p-oversea .p-service__content dt {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__content dt {
    font-size: 22px;
    line-height: 1.454;
  }
}

.p-oversea .p-service__content dd {
  margin-top: 11px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-service__content dd {
    margin-top: 18px;
    font-size: 14px;
    line-height: 2.15;
  }
}


/* ========================
  factory
======================== */
.p-oversea .p-factory {
  background-color: #f8f8f8;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory {
    background-image: url('../images/oversea_lab/factory_bg_md.jpg');
    background-position: 50% 50%;
    background-size: cover;
  }
}

.p-oversea .p-factory__container {
  padding: 50px 20px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory__container {
    display: flex;
    width: 940px;
    padding: 127px 0 96px;
    margin: 0 auto;
  }
}

.p-oversea .p-factory__img {}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory__img {
    width: 50%;
  }
}

.p-oversea .p-factory__content {
  padding: 27px;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory__content {
    width: 50%;
    padding: 73px 50px;
  }
}

.p-oversea .p-factory__heading {
  font-size: 18px;
  font-weight: 500;
  color: #e60012;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory__heading {
    margin-top: 16px;
    font-size: 22px;
    line-height: 1.454;
  }
}

.p-oversea .p-factory__body {
  margin-top: 11px;
  font-size: 13px;
  line-height: 1.55;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-factory__body {
    margin-top: 18px;
    font-size: 14px;
    line-height: 2.15;
  }
}


/* ========================
  case
======================== */
.p-oversea .p-case {
  background-color: #e60012;
}

.p-oversea .p-case__container {
  padding: 38px 20px 50px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__container {
    width: 940px;
    padding: 90px 0 95px;
    margin: 0 auto;
  }
}

.p-oversea .p-case__heading {
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__heading {
    font-size: 28px;
  }
}

.p-oversea .p-case__item {
  margin-top: 42px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__item {
    margin-top: 76px;
  }
}

.p-oversea .p-case__list {}

.p-oversea .p-case__list-item {
  position: relative;
  display: flex;
}

.p-oversea .p-case__list-item:nth-child(n + 2) {
  margin-top: 48px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item:nth-child(n + 2) {
    margin-top: 128px;
  }
}

.p-oversea .p-case__list-item::before {
  position: absolute;
  top: -16px;
  left: 0;
  content: '';
  background-size: contain;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item::before {
    top: -34px;
  }
}

.p-oversea .p-case__list-item--01::before {
  width: 155px;
  height: 32px;
  background-image: url('../images/oversea_lab/case_text01.png');
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item--01::before {
    width: 234px;
    height: 49px;
  }
}

.p-oversea .p-case__list-item--02::before {
  width: 159px;
  height: 32px;
  background-image: url('../images/oversea_lab/case_text02.png');
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item--02::before {
    width: 240px;
    height: 49px;
  }
}

.p-oversea .p-case__list-item--03::before {
  width: 159px;
  height: 33px;
  background-image: url('../images/oversea_lab/case_text03.png');
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item--03::before {
    width: 239px;
    height: 49px;
  }
}

.p-oversea .p-case__list-item--04::before {
  width: 160px;
  height: 33px;
  background-image: url('../images/oversea_lab/case_text04.png');
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__list-item--04::before {
    width: 241px;
    height: 49px;
  }
}

.p-oversea .p-case__img {
  position: relative;
  width: 116px;
  margin-right: 19px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__img {
    width: 175px;
    margin-right: 30px;
  }
}

.p-oversea .p-case__content {
  width: calc(100% - (116px + 19px));
  color: #fff;
  letter-spacing: 0.025em;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__content {
    width: calc(100% - (175px + 30px));
  }
}

.p-oversea .p-case__category {
  font-size: 10px;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__category {
    font-size: 12px;
  }
}

.p-oversea .p-case__ttl {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__ttl {
    margin-top: 15px;
    font-size: 18px;
    line-height: 1.5;
  }
}

.p-oversea .p-case__body {
  margin-top: 9px;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__body {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.833;
  }
}

.p-oversea .p-case__link {
  padding: 0 30px;
  margin-top: 28px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__link {
    padding: 0;
    margin-top: 50px;
  }
}

.p-oversea .p-case__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.03em;
  border: 1px solid currentColor;
  border-radius: 25px;
}

@media screen and (min-width: 1024px) {
  .p-oversea .p-case__link a {
    width: 311px;
    height: 66px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 33px;
    transition: 0.25s;
  }

  .p-oversea .p-case__link a:hover {
    color: #e60012;
    border-color: #fff;
    background-color: #fff;
  }
}


/*---------------------------------

  ユーティリティ

---------------------------------*/

.sp-br {
  display: block;
}

.pc-br {
  display: none;
}

@media screen and (min-width: 1024px) {
  .sp-br {
    display: none;
  }

  .pc-br {
    display: block;
  }
}


/*# sourceMappingURL=style.css.map */