@charset "UTF-8";
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

html {
  font-size: 62.5%; }

body {
  color: #333;
  font-size: 1.0rem;
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro','Noto Sans Japanese','游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ', Meiryo, sans-serif; }

html, body {
  overflow-x: hidden; }

a {
  color: #333;
  text-decoration: none; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

h1, h2, h3, h4, h5, h6, div, dl, dt, dd, p {
  margin: 0;
  padding: 0;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.2; }

ul, li {
  padding: 0;
  margin: 0; }

li {
  list-style: none; }

img {
  vertical-align: bottom; }

figure {
  margin: 0;
  padding: 0; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold; }

/**
 * Custom media queries
 * @example
 * @media (--mobile) {
 *    styles for mobile viewport
 * }
 */
/**
 * for mobile viewoport
 */
/**
 * for tablet and Pc. large viewport
 */
/** http://bourbon.io/docs/#timing-functions */
/** example @include transition(all 5s $ease-in-circ);*/
/**
transition timing-function:
ease - cubic-bezier(0.25, 0.1, 0.25, 1.0) を指定したのと同じ（開始と完了を滑らかにする）（初期値）
linear - cubic-bezier(0.0, 0.0, 1.0, 1.0) を指定したのと同じ（一定）
ease-in - cubic-bezier(0.42, 0, 1.0, 1.0) を指定したのと同じ（ゆっくり始まる）
ease-out - cubic-bezier(0, 0, 0.58, 1.0) を指定したのと同じ（ゆっくり終わる）
ease-in-out - cubic-bezier(0.42, 0, 0.58, 1.0) を指定したのと同じ（ゆっくり始まってゆっくり終わる）
*/
/**
 * text ellipsis for block multiline
 */
/*
 unsupport IE, Edge, Fx

@mixin text-ellipsis-block($rows) {
  display: box;
  box-orient: vertical;
  line-clamp: $rows;
  overflow: hidden;
}
*/
/**
 * element size
 */
/**
 * position layout
 */
/**
 * images
 */
/**
  * for sp
  */
/**
* Variables
*/
/** extend */
.ex-link {
  opacity: 1;
  -webkit-transition: opacity .4s;
  transition: opacity .4s; }
  .ex-link:hover {
    opacity: .5; }
  .ex-link--non {
    pointer-events: none; }

.sumb-link figure {
  opacity: 1;
  -webkit-transition: opacity .4s;
  transition: opacity .4s; }

.sumb-link:hover figure {
  opacity: .5; }

.c-circle {
  border-radius: 10px; }

/* window */
/* color */
/* font-size */
.l-top .l-f_contact {
  background-color: #cbf2f4;
  padding: 61px 0 59px;
  text-align: center;
  margin: 0; }

.p-recruit .l-f_contact, .p-outline .l-f_contact, .l-projects_detail .l-f_contact, .l-forum_detail .l-f_contact, .p-news_detail .l-f_contact, .p-activities_detail .l-f_contact, .p-404 .l-f_contact {
  display: none; }

.l-f_contact {
  margin-bottom: 41px; }

.l-footer {
  min-width: 1160px; }

.l-f_contact_btn {
  border: 2px solid #f7f7f7;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  background-color: #f7f7f7;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 76px;
  margin: 0 auto;
  text-align: center;
  width: 1052px; }
  .l-f_contact_btn a {
    display: inherit; }
  .l-f_contact_btn .ttl {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: url(../images/common/footer/contact_bg.svg) left center no-repeat;
    background-size: 100% 100%;
    background-color: #f7f7f7;
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 16px;
    font-weight: normal;
    height: 76px;
    letter-spacing: 0.04em;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-left: 74px;
    width: 276px;
    -webkit-transition: color .2s, background-image .3s;
    transition: color .2s, background-image .3s; }
    .l-f_contact_btn .ttl span {
      display: inline-block;
      position: relative;
      -webkit-transition: background-image .3s;
      transition: background-image .3s;
      background: url(../images/common/footer/contact_arrow.png) left 2px no-repeat;
      background-size: 7px auto;
      padding-left: 19px;
      transition: background-image .3s; }
      .l-f_contact_btn .ttl span:after {
        background-color: #fdff7b;
        bottom: -5px;
        content: '';
        display: inline-block;
        height: 3px;
        left: 0;
        position: absolute;
        width: 100%;
        -webkit-transition: background-color .3s;
        transition: background-color .3s; }
    .l-f_contact_btn .ttl:hover {
      background: url(../images/common/footer/contact_bg_ov.svg) left center no-repeat;
      background-size: 100% 100%;
      color: #4e8fd8; }
      .l-f_contact_btn .ttl:hover span {
        background: url(../images/common/footer/contact_arrow_ov.png) left 2px no-repeat;
        background-size: 7px auto; }
        .l-f_contact_btn .ttl:hover span:after {
          background-color: #4e8fd8; }
  .l-f_contact_btn .txt {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url(../images/common/footer/contact_deco1.png), url(../images/common/footer/contact_deco2.png);
    background-repeat: no-repeat;
    background-size: 62.5px auto, 62px auto;
    background-position: 94px 10px, 622px 11px;
    background-color: #f7f7f7;
    color: #333;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-weight: bold;
    letter-spacing: 0.06em;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 76px;
    width: 776px; }

.l-footer_pagetop {
  width: 1056px;
  height: 64px;
  margin: 0 auto;
  position: fixed;
  bottom: 8px;
  pointer-events: none; }
  .l-footer_pagetop .l-wrap {
    position: absolute;
    right: 0;
    top: -17px;
    width: 142px; }
    .l-footer_pagetop .l-wrap a {
      display: block;
      background: url(../images/common/footer/pagetop.png) left top no-repeat;
      background-size: auto 64px;
      font-size: 13px;
      color: #4e8fd8;
      font-weight: bold;
      height: 64px;
      margin-left: auto;
      padding-top: 18px;
      text-align: right;
      -webkit-transition: color .3s;
      transition: color .3s;
      pointer-events: all; }
      .l-footer_pagetop .l-wrap a span {
        position: relative;
        display: inline-block;
        padding-left: 17px; }
        .l-footer_pagetop .l-wrap a span:before {
          position: absolute;
          left: 0;
          top: 3px;
          background: url(../images/common/footer/pagetop_arrow.png) left top no-repeat;
          background-size: 13px auto;
          content: '';
          display: inline-block;
          height: 7px;
          margin-right: 4px;
          -webkit-transition: background-image .3s;
          transition: background-image .3s;
          width: 13px; }
      .l-footer_pagetop .l-wrap a:hover {
        color: #fdff7b; }
        .l-footer_pagetop .l-wrap a:hover span:before {
          background: url(../images/common/footer/pagetop_arrow_ov.png) left top no-repeat;
          background-size: 13px auto; }

.l-footer_link {
  background-color: #f0f0f0;
  border-top: 1px solid #fff; }
  .l-footer_link .l-footer_inr {
    margin: 0 auto;
    height: 90px;
    padding: 22px 0 0;
    position: relative;
    width: 1056px; }
  .l-footer_link .l-f_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-left: 5px; }
    .l-footer_link .l-f_list li {
      border-left: 1px solid #000;
      position: relative;
      padding: 0 24px 0 23px; }
      .l-footer_link .l-f_list li a {
        display: inline-block;
        position: relative;
        z-index: 2; }
        .l-footer_link .l-f_list li a:before {
          background: #fdff7b;
          content: '';
          bottom: 0;
          display: inline-block;
          height: 50%;
          left: 0;
          line-height: 1.3em;
          position: absolute;
          right: 100%;
          -webkit-transition: right .3s;
          transition: right .3s;
          z-index: -1; }
        .l-footer_link .l-f_list li a:hover:before {
          right: 0; }
      .l-footer_link .l-f_list li:first-of-type {
        border-left: none;
        padding-left: 0; }
      .l-footer_link .l-f_list li .l-f_btn_contact {
        background-color: #4e8fd8;
        color: #fff;
        display: block;
        font-weight: normal;
        left: 23px;
        margin: auto;
        margin-top: -15px;
        height: 32px;
        padding-top: 7px;
        position: absolute;
        -webkit-transition: color .2s, background-color .3s;
        transition: color .2s, background-color .3s;
        text-align: center;
        top: 50%;
        width: 130px; }
        .l-footer_link .l-f_list li .l-f_btn_contact:before {
          display: none; }
        .l-footer_link .l-f_list li .l-f_btn_contact span {
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          display: inline-block;
          margin: 0 auto;
          position: relative;
          letter-spacing: 0.02em;
          background: url(../images/common/arrow2.png) left 3px no-repeat;
          background-size: 5px auto;
          -webkit-transition: background-image .3s;
          transition: background-image .3s;
          padding-left: 16px; }
          .l-footer_link .l-f_list li .l-f_btn_contact span:after {
            background-color: #fdff7b;
            bottom: -5px;
            content: '';
            display: inline-block;
            left: 0;
            height: 2px;
            position: absolute;
            width: 90px;
            -webkit-transition: background-color .3s;
            transition: background-color .3s; }
        .l-footer_link .l-f_list li .l-f_btn_contact:hover {
          background-color: #fdff7b;
          color: #4e8fd8; }
          .l-footer_link .l-f_list li .l-f_btn_contact:hover span {
            background: url(../images/common/arrow2_ov.png) left 3px no-repeat;
            background-size: 5px auto; }
            .l-footer_link .l-f_list li .l-f_btn_contact:hover span:after {
              background-color: #4e8fd8; }
  .l-footer_link .copyright {
    width: 382px;
    color: #999;
    font-size: 12px; }
    .l-footer_link .copyright img {
      width: 100%; }

.l-header {
  border-top: solid 7px #4e8fd8;
  margin: 0 auto;
  min-width: 1160px;
  width: 100%;
  height: 125px;
  position: absolute;
  z-index: 100000;
  top: 0;
  left: 0;
  background-color: #fff; }
  .l-header::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    display: block;
    content: '';
    width: 0%;
    height: 2px;
    background-color: #cbf2f4;
    -webkit-transition: width .3s;
    transition: width .3s; }
  .is-fixed .l-header {
    position: fixed;
    top: -47px; }
    .is-fixed .l-header::after {
      position: absolute;
      width: 100%; }
    .is-fixed .l-header h1 {
      top: 48px;
      width: 136px; }
  .l-header .wrap {
    position: relative;
    width: 1160px;
    margin: 0 auto; }
  .l-header h1 {
    position: relative;
    top: 30px;
    width: 169px;
    -webkit-transition: top .3s,width .3s;
    transition: top .3s,width .3s; }
    .l-header h1 img {
      width: 100%;
      height: auto; }
  .l-header .l-nav_menu {
    position: absolute;
    top: 63px;
    right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: url(../images/common/header/line.png) 100% 50% no-repeat; }
    .l-header .l-nav_menu > li {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 0 25px;
      background: url(../images/common/header/line.png) 0 50% no-repeat;
      text-align: center;
      position: relative; }
      .l-header .l-nav_menu > li:nth-of-type(3) {
        min-width: 130px; }
      .l-header .l-nav_menu > li ul {
        display: none;
        position: absolute;
        top: 38px;
        left: 2px;
        width: calc(100% - 2px);
        z-index: 1; }
        .l-header .l-nav_menu > li ul li + li {
          border-top: #fff 1px solid; }
        .l-header .l-nav_menu > li ul li a {
          background-color: #54afda;
          color: #fff;
          display: block;
          font-size: 1.2rem;
          line-height: 1.5;
          padding: 10px;
          text-align: left;
          -webkit-transition: all .3s;
          transition: all .3s; }
          .l-header .l-nav_menu > li ul li a:hover {
            background-color: #fff;
            color: #54afda; }
    .l-header .l-nav_menu a {
      display: inline-block;
      text-align: center; }
      .l-header .l-nav_menu a span {
        display: block; }
      .l-header .l-nav_menu a .text {
        position: relative;
        font-size: 1.4rem;
        letter-spacing: 0.06em;
        font-weight: bold; }
        .l-header .l-nav_menu a .text:before {
          background: #fdff7b;
          content: '';
          bottom: -5px;
          display: inline-block;
          left: 0;
          height: 80%;
          line-height: 1.3em;
          position: absolute;
          right: 100%;
          -webkit-transition: right .3s linear;
          transition: right .3s linear;
          z-index: -1; }
      .l-header .l-nav_menu a .sub {
        margin-top: 4px; }
        .l-header .l-nav_menu a .sub img {
          width: auto;
          height: 13px; }
      .l-header .l-nav_menu a .sub_1 {
        margin-top: 4px; }
        .l-header .l-nav_menu a .sub_1 img {
          width: auto;
          height: 26px; }
      .l-header .l-nav_menu a:hover .text:before {
        right: 0; }
    .l-header .l-nav_menu li.active a .text:before {
      right: 0; }
    .p-profile .l-header .l-nav_menu .l-nav_about a .text:before {
      right: 0; }
    .p-outline .l-header .l-nav_menu .l-nav_about a .text:before {
      right: 0; }
    .p-sponsor .l-header .l-nav_menu .l-nav_about a .text:before {
      right: 0; }
    .p-recruit .l-header .l-nav_menu .l-nav_about a .text:before {
      right: 0; }
    .p-news .l-header .l-nav_menu .l-nav_news a .text:before {
      right: 0; }
    .p-news_detail .l-header .l-nav_menu .l-nav_news a .text:before {
      right: 0; }
    .p-activities .l-header .l-nav_menu .l-nav_activities a .text:before {
      right: 0; }
    .p-activities_detail .l-header .l-nav_menu .l-nav_activities a .text:before {
      right: 0; }
    .p-activities_join .l-header .l-nav_menu .l-nav_activities a .text:before {
      right: 0; }
    .l-projects .l-header .l-nav_menu .l-nav_projects a .text:before {
      right: 0; }
    .l-projects_detail .l-header .l-nav_menu .l-nav_projects a .text:before {
      right: 0; }
    .p-hospital .l-header .l-nav_menu .l-nav_projects a .text:before {
      right: 0; }
    .p-qa .l-header .l-nav_menu .l-nav_projects a .text:before {
      right: 0; }
    .p-interview .l-header .l-nav_menu .l-nav_projects a .text:before {
      right: 0; }
    .l-forum .l-header .l-nav_menu .l-nav_studies a .text:before {
      right: 0; }
    .l-forum_detail .l-header .l-nav_menu .l-nav_studies a .text:before {
      right: 0; }
    .p-guide .l-header .l-nav_menu .l-nav_natural a .text:before {
      right: 0; }
  .l-header .l-nav_sns {
    position: absolute;
    top: 6px;
    right: 160px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .l-header .l-nav_sns li + li {
      margin-left: 17px; }
    .l-header .l-nav_sns a {
      display: block;
      width: 20px;
      height: 20px;
      -webkit-transition: background-image .3s;
      transition: background-image .3s; }
      .l-header .l-nav_sns a span {
        display: none; }
    .l-header .l-nav_sns-tw a {
      width: 14px;
      background: url(../images/common/header/sns_tw.png) 50% 50% no-repeat;
      background-size: 14px 12px; }
      .l-header .l-nav_sns-tw a:hover {
        background: url(../images/common/header/sns_tw_ov.png) 50% 50% no-repeat;
        background-size: 14px 12px; }
    .l-header .l-nav_sns-fb a {
      width: 8px;
      background: url(../images/common/header/sns_fb.png) 50% 50% no-repeat;
      background-size: 8px 16px; }
      .l-header .l-nav_sns-fb a:hover {
        background: url(../images/common/header/sns_fb_ov.png) 50% 50% no-repeat;
        background-size: 8px 16px; }
    .l-header .l-nav_sns-yt a {
      width: 42px;
      background: url(../images/common/header/sns_yt.png) 50% 50% no-repeat;
      background-size: 42px 18px; }
      .l-header .l-nav_sns-yt a:hover {
        background: url(../images/common/header/sns_yt_ov.png) 50% 50% no-repeat;
        background-size: 42px 18px; }
  .l-header .l-nav_contact {
    position: absolute;
    top: -7px;
    right: 0;
    width: 131px;
    height: 47px;
    text-align: center;
    opacity: 1;
    -webkit-transition: top .3s ,opacity .2s;
    transition: top .3s ,opacity .2s; }
    .is-fixed .l-header .l-nav_contact {
      top: -100px;
      opacity: 0; }

.l-fade {
  position: fixed;
  top: 50px;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 1160px;
  height: 47px;
  text-align: center;
  opacity: 0;
  -webkit-transition: top .3s ,opacity .2s;
  transition: top .3s ,opacity .2s;
  z-index: 10000; }
  .is-fixed .l-fade {
    top: 80px;
    opacity: 1;
    pointer-events: none; }
  .l-fade li {
    position: absolute;
    right: 0; }

.l-nav_contact a {
  position: relative;
  display: block;
  background: #4e8fd8;
  width: 131px;
  height: 47px;
  padding-top: 13px;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  font-weight: bold;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  pointer-events: all; }
  .l-nav_contact a::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    margin: 0px auto;
    width: 121px;
    height: 2px;
    background: #fdff7b;
    -webkit-transition: background-color .3s;
    transition: background-color .3s; }
  .l-nav_contact a span {
    color: #fff;
    background: url(../images/common/arrow1.png) 0% 46% no-repeat;
    display: inline-block;
    letter-spacing: 0.1em;
    padding-left: 19px;
    right: 0px;
    -webkit-transition: color .2s, background-image .3s;
    transition: color .2s, background-image .3s; }
  .l-nav_contact a:hover {
    background: #fdff7b; }
    .l-nav_contact a:hover::before {
      background: #4e8fd8; }
    .l-nav_contact a:hover span {
      color: #4e8fd8;
      background: url(../images/common/arrow1_ov.png) 0% 46% no-repeat; }

/**
 * main.scss
 */
.l-main {
  position: relative;
  padding-top: 125px; }

.l-second_title {
  color: #333;
  font-size: 16px;
  margin: 0 auto;
  text-align: left; }
  .l-second_title .jp {
    display: inline-block;
    letter-spacing: 0.09em;
    margin-bottom: 7px; }
  .l-second_title .en {
    display: block;
    line-height: 1.1; }
    .l-second_title .en img {
      height: auto;
      width: 100%; }

.l-btn_ribbon {
  display: inline-block; }
  .l-btn_ribbon a {
    background: url(../images/common/btn2.png) left top no-repeat;
    background-size: cover;
    color: #fff;
    display: block;
    height: 42px;
    letter-spacing: 1.5px;
    padding-top: 13px;
    text-align: center;
    -webkit-transition: .4s;
    transition: .4s;
    width: 259.5px; }
    .l-btn_ribbon a:hover {
      background: url(../images/common/btn2_ov.png) left top no-repeat;
      background-size: cover;
      color: #54afda;
      opacity: 1; }
  .l-btn_ribbon.dark a {
    background-image: url(../images/common/btn1.png); }
    .l-btn_ribbon.dark a:hover {
      background: url(../images/common/btn1_ov.png) left top no-repeat;
      background-size: cover;
      color: #4e8fd8;
      opacity: 1; }

.l-btn_ribbon_sub1 {
  display: inline-block; }
  .l-btn_ribbon_sub1 a {
    background: url(../images/common/btn3.png) left top no-repeat;
    background-size: cover;
    color: #fff;
    display: block;
    height: 42px;
    letter-spacing: 1.5px;
    padding-top: 13px;
    -webkit-transition: .4s;
    transition: .4s;
    width: 539px; }
    .l-btn_ribbon_sub1 a:hover {
      background: url(../images/common/btn3_ov.png) left top no-repeat;
      background-size: cover;
      color: #54afda;
      opacity: 1; }

.l-btn_ribbon_sub2 {
  display: inline-block; }
  .l-btn_ribbon_sub2 a {
    background: url(../images/common/btn4.png) left top no-repeat;
    background-size: cover;
    color: #fff;
    display: block;
    height: 62px;
    letter-spacing: 1.5px;
    padding-top: 13px;
    text-align: center;
    -webkit-transition: .4s;
    transition: .4s;
    width: 539px; }
    .l-btn_ribbon_sub2 a:hover {
      background: url(../images/common/btn4_ov.png) left top no-repeat;
      background-size: cover;
      color: #54afda;
      opacity: 1; }

.l-btn_ribbon_sub3 {
  display: inline-block; }
  .l-btn_ribbon_sub3 a {
    background: url(../images/common/btn4.png) left top no-repeat;
    background-size: cover;
    color: #fff;
    display: block;
    height: 42px;
    letter-spacing: 1.5px;
    padding-top: 13px;
    text-align: center;
    -webkit-transition: .4s;
    transition: .4s;
    width: 363px; }
    .l-btn_ribbon_sub3 a:hover {
      background: url(../images/common/btn4_ov.png) left top no-repeat;
      background-size: cover;
      color: #54afda;
      opacity: 1; }

.is-disable a {
  background: url(../images/common/btn_gray.png) left top no-repeat;
  background-size: cover;
  color: #fff;
  display: block;
  height: 42px;
  letter-spacing: 1.5px;
  padding-top: 13px;
  text-align: center;
  -webkit-transition: .4s;
  transition: .4s;
  width: 260px;
  pointer-events: none; }

.l-btn_more {
  background: url(../images/common/blue_line.png) center center no-repeat;
  background-size: 1057px auto;
  margin-top: 34px;
  text-align: center; }
  .l-btn_more a {
    background: url(../images/projects/btn.png) left center no-repeat;
    background-size: 28px 28px;
    display: inline-block;
    height: 56px;
    font-weight: bold;
    padding-left: 40px;
    padding-top: 20px;
    -webkit-transition: .4s;
    transition: .4s; }
    .l-btn_more a:hover {
      background: url(../images/projects/btn_hover.png) left center no-repeat;
      background-size: 28px 28px; }
    .l-btn_more a.is-open {
      background: url(../images/projects/btn_close.png) left center no-repeat;
      background-size: 28px 28px; }

/*
news
-----------------------------------------*/
.p-news_detail {
  /* aside */ }
  .p-news_detail .l-contact_block {
    background: none;
    margin-bottom: 50px;
    min-width: 1160px; }
  .p-news_detail .l-recommend_block {
    background: #cbf2f4;
    padding: 60px 0;
    min-width: 1160px;
    width: 100%; }
    .p-news_detail .l-recommend_block .l-liner_ttl {
      display: inline-block;
      font-size: 18px;
      margin-bottom: 22px;
      padding-left: 2px;
      position: relative;
      z-index: 1; }
      .p-news_detail .l-recommend_block .l-liner_ttl:before {
        background: #fdff7b;
        bottom: 0;
        content: '';
        display: inline-block;
        height: 70%;
        left: 0;
        position: absolute;
        right: 0;
        z-index: -1;
        width: 100%; }
    .p-news_detail .l-recommend_block .l-recommend_block_inr {
      margin: 0 auto;
      width: 1056px; }
      .p-news_detail .l-recommend_block .l-recommend_block_inr .l-btn_ribbon {
        float: right;
        margin-top: -20px; }

/*
projects
-----------------------------------------*/
.l-projects_detail .l-recommend_pickup_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .l-projects_detail .l-recommend_pickup_list li {
    background: #fff;
    border-radius: 10px; }
    .l-projects_detail .l-recommend_pickup_list li a {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      background: #fff;
      border: 2px solid #ced6da;
      border-radius: 10px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 35px 20px 35px 35px;
      width: 504px; }
    .l-projects_detail .l-recommend_pickup_list li figure {
      border-radius: 10px;
      height: 144px;
      position: relative;
      width: 144px; }
      .l-projects_detail .l-recommend_pickup_list li figure img {
        border-radius: 10px;
        bottom: 0;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%; }
    .l-projects_detail .l-recommend_pickup_list li .box_txt {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 144px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 10px 0;
      width: 275px; }
    .l-projects_detail .l-recommend_pickup_list li .wrap_article {
      -webkit-align-self: flex-start;
          -ms-flex-item-align: start;
              align-self: flex-start; }
      .l-projects_detail .l-recommend_pickup_list li .wrap_article .vol {
        color: #54afda;
        font-size: 16px;
        display: inline-block;
        margin-bottom: 10px; }
      .l-projects_detail .l-recommend_pickup_list li .wrap_article .ttl {
        font-size: 18px;
        font-weight: bold; }
    .l-projects_detail .l-recommend_pickup_list li .wrap_parts {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      background: url(../images/projects/detail/gray_line.png) left top repeat-x;
      background-size: auto 2px;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 42px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding-top: 30px;
      width: 100%; }
      .l-projects_detail .l-recommend_pickup_list li .wrap_parts .logo {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-basis: 50%;
            -ms-flex-preferred-size: 50%;
                flex-basis: 50%;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left;
        overflow: visible; }
        .l-projects_detail .l-recommend_pickup_list li .wrap_parts .logo .partner {
          background: url(../images/projects/projects_partner.png) left center no-repeat;
          background-size: 52px auto;
          border-right: 2px solid #ced6da;
          -webkit-flex-basis: 66px;
              -ms-flex-preferred-size: 66px;
                  flex-basis: 66px;
          margin-right: 16px;
          line-height: 1.1;
          text-indent: -99999px; }
        .l-projects_detail .l-recommend_pickup_list li .wrap_parts .logo .img {
          padding: 0;
          position: relative;
          text-align: left; }
          .l-projects_detail .l-recommend_pickup_list li .wrap_parts .logo .img img {
            bottom: 0;
            margin: auto;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: auto;
            height: auto;
            max-width: 160px;
            max-height: 30px; }

/*
projects
-----------------------------------------*/
.l-projects_detail .l-recommend_block {
  background: #cbf2f4;
  padding: 60px 0;
  min-width: 1160px;
  width: 100%; }
  .l-projects_detail .l-recommend_block .l-liner_ttl {
    display: inline-block;
    font-size: 18px;
    margin-bottom: 22px;
    padding-left: 2px;
    position: relative;
    z-index: 1; }
    .l-projects_detail .l-recommend_block .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 100%; }
  .l-projects_detail .l-recommend_block .l-recommend_block_inr {
    margin: 0 auto;
    width: 1056px; }
    .l-projects_detail .l-recommend_block .l-recommend_block_inr .l-btn_ribbon {
      float: right;
      margin-top: -20px; }

.l-projects_detail .l-recommend_projects_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .l-projects_detail .l-recommend_projects_list li {
    background: url(../images/projects/list_waku.png) left top no-repeat;
    background-size: 100% 100%; }
    .l-projects_detail .l-recommend_projects_list li a {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      background: url(../images/projects/list_waku.png) left top no-repeat;
      background-size: 504px 234px;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 234px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 35px 25px 35px 37px;
      width: 504px; }
    .l-projects_detail .l-recommend_projects_list li figure {
      border-radius: 10px;
      height: 144px;
      position: relative;
      width: 144px; }
      .l-projects_detail .l-recommend_projects_list li figure img {
        bottom: 0;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%; }
    .l-projects_detail .l-recommend_projects_list li .box_txt {
      padding: 10px 0;
      width: 273px; }
    .l-projects_detail .l-recommend_projects_list li .vol {
      color: #54afda;
      font-size: 16px;
      display: inline-block;
      margin-bottom: 10px; }
    .l-projects_detail .l-recommend_projects_list li .ttl {
      font-size: 18px;
      font-weight: bold;
      letter-spacing: 0.03em;
      line-height: 25px;
      margin-bottom: 10px; }
    .l-projects_detail .l-recommend_projects_list li .txt {
      line-height: 23px; }

/*
activities
-----------------------------------------*/
.p-activities_detail .l-recommend_block {
  background: #cbf2f4;
  padding: 60px 0;
  min-width: 1160px;
  width: 100%; }
  .p-activities_detail .l-recommend_block .l-liner_ttl {
    display: inline-block;
    font-size: 18px;
    margin-bottom: 22px;
    padding-left: 2px;
    position: relative;
    z-index: 1; }
    .p-activities_detail .l-recommend_block .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 100%; }
  .p-activities_detail .l-recommend_block .l-recommend_block_inr {
    margin: 0 auto;
    width: 1056px; }
    .p-activities_detail .l-recommend_block .l-recommend_block_inr .l-btn_ribbon {
      float: right;
      margin-top: -20px; }

/*
forum
-----------------------------------------*/
.l-forum_detail .l-recommend_block {
  background: #cbf2f4;
  padding: 60px 0;
  min-width: 1160px;
  width: 100%; }
  .l-forum_detail .l-recommend_block .l-liner_ttl {
    display: inline-block;
    font-size: 18px;
    margin-bottom: 22px;
    padding-left: 2px;
    position: relative;
    z-index: 1; }
    .l-forum_detail .l-recommend_block .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 100%; }
  .l-forum_detail .l-recommend_block .l-recommend_block_inr {
    margin: 0 auto;
    width: 1056px; }
    .l-forum_detail .l-recommend_block .l-recommend_block_inr .l-btn_ribbon {
      float: right;
      margin-top: -20px; }

.l-forum_detail .l-recommend_forum_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

/*
contact
-----------------------------------------*/
.p-contact .l-recommend_block {
  background: #cbf2f4;
  padding: 60px 0;
  min-width: 1160px;
  width: 100%; }
  .p-contact .l-recommend_block .l-liner_ttl {
    display: inline-block;
    font-size: 18px;
    margin-bottom: 22px;
    padding-left: 2px;
    position: relative;
    z-index: 1; }
    .p-contact .l-recommend_block .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 100%; }
  .p-contact .l-recommend_block .l-recommend_block_inr {
    margin: 0 auto;
    width: 1056px; }
    .p-contact .l-recommend_block .l-recommend_block_inr .l-btn_ribbon {
      float: right;
      margin-top: -20px; }

.p-contact .l-recommend_projects_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .p-contact .l-recommend_projects_list li {
    background: url(../images/projects/list_waku.png) left top no-repeat;
    background-size: 100% 100%; }
    .p-contact .l-recommend_projects_list li a {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      background: url(../images/projects/list_waku.png) left top no-repeat;
      background-size: 504px 234px;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 234px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 35px 25px 35px 37px;
      width: 504px; }
    .p-contact .l-recommend_projects_list li figure {
      border-radius: 10px;
      height: 144px;
      position: relative;
      width: 144px; }
      .p-contact .l-recommend_projects_list li figure img {
        bottom: 0;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%; }
    .p-contact .l-recommend_projects_list li .box_txt {
      padding: 10px 0;
      width: 273px; }
    .p-contact .l-recommend_projects_list li .vol {
      color: #54afda;
      font-size: 16px;
      display: inline-block;
      margin-bottom: 10px; }
    .p-contact .l-recommend_projects_list li .ttl {
      font-size: 18px;
      font-weight: bold;
      letter-spacing: 0.03em;
      line-height: 25px;
      margin-bottom: 10px; }
    .p-contact .l-recommend_projects_list li .txt {
      line-height: 23px; }

/*
ALL
-----------------------------------------*/
.l-recommend_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  clear: both;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .l-recommend_list li:nth-of-type(even) {
    margin-left: 46px; }
  .l-recommend_list li:nth-of-type(n+3) {
    margin-top: 40px; }
  .l-recommend_list li.l-recommend_list--pickup {
    border-radius: 10px; }
    .l-recommend_list li.l-recommend_list--pickup a {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      background: #fff;
      border: 2px solid #ced6da;
      border-radius: 10px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 35px 20px 35px 35px;
      width: 504px; }
    .l-recommend_list li.l-recommend_list--pickup figure {
      border-radius: 10px;
      height: 144px;
      position: relative;
      width: 144px; }
      .l-recommend_list li.l-recommend_list--pickup figure img {
        border-radius: 10px;
        bottom: 0;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%; }
    .l-recommend_list li.l-recommend_list--pickup .box_txt {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 144px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 10px 0;
      width: 275px; }
    .l-recommend_list li.l-recommend_list--pickup .wrap_article {
      -webkit-align-self: flex-start;
          -ms-flex-item-align: start;
              align-self: flex-start; }
      .l-recommend_list li.l-recommend_list--pickup .wrap_article .vol {
        color: #54afda;
        font-size: 16px;
        display: inline-block;
        margin-bottom: 10px; }
      .l-recommend_list li.l-recommend_list--pickup .wrap_article .ttl {
        font-size: 18px;
        font-weight: bold; }
    .l-recommend_list li.l-recommend_list--pickup .wrap_parts {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      background: url(../images/projects/detail/gray_line.png) left top repeat-x;
      background-size: auto 2px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 42px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding-top: 30px;
      width: 100%; }
      .l-recommend_list li.l-recommend_list--pickup .wrap_parts .logo {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-basis: 50%;
            -ms-flex-preferred-size: 50%;
                flex-basis: 50%;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left;
        overflow: visible; }
        .l-recommend_list li.l-recommend_list--pickup .wrap_parts .logo .partner {
          background: url(../images/projects/projects_partner.png) left center no-repeat;
          background-size: 52px auto;
          border-right: 2px solid #ced6da;
          -webkit-flex-basis: 66px;
              -ms-flex-preferred-size: 66px;
                  flex-basis: 66px;
          margin-right: 16px;
          line-height: 1.1;
          text-indent: -99999px; }
        .l-recommend_list li.l-recommend_list--pickup .wrap_parts .logo .img {
          padding: 0;
          position: relative;
          text-align: left; }
          .l-recommend_list li.l-recommend_list--pickup .wrap_parts .logo .img img {
            bottom: 0;
            margin: auto;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: auto;
            height: auto;
            max-width: 160px;
            max-height: 30px; }
  .l-recommend_list li.l-recommend_list--projects {
    background: url(../images/projects/list_waku.png) left top no-repeat;
    background-size: 100% 100%; }
    .l-recommend_list li.l-recommend_list--projects a {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      background: url(../images/projects/list_waku.png) left top no-repeat;
      background-size: 504px 234px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 234px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 35px 25px 35px 37px;
      width: 504px; }
    .l-recommend_list li.l-recommend_list--projects figure {
      border-radius: 10px;
      height: 144px;
      position: relative;
      width: 144px; }
      .l-recommend_list li.l-recommend_list--projects figure img {
        bottom: 0;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%; }
    .l-recommend_list li.l-recommend_list--projects .box_txt {
      padding: 10px 0;
      width: 273px; }
    .l-recommend_list li.l-recommend_list--projects .vol {
      color: #54afda;
      font-size: 16px;
      display: inline-block;
      margin-bottom: 10px; }
    .l-recommend_list li.l-recommend_list--projects .ttl {
      font-size: 18px;
      font-weight: bold;
      letter-spacing: 0.03em;
      line-height: 25px;
      margin-bottom: 10px; }
    .l-recommend_list li.l-recommend_list--projects .txt {
      line-height: 23px; }
  .l-recommend_list li.l-recommend_list--activities {
    background: url(../images/activities/bg.png) left top no-repeat;
    background-size: 100% auto;
    height: 214px;
    width: 504px; }
    .l-recommend_list li.l-recommend_list--activities a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 214px;
      padding: 25px 0 0 36px;
      position: relative;
      text-align: left; }
    .l-recommend_list li.l-recommend_list--activities figure {
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center;
      -webkit-flex-basis: 144px;
          -ms-flex-preferred-size: 144px;
              flex-basis: 144px;
      border-radius: 10px;
      height: 144px;
      overflow: hidden;
      position: relative;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .l-recommend_list li.l-recommend_list--activities figure img {
        bottom: 0;
        left: 0;
        margin: 0;
        max-height: 100%;
        max-width: 100%;
        position: absolute;
        right: 0;
        top: 0; }
    .l-recommend_list li.l-recommend_list--activities .r_box {
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center;
      -webkit-flex-basis: 300px;
          -ms-flex-preferred-size: 300px;
              flex-basis: 300px;
      padding-left: 20px;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .l-recommend_list li.l-recommend_list--activities .r_box .ttl {
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 0.16em;
        margin-bottom: 18px;
        line-height: 1.15; }
      .l-recommend_list li.l-recommend_list--activities .r_box .txt {
        line-height: 23px;
        letter-spacing: 0.13em; }
    .l-recommend_list li.l-recommend_list--activities .label {
      background-color: #fff;
      border-radius: 10px;
      bottom: -13px;
      color: #54afda;
      height: 40px;
      position: absolute;
      right: 45px;
      width: 140px; }
      .l-recommend_list li.l-recommend_list--activities .label span {
        background-color: #fff;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        border: 2px solid #54afda;
        border-radius: 10px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        letter-spacing: 0;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-transition: all .4s;
        transition: all .4s;
        width: 140px; }
      .l-recommend_list li.l-recommend_list--activities .label.blue span {
        background-color: #54afda;
        color: #fff; }
    .l-recommend_list li.l-recommend_list--activities a:hover figure,
    .l-recommend_list li.l-recommend_list--activities a:hover .r_box,
    .l-recommend_list li.l-recommend_list--activities a:hover .label span {
      opacity: .5; }
  .l-recommend_list li.l-recommend_list--forums {
    height: 231px;
    width: 505px; }
    .l-recommend_list li.l-recommend_list--forums a {
      background: url(../images/forum/waku.png) left top no-repeat;
      background-size: 100% 100%;
      position: relative;
      color: #333333;
      display: block;
      height: 231px;
      width: 505px; }
      .l-recommend_list li.l-recommend_list--forums a:hover .inr,
      .l-recommend_list li.l-recommend_list--forums a:hover .label span {
        opacity: .5; }
    .l-recommend_list li.l-recommend_list--forums .inr {
      padding: 20px 0 0 60px;
      -webkit-transition: opacity 0.4s;
      transition: opacity 0.4s;
      width: 477px; }
    .l-recommend_list li.l-recommend_list--forums .ttl {
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end;
      border-bottom: 2px dotted #ced6da;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 18px;
      font-weight: bold;
      height: 60px;
      letter-spacing: 0.04em;
      line-height: 23px;
      margin-bottom: 36px;
      padding-bottom: 6px;
      width: 390px; }
    .l-recommend_list li.l-recommend_list--forums dl {
      font-weight: bold;
      padding-left: 1px;
      width: 420px; }
      .l-recommend_list li.l-recommend_list--forums dl dt {
        clear: both;
        float: left;
        letter-spacing: 0;
        line-height: 21px;
        position: relative;
        width: 64px; }
        .l-recommend_list li.l-recommend_list--forums dl dt:after {
          content: ':';
          position: absolute;
          right: 10px;
          top: 0; }
      .l-recommend_list li.l-recommend_list--forums dl dd {
        letter-spacing: 0.003em;
        line-height: 23px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap; }
    .l-recommend_list li.l-recommend_list--forums .label {
      color: #54afda;
      background-color: #fff;
      border-radius: 10px;
      overflow: hidden;
      position: absolute;
      right: 31px;
      top: -12px;
      width: 100px; }
      .l-recommend_list li.l-recommend_list--forums .label span {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        border: 2px solid #54afda;
        border-radius: 10px;
        display: block;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding-top: 1px;
        -webkit-transition: opacity 0.4s;
        transition: opacity 0.4s;
        width: 100px; }
      .l-recommend_list li.l-recommend_list--forums .label.study span {
        background: #54afda;
        color: #fff; }

.p-404_contents {
  text-align: center;
  padding: 40px 100px 70px;
  margin: 76px auto 0;
  width: 1012px;
  background-color: #feffca;
  border-radius: 250px; }
  .p-404_contents .logo {
    width: 238px;
    height: 180px;
    margin: 0 auto;
    padding-left: 40px; }
    .p-404_contents .logo img {
      width: 100%;
      height: auto; }
  .p-404_contents h1 {
    font-size: 2.4rem;
    font-weight: bold;
    letter-spacing: 0;
    margin-top: 15px; }
  .p-404_contents .txt {
    line-height: 1.7;
    letter-spacing: .1em;
    margin-top: 20px; }
  .p-404_contents .l-btn_ribbon {
    margin-top: 36px; }

.p-activities {
  /* inspect_area
  ---------------------*/
  /* join_area
  ---------------------*/ }
  .p-activities .l-main {
    word-break: break-all; }
  .p-activities .l-second_title {
    padding: 34px 0;
    width: 199.5px; }
  .p-activities .l-sec_area .sec_ttl {
    font-size: 18px;
    margin-bottom: 15px; }
  .p-activities .l-sec_area p {
    letter-spacing: 0.13em;
    line-height: 23px; }
  .p-activities .inr_inside {
    margin: 0 auto;
    width: 1056px; }
  .p-activities .p-activities_inspect_area {
    background: #feffca;
    margin-top: 50px; }
    .p-activities .p-activities_inspect_area .inr_inside {
      padding-bottom: 50px; }
    .p-activities .p-activities_inspect_area .p-activities_inspect_lead {
      background: url(../images/activities/inspect_p.png) 16px 46px no-repeat;
      background-size: 333px auto;
      min-height: 275px;
      margin-bottom: 35px;
      padding-left: 380px;
      padding-top: 80px; }
  .p-activities .p-activities_join_area .inr_inside {
    background: url(../images/activities/sanka.png) -4px 100px no-repeat;
    background-size: 230px auto;
    padding: 119px 65px 108px 265px; }
  .p-activities .p-activities_join_area .l-btn_ribbon {
    margin-top: 26px; }

.p-activities_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .p-activities_list li {
    background: url(../images/activities/bg.png) left top no-repeat;
    background-size: 100% auto;
    height: 214px;
    width: 504px; }
    .p-activities_list li:nth-of-type(n+3) {
      margin-top: 15px; }
    .p-activities_list li a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 214px;
      padding: 25px 0 0 36px;
      position: relative;
      text-align: left; }
    .p-activities_list li figure {
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center;
      -webkit-flex-basis: 144px;
          -ms-flex-preferred-size: 144px;
              flex-basis: 144px;
      border-radius: 10px;
      height: 144px;
      overflow: hidden;
      position: relative;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .p-activities_list li figure img {
        bottom: 0;
        left: 0;
        margin: 0;
        max-height: 100%;
        max-width: 100%;
        position: absolute;
        right: 0;
        top: 0; }
    .p-activities_list li .r_box {
      -webkit-align-self: flex-start;
          -ms-flex-item-align: start;
              align-self: flex-start;
      -webkit-flex-basis: 300px;
          -ms-flex-preferred-size: 300px;
              flex-basis: 300px;
      padding-left: 20px;
      -webkit-transition: all .4s;
      transition: all .4s;
      padding-top: 40px; }
      .p-activities_list li .r_box .ttl {
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 0.16em;
        margin-bottom: 18px;
        line-height: 1.4; }
      .p-activities_list li .r_box .txt {
        line-height: 23px;
        letter-spacing: 0.13em; }
    .p-activities_list li .label {
      background-color: #fff;
      border-radius: 10px;
      bottom: -13px;
      color: #54afda;
      height: 40px;
      position: absolute;
      right: 45px;
      width: 140px; }
      .p-activities_list li .label span {
        background-color: #fff;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        border: 2px solid #54afda;
        border-radius: 10px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        letter-spacing: 0;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-transition: all .4s;
        transition: all .4s;
        width: 140px; }
      .p-activities_list li .label.blue span {
        background-color: #54afda;
        color: #fff; }
    .p-activities_list li a:hover figure,
    .p-activities_list li a:hover .r_box,
    .p-activities_list li a:hover .label span {
      opacity: .5; }

/*--------------------
 detail
---------------------*/
.p-activities_detail .l-main {
  word-break: break-all; }

.p-activities_detail .p-activities_detail_contents {
  margin: 80px auto 30px;
  width: 1056px; }
  .p-activities_detail .p-activities_detail_contents .p-activities_detail_title {
    font-size: 24px;
    margin-bottom: 30px; }
  .p-activities_detail .p-activities_detail_contents .p-activities_detail_ttl_txt {
    line-height: 1.7;
    margin-bottom: 96px; }
  .p-activities_detail .p-activities_detail_contents .l-sec_area {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 75px; }
    .p-activities_detail .p-activities_detail_contents .l-sec_area .txt_box {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      line-height: 23px; }
      .p-activities_detail .p-activities_detail_contents .l-sec_area .txt_box p {
        line-height: 23px;
        letter-spacing: 0.08em; }
    .p-activities_detail .p-activities_detail_contents .l-sec_area .sec_ttl {
      font-size: 18px;
      margin-bottom: 30px;
      width: 100%; }
    .p-activities_detail .p-activities_detail_contents .l-sec_area figure {
      -webkit-flex-basis: 418px;
          -ms-flex-preferred-size: 418px;
              flex-basis: 418px;
      margin-left: 45px; }
      .p-activities_detail .p-activities_detail_contents .l-sec_area figure img {
        border-radius: 10px;
        height: auto;
        width: 100%; }
      .p-activities_detail .p-activities_detail_contents .l-sec_area figure figcaption {
        margin-top: 10px; }
  .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox {
    margin-bottom: 72px; }
    .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line + .p-activities_detail_line {
        margin-top: 80px; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .ttl {
        font-size: 1.8rem;
        font-weight: bold;
        margin-bottom: 25px; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .ttl2 {
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1.7;
        margin-bottom: 25px; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .txt {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto; }
        .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .txt .txt_content, .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .txt p {
          line-height: 1.7; }
        .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .txt p + p {
          margin-top: 1.5em; }
        .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .txt .l-btn_ribbon {
          margin-top: 32px; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .pix {
        width: 420px;
        margin-left: 45px; }
        .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .pix figure {
          width: 420px; }
          .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .pix figure img {
            width: 100%;
            height: auto;
            border-radius: 10px; }
          .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .pix figure figcaption {
            margin-top: 12px;
            margin-left: 4px;
            letter-spacing: .16rem; }
          .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .pix figure + figure {
            margin-top: 35px; }
      .p-activities_detail .p-activities_detail_contents .p-activities_detail_mainbox .p-activities_detail_line .inner_block {
        margin-top: 35px;
        width: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; }

.p-activities_detail .l-contact_block {
  background: none;
  margin-bottom: 50px;
  min-width: 1160px; }

.p-activities_question {
  width: 100%;
  background-color: #cbf2f4;
  padding: 42px 0 57px;
  margin-bottom: 41px; }
  .p-activities_question .ttl_wrap {
    width: 1056px;
    margin: 0 auto; }
    .p-activities_question .ttl_wrap .l-liner_ttl {
      display: inline-block;
      font-size: 24px;
      line-height: 23px;
      padding-bottom: 7px;
      position: relative;
      z-index: 1; }
      .p-activities_question .ttl_wrap .l-liner_ttl:before {
        background: #fdff7b;
        bottom: 0;
        content: '';
        display: inline-block;
        height: 50%;
        left: 0;
        position: absolute;
        right: 0;
        z-index: -1;
        width: 0%;
        -webkit-transition: width .3s .3s;
        transition: width .3s .3s; }
    .p-activities_question .ttl_wrap .l-liner_ttl.motion:before {
      width: 100%; }
    .p-activities_question .ttl_wrap p {
      font-size: 1.8rem;
      font-weight: bold;
      margin-top: 23px;
      letter-spacing: .08rem; }
  .p-activities_question .profile_wrap {
    width: 1056px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 26px; }
    .p-activities_question .profile_wrap .profile {
      width: calc(100% - 259.5px); }
      .p-activities_question .profile_wrap .profile .dtl {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        width: 420px;
        padding-left: 11px; }
        .p-activities_question .profile_wrap .profile .dtl figure {
          width: 135px;
          height: 135px; }
          .p-activities_question .profile_wrap .profile .dtl figure img {
            width: 100%;
            height: auto; }
        .p-activities_question .profile_wrap .profile .dtl .name {
          width: 265px;
          padding-left: 13px; }
          .p-activities_question .profile_wrap .profile .dtl .name small {
            font-weight: bold;
            font-size: 1.4rem; }
          .p-activities_question .profile_wrap .profile .dtl .name h4 {
            font-size: 1.8rem;
            margin-top: 7px; }
      .p-activities_question .profile_wrap .profile p {
        line-height: 1.7;
        margin-top: 20px; }

/*--------------------
 join
---------------------*/
.p-activities_join {
  /* member_area
  ---------------------*/
  /* buy_area
  ---------------------*/ }
  .p-activities_join .p-activities_join_title_area {
    background: url(../images/activities/join/main.jpg) center center no-repeat;
    background-size: cover;
    height: 462px;
    margin-bottom: 25px;
    position: relative;
    width: 100%; }
    .p-activities_join .p-activities_join_title_area .title_inr {
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      bottom: 0;
      color: #fff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      left: 50%;
      margin: auto auto auto 80px;
      padding-top: 25px;
      position: absolute;
      top: 0; }
      .p-activities_join .p-activities_join_title_area .title_inr .title {
        font-size: 24px;
        margin-bottom: 35px; }
      .p-activities_join .p-activities_join_title_area .title_inr .txt1 {
        font-size: 18px;
        margin-bottom: 20px; }
      .p-activities_join .p-activities_join_title_area .title_inr .txt2 {
        line-height: 23px; }
  .p-activities_join .pagelink_list {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto 20px;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    width: 1056px; }
    .p-activities_join .pagelink_list li {
      margin-left: 60px; }
    .p-activities_join .pagelink_list a {
      display: inline-block;
      padding-left: 47px;
      position: relative; }
      .p-activities_join .pagelink_list a:before {
        background: url(../images/common/btn-slider-arrow.png) left top no-repeat;
        background-size: 100%;
        bottom: 0;
        display: inline-block;
        content: '';
        left: 0;
        margin: auto;
        height: 33px;
        position: absolute;
        -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
                transform: rotate(90deg);
        -webkit-transition: all .4s;
        transition: all .4s;
        top: 0;
        width: 33px; }
      .p-activities_join .pagelink_list a:hover:before {
        background: url(../images/common/btn-slider-arrow_ov.png) left top no-repeat;
        background-size: 100%; }
  .p-activities_join .l-sec_area {
    line-height: 23px; }
    .p-activities_join .l-sec_area .sec_ttl {
      display: inline-block;
      font-size: 18px;
      margin-bottom: 47px;
      padding: 0 5px 0 3px;
      position: relative;
      z-index: 1; }
      .p-activities_join .l-sec_area .sec_ttl:before {
        background: #fdff7b;
        bottom: -8px;
        content: '';
        display: inline-block;
        height: 70%;
        left: 0;
        position: absolute;
        right: 0;
        z-index: -1;
        width: 0%;
        -webkit-transition: width .3s .3s;
        transition: width .3s .3s; }
      .p-activities_join .l-sec_area .sec_ttl.motion:before {
        width: 100%; }
    .p-activities_join .l-sec_area p {
      letter-spacing: 0.13em;
      line-height: 23px; }
    .p-activities_join .l-sec_area .cont_block {
      padding-bottom: 30px; }
      .p-activities_join .l-sec_area .cont_block .cont_ttl {
        font-weight: bold;
        margin-bottom: 20px; }
      .p-activities_join .l-sec_area .cont_block .txt_list li {
        line-height: 23px; }
      .p-activities_join .l-sec_area .cont_block .note1 {
        padding: 35px 0 20px; }
  .p-activities_join .inr_inside {
    margin: 0 auto;
    width: 1056px; }
  .p-activities_join .dotted_table {
    border-left: 2px dotted #ced6da;
    border-top: 2px dotted #ced6da;
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%; }
    .p-activities_join .dotted_table .parts_radio {
      border: 2px solid #ced6da;
      border-radius: 23px;
      display: inline-block;
      height: 23px;
      overflow: hidden;
      position: relative;
      width: 23px; }
    .p-activities_join .dotted_table th,
    .p-activities_join .dotted_table td {
      border-bottom: 2px dotted #ced6da;
      border-right: 2px dotted #ced6da; }
    .p-activities_join .dotted_table th {
      background: #f7f7f7; }
      .p-activities_join .dotted_table th:first-of-type {
        text-align: left;
        width: 300px; }
      .p-activities_join .dotted_table th:nth-of-type(n+2) {
        padding: 20px; }
      .p-activities_join .dotted_table th .bg {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-align-self: stretch;
            -ms-flex-item-align: stretch;
                align-self: stretch;
        border-bottom: 1px solid #fff;
        border-top: 1px solid #fff;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        padding: 19px 0 19px 20px;
        width: 100%; }
    .p-activities_join .dotted_table td {
      color: #ced6da;
      font-size: 24px;
      text-align: center; }
      .p-activities_join .dotted_table td .note {
        color: #000;
        display: inline-block;
        font-size: 14px;
        min-width: 1px;
        padding-top: 6px;
        vertical-align: top; }
  .p-activities_join .p-activities_join_member_area {
    background: url(../images/activities/join/p1.png) 761px 143px no-repeat;
    background-size: 224px auto;
    margin: 0 auto;
    padding-bottom: 30px;
    width: 1056px; }
    .p-activities_join .p-activities_join_member_area .cont_block:nth-of-type(2) {
      background: url(../images/activities/join/p2.png) 938px 83px no-repeat;
      background-size: 85px auto; }
    .p-activities_join .p-activities_join_member_area .note2 {
      margin-top: 15px;
      text-align: right; }
    .p-activities_join .p-activities_join_member_area .btn_list {
      margin-top: 55px; }
      .p-activities_join .p-activities_join_member_area .btn_list li:nth-of-type(n+2) {
        margin-left: 25px; }
      .p-activities_join .p-activities_join_member_area .btn_list li.contact {
        margin-left: 30px; }
        .p-activities_join .p-activities_join_member_area .btn_list li.contact a span {
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          display: inline-block;
          margin: 0 auto;
          position: relative; }
          .p-activities_join .p-activities_join_member_area .btn_list li.contact a span:before {
            content: '';
            background: url(../images/common/arrow2.png) left top no-repeat;
            background-size: cover;
            margin-bottom: -2px;
            margin-right: 10px;
            display: inline-block;
            height: 13px;
            -webkit-transition: all .4s;
            transition: all .4s;
            width: 7px; }
          .p-activities_join .p-activities_join_member_area .btn_list li.contact a span:after {
            background-color: #fdff7b;
            bottom: -4px;
            content: '';
            display: inline-block;
            left: 0;
            height: 2px;
            position: absolute;
            -webkit-transition: all .4s;
            transition: all .4s;
            width: 100%; }
        .p-activities_join .p-activities_join_member_area .btn_list li.contact a:hover {
          background-color: #fdff7b;
          color: #4e8fd8; }
          .p-activities_join .p-activities_join_member_area .btn_list li.contact a:hover span:before {
            background: url(../images/common/arrow2_ov.png) left top no-repeat;
            background-size: cover; }
          .p-activities_join .p-activities_join_member_area .btn_list li.contact a:hover span:after {
            background-color: #4e8fd8; }
  .p-activities_join .p-activities_join_buy_area {
    background: #feffca;
    margin-bottom: 45px;
    padding: 60px 0 50px; }
    .p-activities_join .p-activities_join_buy_area .cont_block {
      padding-bottom: 0; }
    .p-activities_join .p-activities_join_buy_area .sec_ttl {
      margin-bottom: 35px; }
    .p-activities_join .p-activities_join_buy_area .l-btn_ribbon {
      margin-top: 20px; }
    .p-activities_join .p-activities_join_buy_area .dotted_wrap {
      background: #fff url(../images/activities/join/p3.png) 865px 246px no-repeat;
      background-size: 154px auto;
      border: 2px dashed #ced6da;
      margin-top: 40px;
      padding: 30px 50px; }
      .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li:nth-of-type(n+2) {
          margin-top: 50px; }
        .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li figure {
          -webkit-flex-basis: 192px;
              -ms-flex-preferred-size: 192px;
                  flex-basis: 192px;
          height: 192px;
          overflow: hidden; }
          .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li figure img {
            height: auto;
            width: 100%; }
        .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li .txt {
          -webkit-box-flex: 1;
          -webkit-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          padding-left: 60px; }
        .p-activities_join .p-activities_join_buy_area .dotted_wrap ul li .l-btn_ribbon {
          margin-top: 35px; }

.p-contact_content {
  width: 1056px;
  margin: 76px auto 78px; }
  .p-contact_content h1 {
    width: 160px;
    font-size: 2.4rem;
    margin-bottom: 22px;
    position: relative; }
    .p-contact_content h1:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 50%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-contact_content h1.motion:before {
      width: 100%; }
  .p-contact_content p {
    font-size: 1.4rem;
    line-height: 23px; }
    .p-contact_content p.lead {
      margin-bottom: 16px;
      line-height: 24px; }
    .p-contact_content p small {
      font-size: 1.4rem; }
  .p-contact_content_require, .p-contact_content_confirm {
    margin: 20px 0 18px; }
    .p-contact_content_require .required, .p-contact_content_confirm .required {
      color: #ff0000; }

.p-contact .l-f_contact {
  display: none; }

.p-contact-thanks {
  background: url(../images/sitemap/deco.png) no-repeat 97% bottom;
  background-size: 94px 94px; }
  .p-contact-thanks p {
    line-height: 24px;
    margin-bottom: 60px; }

.forum_future {
  background: #cbf2f4; }

.forum_before {
  background: #feffca;
  margin-bottom: 40px !important; }

.l-forum {
  min-width: 1160px; }
  .l-forum .l-main {
    word-break: break-all; }
  .l-forum main {
    padding: 35px 0; }
  .l-forum .l-second_title {
    margin-bottom: 36px;
    width: 359px; }
  .l-forum .l-liner_ttl {
    display: inline-block;
    font-size: 24px;
    line-height: 23px;
    margin-bottom: 37px;
    padding-bottom: 7px;
    position: relative;
    z-index: 1; }
    .l-forum .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 50%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .l-forum .l-liner_ttl.motion:before {
      width: 100%; }
  .l-forum .forum_future li:nth-of-type(2) {
    position: relative; }
    .l-forum .forum_future li:nth-of-type(2):before {
      content: '';
      display: block;
      background: url(../images/forum/deco1.png) 0 0 no-repeat;
      background-size: 100% auto;
      left: 11%;
      position: absolute;
      top: -72px;
      width: 70px;
      height: 106px;
      -webkit-transition: opacity .4s .8s,-webkit-transform .4s .8s;
      transition: opacity .4s .8s,-webkit-transform .4s .8s;
      transition: transform .4s .8s,opacity .4s .8s;
      transition: transform .4s .8s,opacity .4s .8s,-webkit-transform .4s .8s;
      -webkit-transform: translateY(90px);
          -ms-transform: translateY(90px);
              transform: translateY(90px);
      opacity: 0; }
    .l-forum .forum_future li:nth-of-type(2).motion:before {
      -webkit-transform: translateY(0px);
          -ms-transform: translateY(0px);
              transform: translateY(0px);
      opacity: 1; }
  .l-forum .forum_future .p-forum_section-nodata {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .l-forum .forum_future .p-forum_section-nodata .txt {
      width: 50%;
      font-weight: bold;
      font-size: 1.6rem; }
    .l-forum .forum_future .p-forum_section-nodata .pix {
      width: 50%;
      text-align: left;
      padding-left: 35px;
      margin-top: -82px; }
      .l-forum .forum_future .p-forum_section-nodata .pix img {
        width: 475px; }
  .l-forum .forum_before li:nth-of-type(6):before {
    content: '';
    display: block;
    background: url(../images/forum/deco2.png) 0 0 no-repeat;
    background-size: 100% auto;
    left: 68%;
    position: absolute;
    bottom: -93px;
    width: 70px;
    height: 106px;
    -webkit-transition: opacity .4s .8s,-webkit-transform .4s .8s;
    transition: opacity .4s .8s,-webkit-transform .4s .8s;
    transition: transform .4s .8s,opacity .4s .8s;
    transition: transform .4s .8s,opacity .4s .8s,-webkit-transform .4s .8s;
    -webkit-transform: translateY(-90px);
        -ms-transform: translateY(-90px);
            transform: translateY(-90px);
    opacity: 0; }
  .l-forum .forum_before li:nth-of-type(6).motion:before {
    -webkit-transform: translateY(0px);
        -ms-transform: translateY(0px);
            transform: translateY(0px);
    opacity: 1; }

.p-forum_section {
  width: 1200px;
  margin: 0 auto;
  padding: 60px 0 35px;
  position: relative; }
  .p-forum_section .inr_inside {
    margin: 0 auto;
    width: 1056px; }

.p-forum_list {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .p-forum_list li {
    height: 231px;
    width: 505px; }
    .p-forum_list li a {
      background: url(../images/forum/waku.png) left top no-repeat;
      background-size: 100%;
      position: relative;
      color: #333333;
      display: block;
      height: 231px;
      width: 505px; }
      .p-forum_list li a:hover .inr,
      .p-forum_list li a:hover .label span {
        opacity: .5; }
    .p-forum_list li:nth-of-type(n+3) {
      margin-top: 40px; }
    .p-forum_list li .inr {
      padding: 20px 0 0 60px;
      -webkit-transition: opacity 0.4s;
      transition: opacity 0.4s;
      width: 477px; }
    .p-forum_list li .ttl {
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end;
      border-bottom: 2px dotted #ced6da;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 18px;
      font-weight: bold;
      height: 60px;
      letter-spacing: 0.04em;
      line-height: 23px;
      margin-bottom: 36px;
      padding-bottom: 6px;
      width: 390px; }
    .p-forum_list li dl {
      font-weight: bold;
      padding-left: 1px;
      width: 420px; }
      .p-forum_list li dl dt {
        clear: both;
        float: left;
        letter-spacing: 0;
        line-height: 21px;
        position: relative;
        width: 64px; }
        .p-forum_list li dl dt:after {
          content: ':';
          position: absolute;
          right: 10px;
          top: 0; }
      .p-forum_list li dl dd {
        letter-spacing: 0.003em;
        line-height: 23px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap; }
    .p-forum_list li .label {
      color: #54afda;
      background-color: #fff;
      border-radius: 10px;
      overflow: hidden;
      position: absolute;
      right: 31px;
      top: -12px;
      width: 100px; }
      .p-forum_list li .label span {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        border: 2px solid #54afda;
        border-radius: 10px;
        display: block;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding-top: 1px;
        -webkit-transition: opacity 0.4s;
        transition: opacity 0.4s;
        width: 100px; }
      .p-forum_list li .label.study span {
        background: #54afda;
        color: #fff; }

.l-forum_detail {
  min-width: 1160px;
  /* main
  -----------------------------*/
  /* aside */
  /* pickup */ }
  .l-forum_detail .l-liner_ttl {
    display: inline-block;
    font-size: 24px;
    line-height: 23px;
    margin-bottom: 39px;
    padding-bottom: 5px;
    position: relative;
    z-index: 1; }
    .l-forum_detail .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 58%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 100%; }
  .l-forum_detail .l-main {
    word-break: break-all; }
  .l-forum_detail .p-forum_detail_main {
    margin: 0 auto;
    padding: 80px 0 40px;
    width: 1056px;
    /* top */
    /* profile */
    /* event */
    /* summary */
    /* program */ }
    .l-forum_detail .p-forum_detail_main a {
      text-decoration: underline; }
      .l-forum_detail .p-forum_detail_main a:hover {
        text-decoration: none; }
    .l-forum_detail .p-forum_detail_main .f_z18 {
      font-size: 18px; }
    .l-forum_detail .p-forum_detail_main .pix {
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 auto;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto;
      width: 420px;
      margin-left: 100px; }
      .l-forum_detail .p-forum_detail_main .pix > figure {
        border-radius: 10px;
        overflow: hidden; }
        .l-forum_detail .p-forum_detail_main .pix > figure img {
          max-height: 100%;
          max-width: 100%; }
        .l-forum_detail .p-forum_detail_main .pix > figure figcaption {
          margin-top: 10px; }
        .l-forum_detail .p-forum_detail_main .pix > figure:nth-of-type(n+2) {
          margin-top: 40px; }
    .l-forum_detail .p-forum_detail_main .txt_box p {
      line-height: 23px; }
      .l-forum_detail .p-forum_detail_main .txt_box p:nth-of-type(n+2) {
        margin-top: 20px; }
    .l-forum_detail .p-forum_detail_main .txt_box_sec p {
      line-height: 23px; }
      .l-forum_detail .p-forum_detail_main .txt_box_sec p:nth-of-type(n+2) {
        margin-top: 20px; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_top_area {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_top_area .p-forum_detail_title {
        font-size: 24px;
        margin-bottom: 30px;
        letter-spacing: 0.03em; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_top_area_sec .p-forum_detail_title {
      font-size: 24px;
      margin-bottom: 30px;
      letter-spacing: 0.03em; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_profile_area {
      width: 100%;
      margin-top: 35px;
      padding: 40px 40px 40px 50px;
      background-color: #cbf2f4;
      border-radius: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_profile_area .txt_box {
        width: 760px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_profile_area figure {
        width: 163px;
        margin-top: 12px; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_profile_area figure img {
          width: 100%;
          height: auto; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_event_area {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      background: #feffca;
      border-radius: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-top: 60px;
      overflow: hidden;
      padding: 63px 60px; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area {
      margin-top: 90px;
      position: relative;
      z-index: 0; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area.motion:before {
        -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
                transform: translateY(0px);
        opacity: 1; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area.motion .croud_wrap {
        opacity: 1;
        -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
                transform: translateY(0px); }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area:before {
        background: url(../images/forum/detail_deco1.png) left top no-repeat;
        background-size: 100%;
        content: '';
        display: block;
        height: 133px;
        position: absolute;
        right: 59px;
        top: -79px;
        width: 88px;
        z-index: -1;
        -webkit-transition: opacity .4s .8s,-webkit-transform .4s .8s;
        transition: opacity .4s .8s,-webkit-transform .4s .8s;
        transition: transform .4s .8s,opacity .4s .8s;
        transition: transform .4s .8s,opacity .4s .8s,-webkit-transform .4s .8s;
        -webkit-transform: translateY(90px);
            -ms-transform: translateY(90px);
                transform: translateY(90px);
        opacity: 0; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .croud_wrap {
        background: url(../images/forum/detail_outline.png) left top no-repeat;
        background-size: 100% 100%;
        background-color: #fff;
        min-height: 374px;
        margin-left: -5px;
        padding: 55px 64px;
        width: 1063px;
        -webkit-transition: opacity,-webkit-transform;
        transition: opacity,-webkit-transform;
        transition: transform,opacity;
        transition: transform,opacity,-webkit-transform;
        -webkit-transition-duration: 1s;
                transition-duration: 1s;
        opacity: 0;
        -webkit-transform: translateY(50px);
            -ms-transform: translateY(50px);
                transform: translateY(50px);
        position: relative; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .l-liner_ttl {
        margin-bottom: 20px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .txt_box {
        width: 469px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl dt {
          line-height: 1.5;
          font-weight: bold;
          width: 100px; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl dd {
          line-height: 1.5;
          font-weight: bold;
          width: calc(100% - 100px);
          padding-left: 21px; }
          .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl dd a {
            -webkit-transition: opacity .4s;
            transition: opacity .4s; }
            .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl dd a:hover {
              opacity: .7; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list dl + dl {
          margin-top: 10px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_summary_area .summary_list_qr {
        position: absolute;
        right: 50px;
        top: 50px; }
    .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area {
      background: #cbf2f4;
      border-radius: 10px;
      margin-top: 60px;
      padding: 60px 60px 65px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area .l-liner_ttl {
        margin-bottom: 0; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area .schedule_day {
        margin-top: 25px;
        font-weight: bold; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area table + .schedule_day {
        margin-top: 50px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area table {
        table-layout: fixed;
        width: 100%; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area table tr th {
          border-bottom: 2px dotted #ced6da;
          padding-bottom: 5px;
          padding-top: 30px;
          text-align: left;
          vertical-align: top;
          width: 65px; }
        .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area table tr td {
          border-bottom: 2px dotted #ced6da;
          line-height: 30px;
          padding-bottom: 5px;
          padding-top: 30px;
          vertical-align: top; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area .f-bold {
        font-weight: bold;
        margin-bottom: 5px; }
      .l-forum_detail .p-forum_detail_main .p-forum_detail_program_area .note {
        margin-top: 30px; }
  .l-forum_detail .l-contact_block {
    background: none;
    margin-bottom: 50px;
    min-width: 1160px; }
  .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title_area {
    position: relative; }
  .l-forum_detail .p-forum_pickup_main .p-forum_shop_logo {
    top: 530px; }
  .l-forum_detail .p-forum_pickup_main .p-forum_pickup_visual {
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 560px;
    min-width: 1160px;
    padding-top: 387px;
    position: relative;
    width: 100%; }
  .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title {
    background: url(../images/projects/detail/main_waku.png) left top no-repeat;
    background-size: 50% 100%;
    height: 153px;
    position: relative;
    margin: 0 auto;
    width: 100%;
    z-index: 1; }
    .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .inr {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      background: url(../images/projects/detail/main_waku.png) right top no-repeat;
      background-size: auto 100%;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      height: 153px;
      left: 50%;
      margin-left: -580px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding-left: 55px;
      padding-bottom: 12px;
      position: absolute;
      width: 690px; }
    .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .l-liner_ttl {
      display: inline-block;
      font-weight: normal;
      margin-bottom: 13px;
      position: relative;
      z-index: 1; }
      .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .l-liner_ttl:before {
        background: #fdff7b;
        bottom: 2px;
        content: '';
        display: inline-block;
        height: 15px;
        left: 0;
        position: absolute;
        right: 0;
        width: 100%;
        z-index: -1; }
      .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .l-liner_ttl .ttl {
        background: url(../images/projects/detail/pickup.png);
        background-size: 100% 100%;
        display: inline-block;
        height: 29px;
        overflow: hidden;
        text-indent: -99999px;
        vertical-align: top;
        width: 90.5px; }
      .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .l-liner_ttl .vol {
        color: #54afda;
        display: inline-block;
        font-size: 16px;
        min-width: 1px;
        margin-left: 10px;
        margin-top: 7px;
        vertical-align: top; }
    .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .ttl-article {
      font-size: 24px;
      margin-bottom: 8px; }
    .l-forum_detail .p-forum_pickup_main .p-forum_pickup_title .name {
      font-size: 18px;
      font-weight: bold; }
  .l-forum_detail .p-forum_pickup_main .p-forum_detail_content_area {
    margin: 0 auto;
    padding: 55px 0;
    position: relative;
    width: 816px; }
  .l-forum_detail .p-forum_pickup_main .p-forum_pickup_lead_block {
    margin-bottom: 40px; }

.p-guide__contents {
  width: 1060px;
  margin: 34px auto 101px; }
  .p-guide__contents__main-ttl {
    text-align: center; }
    .p-guide__contents__main-ttl .wrap {
      text-align: left;
      display: inline-block; }
      .p-guide__contents__main-ttl .wrap p {
        font-size: 1.6rem; }
      .p-guide__contents__main-ttl .wrap h2 {
        display: inline-block;
        margin-top: 6px; }
        .p-guide__contents__main-ttl .wrap h2 span {
          display: inline-block;
          width: 175px;
          height: 39px; }
          .p-guide__contents__main-ttl .wrap h2 span img {
            width: 100%;
            height: auto; }
  .p-guide__contents__base {
    margin-top: 51px; }
    .p-guide__contents__base .box {
      position: relative; }
      .p-guide__contents__base .box .text-top {
        letter-spacing: 1.4px;
        line-height: 1.7;
        width: 722px; }
      .p-guide__contents__base .box:after {
        content: "";
        display: inline-block;
        background: url(/common/images/guide/main_illust.png) no-repeat;
        background-size: cover;
        width: 314px;
        height: 282px;
        position: absolute;
        top: -20px;
        right: -14px; }
  .p-guide__contents__torikumi {
    margin-top: 69px; }
    .p-guide__contents__torikumi h3 {
      font-size: 2.4rem;
      display: inline-block; }
      .p-guide__contents__torikumi h3 span {
        position: relative; }
        .p-guide__contents__torikumi h3 span:before {
          content: "";
          display: inline-block;
          background-color: #fdff7b;
          width: 0%;
          height: 70%;
          position: absolute;
          left: 0;
          bottom: 0;
          z-index: -1;
          -webkit-transition: width .3s .3s;
          transition: width .3s .3s; }
      .p-guide__contents__torikumi h3.motion span:before {
        width: 100%; }
    .p-guide__contents__torikumi .box1-wrap {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-top: 47px;
      position: relative; }
      .p-guide__contents__torikumi .box1-wrap .box1 {
        width: 330px;
        height: 184px;
        background: url(/common/images/guide/flame.png) no-repeat;
        background-size: cover; }
        .p-guide__contents__torikumi .box1-wrap .box1 .ttl {
          font-size: 1.8rem;
          text-align: center;
          padding-top: 38px; }
        .p-guide__contents__torikumi .box1-wrap .box1 .txt {
          margin-top: 25px;
          text-align: center; }
          .p-guide__contents__torikumi .box1-wrap .box1 .txt ul {
            display: inline-block; }
            .p-guide__contents__torikumi .box1-wrap .box1 .txt ul li {
              text-align: left; }
              .p-guide__contents__torikumi .box1-wrap .box1 .txt ul li + li {
                margin-top: 8px; }
      .p-guide__contents__torikumi .box1-wrap:after {
        content: "";
        background: url(/common/images/guide/deco_b.png) no-repeat;
        background-size: cover;
        width: 114px;
        height: 156px;
        position: absolute;
        top: 83px;
        right: -22px; }
    .p-guide__contents__torikumi .box2-wrap {
      margin-top: 57px; }
      .p-guide__contents__torikumi .box2-wrap .box2 {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; }
        .p-guide__contents__torikumi .box2-wrap .box2 figure {
          width: 504px;
          height: 242px;
          -webkit-transition: opacity .4s;
          transition: opacity .4s; }
          .p-guide__contents__torikumi .box2-wrap .box2 figure img {
            width: 100%;
            height: auto; }
          .p-guide__contents__torikumi .box2-wrap .box2 figure:hover {
            opacity: .7; }
        .p-guide__contents__torikumi .box2-wrap .box2 .lang {
          width: 504px;
          margin-top: 10px; }
          .p-guide__contents__torikumi .box2-wrap .box2 .lang .ttl {
            letter-spacing: 1.5px;
            font-size: 1.8rem;
            font-weight: bold; }
          .p-guide__contents__torikumi .box2-wrap .box2 .lang .text {
            letter-spacing: 1.2px;
            margin-top: 16px;
            line-height: 1.7; }
          .p-guide__contents__torikumi .box2-wrap .box2 .lang .btn a {
            display: inline-block;
            background: url(/common/images/common/btn2.png) no-repeat;
            background-size: cover;
            width: 260px;
            height: 42px;
            color: #fff;
            line-height: 42px;
            text-align: center;
            -webkit-transition: .4s;
            transition: .4s;
            margin-top: 25px; }
            .p-guide__contents__torikumi .box2-wrap .box2 .lang .btn a:hover {
              background: url(/common/images/common/btn2_ov.png) no-repeat;
              background-size: cover;
              color: #54afda; }
        .p-guide__contents__torikumi .box2-wrap .box2 + .box2 {
          margin-top: 60px; }

.p-hospital {
  line-height: 23px; }
  .p-hospital .p-hospital_contents {
    margin: 0 auto;
    padding: 75px 0;
    width: 1056px; }
  .p-hospital .p-hospital_title {
    display: inline-block;
    font-size: 24px;
    margin-bottom: 25px;
    position: relative;
    z-index: 1; }
    .p-hospital .p-hospital_title:before {
      background: #fdff7b;
      bottom: -2px;
      content: '';
      display: inline-block;
      height: 17px;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-hospital .p-hospital_title.motion:before {
      width: 100%; }
  .p-hospital .p-hospital_lead {
    line-height: 23px;
    margin-bottom: 15px; }
  .p-hospital .note {
    margin-bottom: 5px; }
  .p-hospital .p-hospital_list {
    border-top: 1px solid #fff; }
    .p-hospital .p-hospital_list > li {
      border-bottom: 2px dotted #ced6da;
      overflow: hidden; }
      .p-hospital .p-hospital_list > li:first-of-type {
        border-top: 2px dotted #ced6da; }
    .p-hospital .p-hospital_list .ttl {
      background: #fafafa;
      border-top: 1px solid #fff;
      cursor: pointer;
      padding: 22px 25px;
      position: relative;
      vertical-align: top;
      text-align: center;
      width: 100%; }
      .p-hospital .p-hospital_list .ttl .icon {
        background-color: #54afda;
        border-radius: 50%;
        content: '';
        display: inline-block;
        right: 8px;
        height: 28px;
        position: absolute;
        top: 15px;
        width: 28px; }
        .p-hospital .p-hospital_list .ttl .icon:before, .p-hospital .p-hospital_list .ttl .icon:after {
          position: absolute;
          top: 0;
          bottom: 0;
          right: 7px;
          margin: auto;
          content: "";
          display: block;
          width: 14px;
          height: 2px;
          background-color: #fff;
          -webkit-transition: -webkit-transform .4s;
          transition: -webkit-transform .4s;
          transition: transform .4s;
          transition: transform .4s, -webkit-transform .4s; }
        .p-hospital .p-hospital_list .ttl .icon::before {
          -webkit-transform: rotate(90deg);
              -ms-transform: rotate(90deg);
                  transform: rotate(90deg); }
      .p-hospital .p-hospital_list .ttl.is-open .icon::before {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg); }
      .p-hospital .p-hospital_list .ttl.is-open .icon::after {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg); }
      .p-hospital .p-hospital_list .ttl.is-nodata {
        background-color: #fafafa;
        cursor: auto;
        color: #b3b3b3;
        pointer-events: none; }
        .p-hospital .p-hospital_list .ttl.is-nodata .icon {
          background-color: #b3b3b3; }
          .p-hospital .p-hospital_list .ttl.is-nodata .icon:before, .p-hospital .p-hospital_list .ttl.is-nodata .icon:after {
            background-color: #e1e1e1; }
    .p-hospital .p-hospital_list .txt {
      border-bottom: 1px solid #fff;
      display: none;
      padding: 37px 47px 100px; }
      .p-hospital .p-hospital_list .txt dl {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        opacity: 0;
        -webkit-transition: opacity .3s;
        transition: opacity .3s; }
        .p-hospital .p-hospital_list .txt dl dt {
          font-weight: bold;
          line-height: 23px;
          padding-right: 15px;
          width: 300px; }
          .p-hospital .p-hospital_list .txt dl dt:nth-of-type(n+2) {
            margin-top: 73px; }
          .p-hospital .p-hospital_list .txt dl dt a {
            display: inline-block;
            padding-left: 10px;
            position: relative; }
            .p-hospital .p-hospital_list .txt dl dt a:before {
              background: url(../images/common/arrow3.png) left bottom no-repeat;
              content: '';
              font-weight: normal;
              display: inline-block;
              left: 0;
              line-height: 23px;
              margin-right: 5px;
              height: 13px;
              position: absolute;
              top: 3px;
              vertical-align: top;
              width: 6px; }
            .p-hospital .p-hospital_list .txt dl dt a:after {
              background: url(../images/common/blank_icon.png) left bottom no-repeat;
              content: '';
              font-weight: normal;
              display: inline-block;
              line-height: 23px;
              margin-left: 5px;
              margin-top: 3px;
              height: 13px;
              vertical-align: top;
              width: 12px; }
        .p-hospital .p-hospital_list .txt dl .no-link {
          padding-left: 10px; }
        .p-hospital .p-hospital_list .txt dl dd {
          line-height: 23px;
          min-width: 570px;
          -webkit-box-flex: 1;
          -webkit-flex: 1;
              -ms-flex: 1;
                  flex: 1; }
          .p-hospital .p-hospital_list .txt dl dd:nth-of-type(n+2) {
            margin-top: 73px; }
          .p-hospital .p-hospital_list .txt dl dd ul {
            overflow: hidden; }
            .p-hospital .p-hospital_list .txt dl dd ul li:nth-of-type(n+2) {
              float: left;
              margin-right: 15px; }
            .p-hospital .p-hospital_list .txt dl dd ul li:nth-of-type(2n) {
              clear: both; }
      .p-hospital .p-hospital_list .txt dl.on {
        opacity: 1; }

.p-interview {
  line-height: 23px; }
  .p-interview .p-interview_contents {
    margin: 0 auto;
    padding: 20px 0 75px;
    width: 1056px; }
  .p-interview .p-interview_title_area {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #feffca url(../images/interview/deco.png) 21px 75px no-repeat;
    background-size: 84px 108px;
    border-radius: 10px;
    display: -webkit-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 190px;
    margin-bottom: 80px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 20px 0 115px;
    position: relative; }
    .p-interview .p-interview_title_area .p-interview_title {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      font-size: 24px;
      padding-right: 20px; }
    .p-interview .p-interview_title_area .p-interview_writer {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-flex-basis: 415px;
          -ms-flex-preferred-size: 415px;
              flex-basis: 415px; }
      .p-interview .p-interview_title_area .p-interview_writer .writer_img {
        background: #fff;
        border-radius: 134px;
        -webkit-flex-basis: 134px;
            -ms-flex-preferred-size: 134px;
                flex-basis: 134px;
        height: 134px;
        overflow: hidden;
        position: relative; }
        .p-interview .p-interview_title_area .p-interview_writer .writer_img img {
          bottom: 0;
          height: auto;
          left: 0;
          margin: auto;
          position: absolute;
          right: 0;
          top: 0;
          width: 100%; }
      .p-interview .p-interview_title_area .p-interview_writer .writer_txt {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding-left: 20px; }
        .p-interview .p-interview_title_area .p-interview_writer .writer_txt .category {
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          background: url(../images/interview/tag.png) left top no-repeat;
          background-size: 100% 100%;
          font-size: 13px;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          height: 30px;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          letter-spacing: 0.15em;
          position: absolute;
          right: 12px;
          top: 12px;
          width: 115px; }
        .p-interview .p-interview_title_area .p-interview_writer .writer_txt .name {
          font-size: 18px;
          font-weight: bold;
          margin: 10px 0; }
        .p-interview .p-interview_title_area .p-interview_writer .writer_txt .txt {
          line-height: 23px; }
  .p-interview .p-interview_sec_ttl {
    display: inline-block;
    font-size: 18px;
    margin-bottom: 20px;
    position: relative;
    z-index: 1; }
    .p-interview .p-interview_sec_ttl:before {
      background: #fdff7b;
      bottom: -3px;
      content: '';
      display: inline-block;
      height: 15px;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-interview .p-interview_sec_ttl.motion:before {
      width: 100%; }
  .p-interview .p-interview_sec {
    padding-bottom: 51px;
    line-height: 23px; }
    .p-interview .p-interview_sec p {
      line-height: 23px; }
      .p-interview .p-interview_sec p:nth-of-type(n+2) {
        margin-top: 25px; }
    .p-interview .p-interview_sec .checklist dt {
      font-weight: bold;
      margin-bottom: 10px; }
    .p-interview .p-interview_sec .checklist dd {
      line-height: 23px; }
    .p-interview .p-interview_sec .checklist + dl {
      margin-top: 20px; }
    .p-interview .p-interview_sec .att {
      font-size: 1.2rem;
      margin-top: 10px; }

.p-news {
  min-width: 1160px; }
  .p-news main {
    padding: 35px 0 0; }
  .p-news .l-second_title {
    margin-bottom: 36px;
    width: 124px; }
  .p-news .p-news_content {
    margin: 0 auto;
    width: 1056px; }
  .p-news .p-news_tab_list {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    padding: 0 10px;
    position: relative;
    z-index: 1; }
    .p-news .p-news_tab_list:after {
      background: #54afda;
      bottom: 0;
      content: '';
      display: block;
      height: 2px;
      left: 0;
      position: absolute;
      width: 100%; }
    .p-news .p-news_tab_list li {
      -webkit-box-flex: 20%;
      -webkit-flex: 20%;
          -ms-flex: 20%;
              flex: 20%;
      padding: 0 1px;
      z-index: 2; }
      .p-news .p-news_tab_list li a {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        background: url(../images/news/menu.png) left bottom no-repeat;
        background-size: 100%;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 73px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-transition: all .4s;
        transition: all .4s;
        width: 206px; }
        .p-news .p-news_tab_list li a.is-on {
          background: #fff url(../images/news/menu_active.png) left bottom no-repeat;
          background-size: 100%; }
          .p-news .p-news_tab_list li a.is-on span {
            padding: 0 5px; }
            .p-news .p-news_tab_list li a.is-on span:before {
              right: 0; }
        .p-news .p-news_tab_list li a:hover:not(.is-on) {
          background: url(../images/news/menu_active.png) left bottom no-repeat;
          background-size: 100%; }
          .p-news .p-news_tab_list li a:hover:not(.is-on) span:before {
            right: 0; }
      .p-news .p-news_tab_list li span {
        display: inline-block;
        font-size: 18px;
        font-weight: bold;
        position: relative;
        z-index: 1; }
        .p-news .p-news_tab_list li span:before {
          background: #fdff7b;
          bottom: -3px;
          content: '';
          display: inline-block;
          height: 80%;
          left: 0;
          position: absolute;
          right: 100%;
          -webkit-transition: all .4s;
          transition: all .4s;
          z-index: -1; }
  .p-news .p-news_dotted_box {
    background: url(../images/news/bg_blue_top.png) left top no-repeat, url(../images/news/bg_blue_bottom.png) left bottom no-repeat, url(../images/news/bg_blue2.png) 0 65px repeat-y;
    background-size: 100% auto;
    min-height: 491px;
    margin: 20px auto 50px;
    padding: 56px 60px 70px;
    position: relative;
    width: 1057px; }
    .p-news .p-news_dotted_box .p-news_ttl_list li {
      font-weight: bold; }
      .p-news .p-news_dotted_box .p-news_ttl_list li:nth-of-type(n+2) {
        margin-top: 11px; }
    .p-news .p-news_dotted_box .p-news_ttl_list a {
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      color: #333;
      text-align: left;
      -webkit-transition: opacity .4s;
      transition: opacity .4s; }
      .p-news .p-news_dotted_box .p-news_ttl_list a .category {
        border-right: 1px solid #333;
        font-size: 13px;
        letter-spacing: 0.18em;
        padding: 8px 0 0 48px;
        position: relative;
        width: 312px; }
        .p-news .p-news_dotted_box .p-news_ttl_list a .category .date {
          font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
          font-weight: normal;
          letter-spacing: 0.07em;
          display: inline-block;
          width: 94px; }
      .p-news .p-news_dotted_box .p-news_ttl_list a .ttl {
        display: inline-block;
        font-size: 14px;
        margin-left: 24px;
        letter-spacing: 0.12em;
        padding: 3px 0;
        z-index: 2;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 600px; }
        .p-news .p-news_dotted_box .p-news_ttl_list a .ttl span {
          display: inline-block;
          position: relative; }
      .p-news .p-news_dotted_box .p-news_ttl_list a:hover {
        opacity: .7; }
      .p-news .p-news_dotted_box .p-news_ttl_list a.is-new .category:before {
        font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
        color: #6a99f9;
        content: 'NEW';
        display: inline-block;
        font-size: 12px;
        font-weight: bold;
        left: -1px;
        letter-spacing: 0.08em;
        position: absolute;
        top: 9px; }
      .p-news .p-news_dotted_box .p-news_ttl_list a.is-new .ttl span {
        position: relative;
        display: inline-block; }
        .p-news .p-news_dotted_box .p-news_ttl_list a.is-new .ttl span:before {
          background: #fdff7b;
          bottom: -3px;
          content: '';
          display: inline-block;
          height: 80%;
          width: 101%;
          position: absolute;
          z-index: -1; }

.p-news_detail {
  min-width: 1160px;
  /* main
  -----------------------------*/ }
  .p-news_detail .l-main {
    word-break: break-all; }
  .p-news_detail .p-news_detail_main {
    margin: 0 auto;
    padding: 80px 0;
    width: 1056px;
    /* top */
    /* note */ }
    .p-news_detail .p-news_detail_main .f_z18 {
      font-size: 18px; }
    .p-news_detail .p-news_detail_main .pix {
      width: 420px; }
      .p-news_detail .p-news_detail_main .pix > figure {
        border-radius: 10px;
        height: 280px;
        overflow: hidden; }
        .p-news_detail .p-news_detail_main .pix > figure img {
          max-height: 100%;
          max-width: 100%; }
        .p-news_detail .p-news_detail_main .pix > figure:nth-of-type(n+2) {
          margin-top: 40px; }
    .p-news_detail .p-news_detail_main .txt_box {
      width: 590px; }
      .p-news_detail .p-news_detail_main .txt_box .txt, .p-news_detail .p-news_detail_main .txt_box p {
        line-height: 23px; }
        .p-news_detail .p-news_detail_main .txt_box .txt:nth-of-type(n+2), .p-news_detail .p-news_detail_main .txt_box p:nth-of-type(n+2) {
          margin-top: 20px; }
    .p-news_detail .p-news_detail_main .p-news_detail_top_area {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .p-news_detail .p-news_detail_main .p-news_detail_top_area a {
        text-decoration: underline; }
        .p-news_detail .p-news_detail_main .p-news_detail_top_area a:hover {
          text-decoration: none; }
      .p-news_detail .p-news_detail_main .p-news_detail_top_area .p-news_detail_title {
        font-size: 24px;
        margin-bottom: 30px;
        letter-spacing: 0.03em; }
        .p-news_detail .p-news_detail_main .p-news_detail_top_area .p-news_detail_title.is-new:after {
          color: #54afda;
          content: 'NEW';
          font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
          font-size: 14px;
          margin-left: 10px;
          vertical-align: bottom; }
      .p-news_detail .p-news_detail_main .p-news_detail_top_area .p-news_detail_info {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-bottom: 15px; }
        .p-news_detail .p-news_detail_main .p-news_detail_top_area .p-news_detail_info .date {
          font-weight: bold; }
        .p-news_detail .p-news_detail_main .p-news_detail_top_area .p-news_detail_info .category {
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          background: url(../images/news/detail_tag.png) left top no-repeat;
          background-size: 100%;
          display: -webkit-flex;
          display: -ms-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          font-size: 13px;
          font-weight: bold;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          height: 30px;
          width: 160px; }
    .p-news_detail .p-news_detail_main .p-news_detail_note_area {
      line-height: 23px;
      margin-top: 55px;
      padding: 44.5px 0 58px;
      position: relative; }
      .p-news_detail .p-news_detail_main .p-news_detail_note_area .txt, .p-news_detail .p-news_detail_main .p-news_detail_note_area p {
        line-height: 23px; }
      .p-news_detail .p-news_detail_main .p-news_detail_note_area:before {
        background: url(../images/news/detail_waku_top.png) left top repeat-y;
        background-size: 100%;
        height: 44.5px;
        content: '';
        left: 0;
        position: absolute;
        top: 0;
        width: 100%; }
      .p-news_detail .p-news_detail_main .p-news_detail_note_area:after {
        background: url(../images/news/detail_waku_btm.png) left bottom repeat-y;
        background-size: 100%;
        bottom: 0;
        height: 58px;
        content: '';
        left: 0;
        position: absolute;
        width: 100%; }
      .p-news_detail .p-news_detail_main .p-news_detail_note_area .area_inr {
        background: url(../images/news/detail_waku_mdl.png) left top repeat-y;
        background-size: 100%;
        padding: 0 55px; }

.p-outline__contents {
  width: 1060px;
  margin: 78px auto 0; }
  .p-outline__contents h2 {
    font-size: 2.4rem;
    position: relative;
    display: inline-block;
    padding-bottom: 4px; }
    .p-outline__contents h2:after {
      content: "";
      display: inline-block;
      background-color: #fdff7b;
      width: 0%;
      height: 70%;
      position: absolute;
      left: 0;
      bottom: -5px;
      z-index: -1;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-outline__contents h2.motion:after {
      width: 100%; }
  .p-outline__contents h3 {
    font-size: 1.8rem; }
  .p-outline__contents__taisei {
    margin-top: 28px; }
    .p-outline__contents__taisei .wrap {
      width: 1060px;
      margin: 30px auto 0; }
      .p-outline__contents__taisei .wrap .box {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; }
        .p-outline__contents__taisei .wrap .box .ttl {
          width: 300px;
          background-color: #fafafa;
          padding: 20px 35px 15px 0;
          text-align: right;
          line-height: 1.6; }
        .p-outline__contents__taisei .wrap .box .dtl {
          width: 760px;
          padding: 23px 0 19px; }
          .p-outline__contents__taisei .wrap .box .dtl dl {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex; }
            .p-outline__contents__taisei .wrap .box .dtl dl dt {
              letter-spacing: -1px;
              width: 120px;
              text-align: left;
              padding-left: 46px; }
            .p-outline__contents__taisei .wrap .box .dtl dl dd {
              width: 640px;
              padding-left: 15px; }
            .p-outline__contents__taisei .wrap .box .dtl dl + dl {
              margin-top: 7px; }
        .p-outline__contents__taisei .wrap .box + .box {
          background: url(/common/images/profile/outline/tensen_long.png) no-repeat 50% 100%;
          background-size: 1057px 3px;
          padding-bottom: 3px; }
        .p-outline__contents__taisei .wrap .box:first-child {
          background-image: url(/common/images/profile/outline/tensen_long.png), url(/common/images/profile/outline/tensen_long.png);
          background-repeat: no-repeat;
          background-size: 1057px 3px, 1057px 3px;
          background-position: 50% 100%,50% 0%;
          padding: 3px 0; }
  .p-outline__contents__dantai {
    margin-top: 70px; }
    .p-outline__contents__dantai .wrap {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .p-outline__contents__dantai .wrap .name {
        background: url(/common/images/profile/outline/tensen_small.png) no-repeat 50% 100%;
        background-size: 265px 3px;
        padding-bottom: 12px;
        -webkit-transition: opacity .4s;
        transition: opacity .4s; }
        .p-outline__contents__dantai .wrap .name span {
          padding-right: 20px; }
          .p-outline__contents__dantai .wrap .name span:after {
            content: "";
            display: inline-block;
            background: url(/common/images/common/blank_icon.png) no-repeat;
            background-size: cover;
            width: 12px;
            height: 11px;
            position: relative;
            right: -10px; }
        .p-outline__contents__dantai .wrap .name:hover {
          opacity: .5; }
    .p-outline__contents__dantai .wrap1 {
      margin-top: 40px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .p-outline__contents__dantai .wrap1 .name {
        width: 265px; }
    .p-outline__contents__dantai .wrap2 {
      margin-top: 20px; }
      .p-outline__contents__dantai .wrap2 .name {
        width: 265px; }
        .p-outline__contents__dantai .wrap2 .name:last-child {
          margin-left: 133px; }
  .p-outline__contents__access {
    margin: 77px 0 81px; }
    .p-outline__contents__access h3 {
      margin-bottom: 25px; }
    .p-outline__contents__access .add + .add {
      margin-top: 7px; }
    .p-outline__contents__access #gmap {
      display: inline-block;
      margin-top: 17px;
      background-color: #807d7d;
      width: 100%;
      height: 410px; }

.p-policy_content {
  width: 1056px;
  margin: 76px auto 124px; }

.p-policy_article {
  font-size: 1.4rem;
  line-height: 23px; }
  .p-policy_article h1 {
    display: inline-block;
    font-size: 2.4rem;
    margin-bottom: 54px;
    position: relative;
    white-space: nowrap; }
    .p-policy_article h1:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 50%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-policy_article h1.motion:before {
      width: 100%; }
  .p-policy_article_l {
    margin-bottom: 54px; }
  .p-policy_article_t {
    font-size: 1.8rem;
    margin-bottom: 18px; }
  .p-policy_article p {
    line-height: 23px;
    margin-bottom: 24px; }

.p-policy .l-f_contact {
  display: none; }

.p-profile h4 {
  font-size: 2.4rem;
  letter-spacing: 1.5px;
  font-weight: normal;
  display: inline-block;
  padding-bottom: 4px; }
  .p-profile h4 span {
    position: relative;
    z-index: 1; }
    .p-profile h4 span:before {
      content: "";
      display: inline-block;
      background-color: #fdff7b;
      width: 0;
      height: 70%;
      position: absolute;
      left: 0;
      bottom: -5px;
      z-index: -1;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
  .p-profile h4.motion span:before {
    width: 100%; }

.p-profile .btn a {
  text-align: center;
  color: #fff;
  display: inline-block;
  width: 260px;
  height: 42px;
  background: url(/common/images/common/btn2.png) no-repeat 50% 50%;
  background-size: cover;
  line-height: 42px;
  -webkit-transition: .4s;
  transition: .4s; }
  .p-profile .btn a:hover {
    background: url(/common/images/common/btn2_ov.png) no-repeat 50% 50%;
    background-size: cover;
    color: #4e8fd8; }

.p-profile__main-contents {
  letter-spacing: 2px;
  text-align: center;
  background-color: #cbf2f4;
  padding: 34px 0 79px;
  position: relative; }
  .p-profile__main-contents h2 {
    display: inline-block;
    text-align: left; }
    .p-profile__main-contents h2 .jp {
      display: block;
      font-size: 1.6rem; }
    .p-profile__main-contents h2 .en {
      display: block;
      width: 140px;
      height: 43px;
      margin-top: 7px; }
      .p-profile__main-contents h2 .en img {
        width: 100%;
        height: auto; }
  .p-profile__main-contents .wrap {
    background-color: #fff;
    width: 1012px;
    margin: 44px auto 0;
    padding: 27px 0 188px;
    border-radius: 250px;
    background-image: url(/common/images/profile/contents_illust.png);
    background-position: 50% 86%;
    background-repeat: no-repeat;
    background-size: 297px 120px; }
    .p-profile__main-contents .wrap h3 figure {
      width: 228px;
      height: 77px;
      margin: 0 auto; }
      .p-profile__main-contents .wrap h3 figure img {
        width: 100%;
        height: auto; }
    .p-profile__main-contents .wrap p {
      font-size: 1.6rem;
      letter-spacing: 1.5px;
      font-weight: normal;
      line-height: 2.0;
      margin-top: 57px; }
  .p-profile__main-contents .moyou1, .p-profile__main-contents .moyou2 {
    width: 536px;
    height: 46px;
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity .5s, -webkit-transform 1s;
    transition: opacity .5s, -webkit-transform 1s;
    transition: transform 1s, opacity .5s;
    transition: transform 1s, opacity .5s, -webkit-transform 1s; }
    .p-profile__main-contents .moyou1.motion, .p-profile__main-contents .moyou2.motion {
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0);
      opacity: 1; }
  .p-profile__main-contents .moyou1 {
    background: url(/common/images/profile/moyou.png) repeat;
    background-size: 534px 46px;
    -webkit-animation: bgMove_profile1 3s linear infinite;
            animation: bgMove_profile1 3s linear infinite;
    top: -24px;
    right: -209px;
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .p-profile__main-contents .moyou2 {
    background: url(/common/images/profile/moyou.png) repeat;
    background-size: 534px 46px;
    -webkit-animation: bgMove_profile2 3s linear infinite;
            animation: bgMove_profile2 3s linear infinite;
    left: -209px;
    bottom: -20px;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }

.p-profile__activity {
  width: 1052px;
  margin: 78px auto 14px; }
  .p-profile__activity ul {
    margin-top: 67px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 0 15px; }
    .p-profile__activity ul li {
      -webkit-box-sizing: content-box;
              box-sizing: content-box;
      width: 292px;
      height: 297px;
      padding: 43px 0 0;
      position: relative;
      background: url(/common/images/profile/gray_line_a.png) no-repeat 100% 0%;
      padding-right: 38px;
      margin-right: 35px; }
      .p-profile__activity ul li:nth-of-type(3n) {
        background: none;
        padding-right: 0px;
        margin-right: 0; }
      .p-profile__activity ul li figure img {
        width: 100%;
        height: auto; }
      .p-profile__activity ul li:after {
        content: "";
        display: inline-block;
        position: absolute; }
      .p-profile__activity ul li .text {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.5;
        margin-top: 77px;
        letter-spacing: 0.01rem;
        height: 54px; }
      .p-profile__activity ul li:nth-child(1) figure {
        width: 26px;
        height: 22px; }
      .p-profile__activity ul li:nth-child(1):after {
        background: url(/common/images/profile/01_illust.png) no-repeat;
        background-size: cover;
        width: 168px;
        height: 132px;
        top: 2px;
        right: 86px; }
      .p-profile__activity ul li:nth-child(2) figure {
        width: 32px;
        height: 22px; }
      .p-profile__activity ul li:nth-child(2):after {
        background: url(/common/images/profile/02_illust.png) no-repeat;
        background-size: cover;
        width: 200px;
        height: 152px;
        top: -13px;
        right: 44px; }
      .p-profile__activity ul li:nth-child(3) figure {
        width: 31px;
        height: 22px; }
      .p-profile__activity ul li:nth-child(3):after {
        background: url(/common/images/profile/03_illust.png) no-repeat;
        background-size: cover;
        width: 265px;
        height: 136px;
        top: -8px;
        right: -5px; }
      .p-profile__activity ul li:nth-child(4) figure {
        width: 31px;
        height: 24px; }
      .p-profile__activity ul li:nth-child(4):after {
        background: url(/common/images/profile/04_illust.png) no-repeat;
        background-size: cover;
        width: 158px;
        height: 136px;
        top: -6px;
        right: 42px; }
      .p-profile__activity ul li:nth-child(5) figure {
        width: 31px;
        height: 22px; }
      .p-profile__activity ul li:nth-child(5):after {
        background: url(/common/images/profile/05_illust.png) no-repeat;
        background-size: cover;
        width: 209px;
        height: 168px;
        top: -35px;
        right: 34px; }

.p-profile__effecty {
  background-color: #feffca;
  padding: 78px 0 68px;
  position: relative; }
  .p-profile__effecty .wrap {
    width: 1060px;
    margin: 0 auto; }
    .p-profile__effecty .wrap .text {
      letter-spacing: 1.5px;
      line-height: 1.74;
      margin-top: 22px; }
    .p-profile__effecty .wrap ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-top: 52px; }
      .p-profile__effecty .wrap ul li {
        width: 350px;
        height: 255px;
        background-color: #fff;
        padding: 53px 0 37px;
        background-image: url(/common/images/profile/flame.png);
        background-repeat: no-repeat;
        background-size: 330px 236px;
        background-position: 50% 50%; }
        .p-profile__effecty .wrap ul li .list-ttl {
          font-size: 1.6rem;
          width: 240px;
          margin: 0 auto; }
        .p-profile__effecty .wrap ul li .list-text {
          line-height: 1.7;
          width: 240px;
          height: 85px;
          margin: 21px auto 0; }
        .p-profile__effecty .wrap ul li .btn {
          text-align: center;
          margin-top: 0; }

.p-profile__pa-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 1060px;
  margin: 70px auto 80px; }
  .p-profile__pa-list .wrap {
    width: 509px;
    height: 191px;
    background: url(/common/images/profile/gray_flame.png) no-repeat 50% 50%;
    background-size: 509px 191px;
    padding: 0 37px; }
    .p-profile__pa-list .wrap .ttl {
      font-weight: bold;
      margin-top: 30px; }
    .p-profile__pa-list .wrap .text {
      line-height: 1.7;
      letter-spacing: 0.1px;
      margin-top: 15px;
      height: 46px; }
    .p-profile__pa-list .wrap .btn {
      margin-top: 23px; }

@-webkit-keyframes bgMove_profile1 {
  from {
    background-position: 0 50%; }
  to {
    background-position: -88px 50%; } }

@keyframes bgMove_profile1 {
  from {
    background-position: 0 50%; }
  to {
    background-position: -88px 50%; } }

@-webkit-keyframes bgMove_profile2 {
  from {
    background-position: 0 0; }
  to {
    background-position: -88px 0; } }

@keyframes bgMove_profile2 {
  from {
    background-position: 0 0; }
  to {
    background-position: -88px 0; } }

.l-projects {
  min-width: 1160px;
  /* pickup */
  /* all */ }
  .l-projects .l-main {
    word-break: break-all; }
  .l-projects main {
    padding: 35px 0; }
  .l-projects .l-second_title {
    margin-bottom: 2px;
    width: 173.5px; }
  .l-projects .l-liner_ttl {
    display: inline-block;
    font-size: 24px;
    line-height: 23px;
    margin-bottom: 41px;
    margin-left: 2px;
    overflow: hidden;
    position: relative; }
    .l-projects .l-liner_ttl:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .l-projects .l-liner_ttl.motion:before {
      width: 100%; }
  .l-projects .p-projects_section {
    margin: 0 auto;
    padding-bottom: 56px;
    width: 1056px; }
    .l-projects .p-projects_section + .p-projects_section {
      padding-bottom: 70px; }
  .l-projects .p-projects_list figure {
    overflow: hidden;
    position: relative; }
    .l-projects .p-projects_list figure img {
      bottom: 0;
      left: 0;
      height: auto;
      margin: auto;
      right: 0;
      position: absolute;
      top: 0;
      width: 100%; }
  .l-projects .section_pickup .l-liner_ttl {
    background: url(../images/projects/pickup.png) left top no-repeat;
    background-size: 100%;
    height: 29px;
    text-indent: -999999px;
    width: 89px; }
  .l-projects .section_pickup .p-projects_list li {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .l-projects .section_pickup .p-projects_list li:nth-of-type(n+2) {
      margin-top: 60px; }
  .l-projects .section_pickup .p-projects_list figure {
    border-radius: 10px;
    -webkit-flex-basis: 420px;
        -ms-flex-preferred-size: 420px;
            flex-basis: 420px;
    height: 280px;
    -webkit-transition: opacity .4s;
    transition: opacity .4s; }
    .l-projects .section_pickup .p-projects_list figure a:hover {
      opacity: .5; }
  .l-projects .section_pickup .box_txt {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 590px; }
    .l-projects .section_pickup .box_txt .wrap_article {
      width: 100%; }
      .l-projects .section_pickup .box_txt .wrap_article .wrap_ttl {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        background: url(../images/projects/gray_line.png) left bottom repeat-x;
        background-size: auto 3px;
        margin-bottom: 13px;
        padding-bottom: 12px; }
        .l-projects .section_pickup .box_txt .wrap_article .wrap_ttl .vol {
          width: 50px;
          color: #54afda;
          display: inline-block;
          font-size: 16px;
          white-space: nowrap; }
        .l-projects .section_pickup .box_txt .wrap_article .wrap_ttl .ttl {
          width: 540px;
          padding-left: 20px;
          font-weight: bold;
          font-size: 18px;
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap; }
      .l-projects .section_pickup .box_txt .wrap_article .txt {
        line-height: 23px;
        letter-spacing: 0.1em; }
    .l-projects .section_pickup .box_txt .wrap_parts {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 42px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%;
      margin-top: 10px; }
      .l-projects .section_pickup .box_txt .wrap_parts .logo {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-basis: 50%;
            -ms-flex-preferred-size: 50%;
                flex-basis: 50%;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left;
        overflow: visible; }
        .l-projects .section_pickup .box_txt .wrap_parts .logo .partner {
          background: url(../images/projects/projects_partner.png) left center no-repeat;
          background-size: 52px auto;
          border-right: 2px solid #ced6da;
          -webkit-flex-basis: 66px;
              -ms-flex-preferred-size: 66px;
                  flex-basis: 66px;
          margin-right: 16px;
          line-height: 1.1;
          text-indent: -99999px; }
        .l-projects .section_pickup .box_txt .wrap_parts .logo .img {
          padding: 0;
          position: relative;
          text-align: left; }
          .l-projects .section_pickup .box_txt .wrap_parts .logo .img img {
            bottom: 0;
            margin: auto;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: auto;
            height: auto;
            max-width: 160px;
            max-height: 30px; }
  .l-projects .section_all {
    padding-bottom: 40px; }
    .l-projects .section_all .l-liner_ttl {
      letter-spacing: 0.03em;
      margin-bottom: 36px;
      padding-bottom: 10px; }
      .l-projects .section_all .l-liner_ttl:before {
        height: 17px; }
    .l-projects .section_all .p-projects_list {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .l-projects .section_all .p-projects_list li {
        -webkit-flex-basis: 504px;
            -ms-flex-preferred-size: 504px;
                flex-basis: 504px;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; }
        .l-projects .section_all .p-projects_list li:nth-of-type(n+3) {
          margin-top: 40px; }
        .l-projects .section_all .p-projects_list li a {
          background: url(../images/projects/list_waku.png) left top no-repeat;
          background-size: 100% auto;
          -webkit-box-align: start;
          -webkit-align-items: flex-start;
              -ms-flex-align: start;
                  align-items: flex-start;
          display: -webkit-flex;
          display: -ms-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          height: 234px;
          -webkit-box-pack: justify;
          -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          padding: 37px 25px 35px 37px;
          width: 504px; }
        .l-projects .section_all .p-projects_list li figure {
          height: 144px;
          position: relative;
          -webkit-flex-basis: 144px;
              -ms-flex-preferred-size: 144px;
                  flex-basis: 144px; }
          .l-projects .section_all .p-projects_list li figure img {
            bottom: 0;
            height: auto;
            left: auto;
            position: absolute;
            right: 0;
            top: 0;
            width: 100%;
            border-radius: 10px; }
        .l-projects .section_all .p-projects_list li .box_txt {
          font-size: 18px;
          -webkit-flex-basis: 274px;
              -ms-flex-preferred-size: 274px;
                  flex-basis: 274px;
          padding-top: 5px; }
          .l-projects .section_all .p-projects_list li .box_txt .ttl {
            font-size: 18px;
            font-weight: bold;
            height: 65px;
            line-height: 27px; }
          .l-projects .section_all .p-projects_list li .box_txt .txt {
            line-height: 24px; }

.l-projects_detail {
  min-width: 1160px;
  /* main */
  /* aside */
  /* pickup
  -------------------------*/ }
  .l-projects_detail .l-main {
    word-break: break-all; }
  .l-projects_detail .p-projects_detail_main {
    margin: 0 auto;
    padding: 20px 0 40px; }
  .l-projects_detail .p-projects_detail_sub {
    padding: 20px 0 59px; }
  .l-projects_detail .p-projects_detail_title_area {
    width: 1056px;
    margin: 0 auto;
    margin-bottom: 35px;
    position: relative; }
  .l-projects_detail .p-projects_detail_title_area_sub {
    position: relative;
    width: 1056px;
    margin: 0 auto 22px; }
  .l-projects_detail .p-projects_detail_visual {
    height: 412px;
    overflow: hidden;
    position: relative;
    margin-bottom: 60px; }
    .l-projects_detail .p-projects_detail_visual img {
      bottom: 0;
      left: 0;
      margin: auto;
      height: auto;
      position: absolute;
      right: 0;
      top: 0;
      width: 100%; }
  .l-projects_detail .p-projects_shop_logo {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #fff url(../images/projects/detail/sub_waku.png) left bottom no-repeat;
    background-size: 100% auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    align-items: center;
    height: 90px;
    left: 50%;
    margin-left: 346px;
    justify-content: center;
    position: absolute;
    padding-bottom: 12px;
    text-align: center;
    top: 412px;
    width: 182px;
    z-index: -1; }
    .l-projects_detail .p-projects_shop_logo img {
      width: auto;
      height: auto;
      max-width: 130px;
      max-height: 60px;
      display: inline-block;
      -webkit-transform-origin: center center;
          -ms-transform-origin: center center;
              transform-origin: center center; }
  .l-projects_detail .p-projects_detail_title {
    font-size: 24px;
    margin-bottom: 5px;
    letter-spacing: 0.03em; }
  .l-projects_detail .p-projects_detail_content_area_sub {
    width: 1056px;
    margin: 0 auto; }
    .l-projects_detail .p-projects_detail_content_area_sub a {
      text-decoration: underline; }
      .l-projects_detail .p-projects_detail_content_area_sub a:hover {
        text-decoration: none; }
  .l-projects_detail .p-projects_detail_content_area {
    overflow: hidden;
    width: 1056px;
    margin: 0 auto; }
    .l-projects_detail .p-projects_detail_content_area a {
      text-decoration: underline; }
      .l-projects_detail .p-projects_detail_content_area a:hover {
        text-decoration: none; }
    .l-projects_detail .p-projects_detail_content_area .p-projects_project_lead {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .l-projects_detail .p-projects_detail_content_area .p-projects_project_lead .pix {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 100%;
            -ms-flex: 1 0 100%;
                flex: 1 0 100%;
        max-width: 420px;
        margin-left: 3%; }
        .l-projects_detail .p-projects_detail_content_area .p-projects_project_lead .pix figure {
          margin-top: 0; }
    .l-projects_detail .p-projects_detail_content_area h3 {
      font-size: 2.4rem;
      margin-bottom: 1.5em;
      clear: both; }
    .l-projects_detail .p-projects_detail_content_area p {
      clear: both;
      line-height: 23px;
      margin-bottom: 2em; }
    .l-projects_detail .p-projects_detail_content_area .f-bold {
      font-weight: bold; }
    .l-projects_detail .p-projects_detail_content_area .talk {
      font-weight: bold; }
    .l-projects_detail .p-projects_detail_content_area figure {
      display: block;
      margin: 3em 0;
      width: 100%; }
      .l-projects_detail .p-projects_detail_content_area figure img {
        max-width: 100%;
        border-radius: 10px; }
      .l-projects_detail .p-projects_detail_content_area figure figcaption {
        margin-top: 10px; }
    .l-projects_detail .p-projects_detail_content_area .toilet-on {
      width: 235px;
      height: 116px; }
    .l-projects_detail .p-projects_detail_content_area .figure_2colum {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-bottom: 3em;
      margin-top: 3em; }
      .l-projects_detail .p-projects_detail_content_area .figure_2colum figure {
        margin: 0;
        width: 47%; }
    .l-projects_detail .p-projects_detail_content_area .fl_l {
      float: left;
      margin: 0; }
    .l-projects_detail .p-projects_detail_content_area .fl_r {
      float: right;
      margin: 0; }
    .l-projects_detail .p-projects_detail_content_area .w40 {
      width: 40%; }
    .l-projects_detail .p-projects_detail_content_area .w60 {
      width: 57%; }
    .l-projects_detail .p-projects_detail_content_area .w77 {
      width: 77%; }
    .l-projects_detail .p-projects_detail_content_area .w23 {
      width: 23%; }
    .l-projects_detail .p-projects_detail_content_area figcaption.caption {
      font-size: 1.1rem;
      line-height: 19px; }
  .l-projects_detail .p-projects_pix {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 1056px;
    margin: 48px auto 80px; }
    .l-projects_detail .p-projects_pix figure {
      width: 318px;
      height: 213px; }
      .l-projects_detail .p-projects_pix figure img {
        width: 100%;
        height: auto;
        border-radius: 10px; }
  .l-projects_detail .p-projects_shopinfo_area {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #feffca;
    margin: 60px auto 0;
    width: 1056px; }
    .l-projects_detail .p-projects_shopinfo_area a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 15px 25px;
      -webkit-transition: opacity .4s;
      transition: opacity .4s; }
      .l-projects_detail .p-projects_shopinfo_area a:hover {
        opacity: .5; }
    .l-projects_detail .p-projects_shopinfo_area .l-shop_logo {
      background: #fff;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      background: #fff;
      border-radius: 10px;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 120px;
      width: 240px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .l-projects_detail .p-projects_shopinfo_area .l-shop_logo img {
        display: inline-block;
        -webkit-transform: translate(0);
            -ms-transform: translate(0);
                transform: translate(0); }
    .l-projects_detail .p-projects_shopinfo_area .l-txt_box {
      display: block;
      padding: 12px 0 8px;
      width: 745px; }
      .l-projects_detail .p-projects_shopinfo_area .l-txt_box .l-shop_name {
        font-size: 18px;
        margin-bottom: 15px; }
      .l-projects_detail .p-projects_shopinfo_area .l-txt_box p {
        line-height: 23px; }
  .l-projects_detail .p-projects_detail_app {
    width: 1056px;
    margin: 50px auto 0; }
    .l-projects_detail .p-projects_detail_app .com {
      background-color: #cbf2f4;
      padding: 30px 0 30px 45px;
      border-radius: 10px; }
      .l-projects_detail .p-projects_detail_app .com h3 {
        font-size: 1.6rem; }
      .l-projects_detail .p-projects_detail_app .com + .com {
        margin-top: 20px; }
    .l-projects_detail .p-projects_detail_app .method h3 {
      margin-bottom: 23px; }
    .l-projects_detail .p-projects_detail_app .method .l-btn_ribbon_sub1 a {
      padding-left: 30px; }
    .l-projects_detail .p-projects_detail_app .method .l-btn_ribbon_sub1 + .l-btn_ribbon_sub1 {
      margin-top: 7px; }
    .l-projects_detail .p-projects_detail_app .method p {
      margin-top: 15px;
      letter-spacing: .19rem; }
    .l-projects_detail .p-projects_detail_app .document h3 {
      margin-bottom: 15px; }
    .l-projects_detail .p-projects_detail_app .document p {
      margin-bottom: 34px; }
    .l-projects_detail .p-projects_detail_app .document a dl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding-left: 30px; }
      .l-projects_detail .p-projects_detail_app .document a dl dt {
        width: 65px;
        line-height: 1.4;
        text-align: left; }
      .l-projects_detail .p-projects_detail_app .document a dl dd {
        text-align: left;
        width: 440px;
        line-height: 1.4; }
    .l-projects_detail .p-projects_detail_app .document .l-btn_ribbon_sub2 {
      margin-top: 8px; }
    .l-projects_detail .p-projects_detail_app .access {
      margin-top: 60px; }
      .l-projects_detail .p-projects_detail_app .access p {
        margin-bottom: 18px; }
  .l-projects_detail .p-projects_detail_list {
    background-color: #feffca;
    margin-top: 45px;
    padding: 87px 0 52px; }
    .l-projects_detail .p-projects_detail_list .p-projects_detail_title {
      text-align: center; }
    .l-projects_detail .p-projects_detail_list .subtxt {
      text-align: center;
      line-height: 1.7;
      margin-top: 10px; }
    .l-projects_detail .p-projects_detail_list .list_wrap {
      width: 1056px;
      margin: 49px auto 0; }
      .l-projects_detail .p-projects_detail_list .list_wrap .tab_wrap {
        display: table;
        width: 100%; }
        .l-projects_detail .p-projects_detail_list .list_wrap .tab_wrap li {
          display: table-cell;
          font-size: 1.8rem;
          text-align: center;
          padding: 40px 0 95px;
          width: 50%; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab_wrap li:nth-of-type(1) {
            background-color: #cbf2f4; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab_wrap li:nth-of-type(2) {
            background-color: #fbf784; }
      .l-projects_detail .p-projects_detail_list .list_wrap .tab {
        font-size: 0;
        margin-top: -73px;
        text-align: center; }
        .l-projects_detail .p-projects_detail_list .list_wrap .tab li {
          cursor: pointer;
          display: inline-block;
          font-size: 1.6rem;
          vertical-align: bottom;
          width: 248px; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li:nth-of-type(2) {
            margin-left: -2px; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li:nth-of-type(3) {
            margin-left: 35px; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li:nth-of-type(4) {
            margin-left: -2px; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li.yes a {
            background-color: #fbbe68;
            border: 2px dotted #fff;
            border-bottom: 0; }
            .l-projects_detail .p-projects_detail_list .list_wrap .tab li.yes a:hover {
              background-color: #fff;
              border: 2px dotted #fbbe68;
              border-bottom: 0;
              color: #fbbe68; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li.yes.is-on a {
            background-color: #fff;
            border: 2px dotted #fbbe68;
            border-bottom: 0;
            color: #fbbe68; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li.no a {
            background-color: #a4dee1;
            border: 2px dotted #fff;
            border-bottom: 0; }
            .l-projects_detail .p-projects_detail_list .list_wrap .tab li.no a:hover {
              background-color: #fff;
              border: 2px dotted #a4dee1;
              border-bottom: 0;
              color: #a4dee1; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li.no.is-on a {
            background-color: #fff;
            border: 2px dotted #a4dee1;
            border-bottom: 0;
            color: #a4dee1; }
          .l-projects_detail .p-projects_detail_list .list_wrap .tab li a {
            -webkit-box-align: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
            border-radius: 8px 8px 0 0;
            -webkit-box-sizing: border-box;
                    box-sizing: border-box;
            color: #fff;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            height: 73px;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-transition: all .3s;
            transition: all .3s; }
      .l-projects_detail .p-projects_detail_list .list_wrap .list_box {
        background-color: #fff;
        padding-bottom: 70px;
        position: relative; }
        .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list {
          width: 970px;
          margin: 0 auto; }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: justify;
            -webkit-justify-content: space-between;
                -ms-flex-pack: justify;
                    justify-content: space-between;
            -webkit-box-align: end;
            -webkit-align-items: flex-end;
                -ms-flex-align: end;
                    align-items: flex-end;
            background: url(/common/images/projects/toilet/dotted.png) repeat-X 50% 100%;
            background-size: 1057px 3px;
            padding-bottom: 20px;
            padding-top: 20px; }
            .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li.hidden {
              display: none; }
            .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product {
              display: -webkit-box;
              display: -webkit-flex;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-pack: justify;
              -webkit-justify-content: space-between;
                  -ms-flex-pack: justify;
                      justify-content: space-between;
              -webkit-box-align: center;
              -webkit-align-items: center;
                  -ms-flex-align: center;
                      align-items: center;
              width: 680px; }
              .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product figure {
                background: url(/common/images/common/no_img_kaiteki.jpg) no-repeat center center;
                width: 144px;
                height: 144px; }
                .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product figure img {
                  width: 100%;
                  height: auto; }
              .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product .txt {
                width: 536px;
                padding-left: 42px;
                padding-bottom: 14px; }
                .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product .txt dl {
                  display: -webkit-box;
                  display: -webkit-flex;
                  display: -ms-flexbox;
                  display: flex; }
                  .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product .txt dl dt {
                    font-weight: bold;
                    width: 68px; }
                  .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product .txt dl dd {
                    width: 208px;
                    padding-left: 24px; }
                  .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .product .txt dl + dl {
                    margin-top: 7px; }
            .l-projects_detail .p-projects_detail_list .list_wrap .list_box .item_list li .l-btn_ribbon {
              width: 259.5px; }
        .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap {
          width: 970px;
          margin: 0 auto;
          padding-top: 26px;
          padding-bottom: 6px;
          text-align: right; }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap input[type=radio],
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap input[type=checkbox] {
            display: none; }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap input[type=radio]:checked + .radio:before {
            content: "";
            width: 8px;
            height: 8px;
            background-color: #707070;
            border-radius: 50%;
            position: absolute;
            left: 7px;
            top: 50%;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%); }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap input[type=checkbox]:checked + .checkbox:before {
            content: "";
            display: block;
            position: absolute;
            top: 1px;
            left: 8px;
            width: 7px;
            height: 14px;
            -webkit-transform: rotate(40deg);
                -ms-transform: rotate(40deg);
                    transform: rotate(40deg);
            border-bottom: 3px solid #707070;
            border-right: 3px solid #707070; }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap .radio {
            font-size: 1.8rem;
            position: relative;
            cursor: pointer;
            padding-left: 33px;
            margin-left: 30px; }
            .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap .radio:after {
              content: "";
              width: 22px;
              height: 22px;
              border: 2px solid #54afda;
              border-radius: 50%;
              position: absolute;
              left: 0;
              top: 50%;
              -webkit-transform: translateY(-50%);
                  -ms-transform: translateY(-50%);
                      transform: translateY(-50%); }
          .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap .checkbox {
            font-size: 1.8rem;
            position: relative;
            cursor: pointer;
            padding-left: 33px;
            margin-left: 30px; }
            .l-projects_detail .p-projects_detail_list .list_wrap .list_box .radio_wrap .checkbox:after {
              content: "";
              width: 22px;
              height: 22px;
              border: 2px solid #54afda;
              border-radius: 20%;
              position: absolute;
              left: 0;
              top: 50%;
              -webkit-transform: translateY(-50%);
                  -ms-transform: translateY(-50%);
                      transform: translateY(-50%); }
  .l-projects_detail .l-contact_block {
    background: none;
    margin-bottom: 50px;
    min-width: 1160px; }
  .l-projects_detail .p-projects_pickup_main {
    padding: 0 0 40px; }
    .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title_area {
      position: relative; }
    .l-projects_detail .p-projects_pickup_main .p-projects_shop_logo {
      top: 560px; }
    .l-projects_detail .p-projects_pickup_main .p-projects_pickup_visual {
      background-position: bottom center;
      background-repeat: no-repeat;
      background-size: cover;
      height: 560px;
      min-width: 1160px;
      padding-top: 387px;
      position: relative;
      width: 100%; }
    .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title {
      background: url(../images/projects/detail/main_waku.png) -100% top no-repeat;
      background-size: 50% 100%;
      height: 153px;
      position: relative;
      margin: 0 auto;
      width: 100%;
      z-index: 1;
      -webkit-transition: background-position .4s .1s;
      transition: background-position .4s .1s; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title.motion {
        background-position: 0% top;
        opacity: 1; }
        .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title.motion .inr {
          -webkit-transform: translateX(0%);
              -ms-transform: translateX(0%);
                  transform: translateX(0%);
          opacity: 1; }
        .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title.motion .l-liner_ttl:before {
          width: 100%; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .inr {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        background: url(../images/projects/detail/main_waku.png) right top no-repeat;
        background-size: auto 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        height: 153px;
        left: 50%;
        margin-left: -580px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding-left: 55px;
        padding-bottom: 12px;
        padding-right: 30px;
        position: absolute;
        min-width: 690px;
        -webkit-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
                transform: translateX(-100%);
        opacity: 0;
        -webkit-transition: opacity .4s .2s,-webkit-transform .8s;
        transition: opacity .4s .2s,-webkit-transform .8s;
        transition: transform .8s,opacity .4s .2s;
        transition: transform .8s,opacity .4s .2s,-webkit-transform .8s; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .l-liner_ttl {
        display: inline-block;
        font-weight: normal;
        margin-bottom: 13px;
        position: relative;
        z-index: 1; }
        .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .l-liner_ttl:before {
          background: #fdff7b;
          bottom: 2px;
          content: '';
          display: inline-block;
          height: 15px;
          left: 0;
          position: absolute;
          right: 0;
          width: 0%;
          z-index: -1;
          -webkit-transition: width .3s 1s;
          transition: width .3s 1s; }
        .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .l-liner_ttl .ttl {
          background: url(../images/projects/detail/pickup.png);
          background-size: 100% 100%;
          display: inline-block;
          height: 29px;
          overflow: hidden;
          text-indent: -99999px;
          vertical-align: top;
          width: 90.5px; }
        .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .l-liner_ttl .vol {
          color: #54afda;
          display: inline-block;
          font-size: 16px;
          min-width: 1px;
          margin-left: 10px;
          margin-top: 7px;
          vertical-align: top; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .ttl-article {
        font-size: 24px;
        margin-bottom: 8px; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_title .name {
        font-size: 18px;
        font-weight: bold; }
    .l-projects_detail .p-projects_pickup_main .p-projects_detail_content_area {
      margin: 0 auto;
      padding: 64px 0;
      position: relative;
      width: 816px; }
    .l-projects_detail .p-projects_pickup_main .p-projects_pickup_lead_block {
      margin-bottom: 40px; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_lead_block h3 {
        font-size: 1.8rem; }
      .l-projects_detail .p-projects_pickup_main .p-projects_pickup_lead_block p {
        font-weight: bold; }

.p-qa {
  line-height: 23px; }
  .p-qa .p-qa_contents {
    margin: 0 auto;
    padding: 78px 0 75px;
    width: 1056px; }
  .p-qa .p-qa_title {
    display: inline-block;
    font-size: 24px;
    margin-bottom: 23px;
    position: relative;
    z-index: 1; }
    .p-qa .p-qa_title:before {
      background: #fdff7b;
      bottom: -5px;
      content: '';
      display: inline-block;
      height: 18px;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-qa .p-qa_title.motion:before {
      width: 100%; }
  .p-qa .p-qa_category_ttl {
    background: #f7f7f7;
    font-size: 18px;
    padding: 15px 15px 12px;
    text-align: center; }
  .p-qa .p-qa_list {
    margin: 3px 0; }
    .p-qa .p-qa_list > li {
      border-bottom: 2px dotted #ced6da;
      padding: 18px 0; }
      .p-qa .p-qa_list > li:first-of-type {
        border-top: 2px dotted #ced6da; }
    .p-qa .p-qa_list .line_btn {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      border-bottom: 1px solid #fff;
      border-top: 1px solid #fff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      font-size: 18px;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      vertical-align: top;
      cursor: pointer; }
      .p-qa .p-qa_list .line_btn .q_num {
        font-size: 18px;
        font-weight: bold;
        padding-top: 4px;
        width: 45px; }
      .p-qa .p-qa_list .line_btn .q_ttl {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        font-size: 18px;
        font-weight: bold;
        padding-top: 4px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
      .p-qa .p-qa_list .line_btn.is-open .btn span::before {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg); }
      .p-qa .p-qa_list .line_btn.is-open .btn span::after {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg); }
      .p-qa .p-qa_list .line_btn .btn {
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start;
        -webkit-flex-basis: 28px;
            -ms-flex-preferred-size: 28px;
                flex-basis: 28px; }
        .p-qa .p-qa_list .line_btn .btn span {
          cursor: pointer;
          position: relative;
          display: inline-block;
          width: 28px;
          height: 28px;
          border-radius: 50%;
          background-color: #54afda; }
          .p-qa .p-qa_list .line_btn .btn span:before, .p-qa .p-qa_list .line_btn .btn span:after {
            position: absolute;
            top: 0;
            bottom: 0;
            right: 7px;
            margin: auto;
            content: "";
            display: block;
            width: 14px;
            height: 2px;
            background-color: #fff;
            -webkit-transition: -webkit-transform .4s;
            transition: -webkit-transform .4s;
            transition: transform .4s;
            transition: transform .4s, -webkit-transform .4s; }
          .p-qa .p-qa_list .line_btn .btn span::before {
            -webkit-transform: rotate(90deg);
                -ms-transform: rotate(90deg);
                    transform: rotate(90deg); }
        .p-qa .p-qa_list .line_btn .btn .is-nodata {
          background-color: #b3b3b3; }
          .p-qa .p-qa_list .line_btn .btn .is-nodata:before, .p-qa .p-qa_list .line_btn .btn .is-nodata:after {
            background-color: #e1e1e1; }
    .p-qa .p-qa_list .line_open {
      display: none;
      padding: 13px 0 27px; }
      .p-qa .p-qa_list .line_open .q_det {
        line-height: 23px;
        padding: 0 60px 30px 50px; }
      .p-qa .p-qa_list .line_open .box_yellow {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        background: #feffca;
        border-radius: 10px;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        padding: 37px 60px 40px 50px; }
        .p-qa .p-qa_list .line_open .box_yellow .a_num {
          color: #54afda;
          font-size: 18px;
          width: 50px; }
        .p-qa .p-qa_list .line_open .box_yellow .a_txt {
          line-height: 23px;
          -webkit-box-flex: 1;
          -webkit-flex: 1;
              -ms-flex: 1;
                  flex: 1; }

.p-recruit__contents {
  width: 1060px;
  margin: 76px auto 103px; }
  .p-recruit__contents-main-ttl {
    margin-bottom: 35px; }
    .p-recruit__contents-main-ttl h2 {
      font-size: 2.4rem;
      position: relative;
      display: inline-block; }
      .p-recruit__contents-main-ttl h2:after {
        content: "";
        display: inline-block;
        background-color: #fdff7b;
        width: 0%;
        height: 70%;
        position: absolute;
        left: 0;
        bottom: -5px;
        z-index: -1;
        -webkit-transition: width .3s .3s;
        transition: width .3s .3s; }
      .p-recruit__contents-main-ttl h2.motion:after {
        width: 100%; }
  .p-recruit__contents-staff-ttl {
    margin-bottom: 75px; }
    .p-recruit__contents-staff-ttl ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      position: relative; }
      .p-recruit__contents-staff-ttl ul:after {
        content: "";
        width: 1060px;
        height: 2px;
        background-color: #54afda;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 1; }
      .p-recruit__contents-staff-ttl ul li {
        font-size: 1.8rem;
        text-align: center;
        line-height: 75px;
        width: 516px;
        height: 71px;
        cursor: pointer;
        background: url(/common/images/profile/recruit/tab.png) no-repeat 50% 50%;
        background-size: cover;
        -webkit-transition: background-image .5s;
        transition: background-image .5s; }
      .p-recruit__contents-staff-ttl ul .select {
        background: url(/common/images/profile/recruit/blue_tab.png) no-repeat 50% 50%;
        background-size: cover;
        width: 516px;
        height: 71px;
        background-color: #fff;
        position: relative;
        z-index: 10; }
  .p-recruit__contents .js-contents .part {
    display: none; }
  .p-recruit__contents .part-text {
    min-height: 100px; }
  .p-recruit__contents-staff-dtl .com .wrap {
    margin-top: 35px;
    min-height: 300px; }
    .p-recruit__contents-staff-dtl .com .wrap .box {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .p-recruit__contents-staff-dtl .com .wrap .box .ttl {
        width: 300px;
        text-align: right;
        padding: 20px 40px 0 0;
        background-color: #fafafa; }
      .p-recruit__contents-staff-dtl .com .wrap .box .dtl {
        width: 760px;
        padding: 20px 0 19px 40px; }
        .p-recruit__contents-staff-dtl .com .wrap .box .dtl ul li {
          letter-spacing: 1.8px;
          line-height: 1.6; }
          .p-recruit__contents-staff-dtl .com .wrap .box .dtl ul li a {
            position: relative;
            text-decoration: underline; }
          .p-recruit__contents-staff-dtl .com .wrap .box .dtl ul li + li {
            margin-top: 6px; }
      .p-recruit__contents-staff-dtl .com .wrap .box + .box {
        background: url(/common/images/profile/recruit/tensen.png) no-repeat 50% 100%;
        background-size: 1057px 3px;
        padding-bottom: 4px; }
      .p-recruit__contents-staff-dtl .com .wrap .box:first-child {
        padding: 4px 0;
        background: url(/common/images/profile/recruit/tensen.png), url(/common/images/profile/recruit/tensen.png);
        background-repeat: no-repeat;
        background-position: 50% 100%,50% 0%;
        background-size: 1057px 3px; }
  .p-recruit__contents-access {
    text-align: center;
    margin-top: 34px; }
    .p-recruit__contents-access a {
      display: inline-block;
      background: url(/common/images/common/btn1.png) no-repeat 50% 50%;
      background-size: cover;
      width: 260px;
      height: 42px;
      line-height: 42px;
      position: relative;
      -webkit-transition: all .2s;
      transition: all .2s; }
      .p-recruit__contents-access a span {
        color: #fff;
        display: inline-block;
        position: relative;
        padding-left: 15px;
        -webkit-transition: all .2s;
        transition: all .2s; }
        .p-recruit__contents-access a span:before {
          content: "";
          position: absolute;
          top: 47%;
          left: -7px;
          -webkit-transform: rotate(45deg) translateY(-50%);
              -ms-transform: rotate(45deg) translateY(-50%);
                  transform: rotate(45deg) translateY(-50%);
          display: inline-block;
          width: 8px;
          height: 8px;
          border-top: 2px solid #fdff7b;
          border-right: 2px solid #fdff7b;
          -webkit-transition: all .2s;
          transition: all .2s; }
        .p-recruit__contents-access a span:after {
          content: "";
          position: absolute;
          bottom: 10px;
          left: 50%;
          -webkit-transform: translateX(-50%);
              -ms-transform: translateX(-50%);
                  transform: translateX(-50%);
          display: inline-block;
          width: 103px;
          height: 2px;
          background-color: #fdff7b;
          -webkit-transition: all .2s;
          transition: all .2s; }
      .p-recruit__contents-access a:hover {
        background: url(/common/images/common/btn1_ov.png) no-repeat 50% 50%;
        background-size: cover; }
        .p-recruit__contents-access a:hover span {
          color: #4e8fd8; }
          .p-recruit__contents-access a:hover span:before {
            border-top: 2px solid #4e8fd8;
            border-right: 2px solid #4e8fd8; }
          .p-recruit__contents-access a:hover span:after {
            background-color: #4e8fd8; }

.p-sitemap_content {
  width: 1056px;
  margin: 76px auto 100px; }
  .p-sitemap_content a[target="_blank"]:after {
    display: inline-block;
    content: "";
    width: 12px;
    height: 12px;
    margin-left: 5px;
    background: url(../images/common/blank_icon.png) no-repeat right center; }
  .p-sitemap_content h1 {
    display: inline-block;
    font-size: 2.4rem;
    margin-bottom: 36px;
    position: relative;
    white-space: nowrap; }
    .p-sitemap_content h1:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 50%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-sitemap_content h1.motion:before {
      width: 100%; }
  .p-sitemap_content .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 30px 0 0 0px;
    background: url(../images/sitemap/vline.png) repeat-y left top; }

.p-sitemap_group {
  width: 265px;
  padding: 24px 0 0 30px;
  background: url(../images/sitemap/vline.png) repeat-y right top; }
  .p-sitemap_group.wide {
    width: 530px; }
  .p-sitemap_group h2 {
    margin-bottom: 20px; }
    .p-sitemap_group h2.ico-wanko {
      position: relative; }
      .p-sitemap_group h2.ico-wanko:after {
        content: " ";
        display: block;
        position: absolute;
        top: 24px;
        right: 32px;
        width: 95px;
        height: 95px;
        background: url(../images/sitemap/deco.png) no-repeat right top;
        background-size: 94px, 94px; }
    .p-sitemap_group h2 a:hover {
      text-decoration: underline; }
  .p-sitemap_group ul li a:hover {
    text-decoration: underline; }
  .p-sitemap_group ul > li {
    margin-bottom: 8px; }

.p-sitemap .l-f_contact {
  display: none; }

.p-sponsor__contents {
  width: 1060px;
  margin: 77px auto 49px; }
  .p-sponsor__contents__main-ttl h2 {
    font-size: 2.4rem;
    display: inline-block;
    position: relative;
    padding-bottom: 4px; }
    .p-sponsor__contents__main-ttl h2:after {
      content: "";
      display: inline-block;
      background-color: #fdff7b;
      width: 0%;
      height: 70%;
      position: absolute;
      left: 0;
      bottom: -5px;
      z-index: -1;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-sponsor__contents__main-ttl h2.motion:after {
      width: 100%; }
  .p-sponsor__contents__main-ttl .text {
    font-size: 1.6rem;
    line-height: 1.5;
    margin-top: 12px; }
  .p-sponsor__contents__list {
    margin-top: 70px;
    margin-bottom: 80px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .p-sponsor__contents__list .box {
      width: 530px;
      height: 300px;
      border-right: 1px dashed #ccc;
      border-bottom: 1px dashed #ccc; }
      .p-sponsor__contents__list .box:nth-of-type(odd) {
        border-left: 1px dashed #ccc; }
      .p-sponsor__contents__list .box a {
        width: 530px;
        height: 300px;
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        .p-sponsor__contents__list .box a figure {
          width: auto;
          height: auto; }
          .p-sponsor__contents__list .box a figure img {
            width: 100%;
            height: auto; }
        .p-sponsor__contents__list .box a .detail {
          letter-spacing: 0.1px;
          position: absolute;
          top: 5px;
          left: 5px;
          width: 520px;
          height: 290px;
          background-color: #cbf2f4;
          border-radius: 10px;
          padding: 23px 20px 23px 20px;
          opacity: 0;
          -webkit-transform: scale(0);
              -ms-transform: scale(0);
                  transform: scale(0);
          -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition: opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55), opacity 0.3s ease-in-out;
          transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55), opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
          .p-sponsor__contents__list .box a .detail .detail_in {
            opacity: 0;
            -webkit-transition: opacity .3s 0s;
            transition: opacity .3s 0s; }
          .p-sponsor__contents__list .box a .detail h3 {
            margin-bottom: 11px; }
          .p-sponsor__contents__list .box a .detail .text p {
            line-height: 1.5; }
            .p-sponsor__contents__list .box a .detail .text p:last-child:after {
              margin-left: 15px;
              content: "";
              display: inline-block;
              background: url(/common/images/common/blank_icon.png) no-repeat;
              background-size: cover;
              width: 12px;
              height: 11px; }
        .p-sponsor__contents__list .box a:hover .detail {
          -webkit-transform: scale(1);
              -ms-transform: scale(1);
                  transform: scale(1);
          opacity: 1; }
          .p-sponsor__contents__list .box a:hover .detail .detail_in {
            -webkit-transition: opacity .3s .4s;
            transition: opacity .3s .4s;
            opacity: 1; }
  .p-sponsor__contents__more {
    width: 23px;
    height: 186px;
    margin: 38px auto 0; }
    .p-sponsor__contents__more img {
      width: 100%;
      height: auto; }

.p-store_content {
  width: 1056px;
  margin: 76px auto 78px; }
  .p-store_content h1 {
    display: inline-block;
    font-size: 2.4rem;
    margin-bottom: 35px;
    position: relative;
    white-space: nowrap; }
    .p-store_content h1:before {
      background: #fdff7b;
      bottom: 0;
      content: '';
      display: inline-block;
      height: 50%;
      left: 0;
      position: absolute;
      right: 0;
      z-index: -1;
      width: 0%;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-store_content h1.motion:before {
      width: 100%; }
  .p-store_content p {
    font-size: 1.6rem; }
    .p-store_content p.lead {
      margin-bottom: 16px;
      line-height: 24px; }
    .p-store_content p small {
      font-size: 1.4rem; }

.p-store_intro {
  margin-bottom: 36px; }

.p-store-flow {
  border: 2px solid #cbf2f4;
  border-radius: 10px;
  padding: 42px 24px 32px; }
  .p-store-flow_2col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
    -webkit-justify-content: start;
        -ms-flex-pack: start;
            justify-content: start;
    margin: 54px 0 16px 0; }

.p-store-step-t {
  font-size: 18px; }

.p-store-step ol {
  width: 100%;
  padding: 0;
  margin: 46px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .p-store-step ol > li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    width: 216px;
    height: 100px;
    font-size: 1.8rem;
    background-color: #feffca;
    position: relative; }
    .p-store-step ol > li:after {
      content: " ";
      display: block;
      position: absolute;
      top: 1px;
      right: -73px;
      width: 100px;
      height: 100px;
      background: url(../images/online/arrow.png) no-repeat center center;
      background-size: 18px 24px; }
    .p-store-step ol > li:last-child:after {
      background: none; }

.p-store-cost h2, .p-store-payment h2 {
  font-size: 1.4rem;
  margin-bottom: 10px; }

.p-store-cost p, .p-store-payment p {
  font-size: 1.4rem;
  line-height: 27px; }

.p-store-cost {
  margin-right: 96px; }

.p-store .txt_link {
  color: #54afda; }
  .p-store .txt_link:hover {
    text-decoration: underline; }

.p-store-payment_account {
  margin: 10px auto;
  padding: 10px 0;
  position: relative; }
  .p-store-payment_account:before, .p-store-payment_account:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background: url(../images/common/dotted.png) repeat-x left center;
    background-size: 4px 2px; }
  .p-store-payment_account:before {
    top: 5px; }
  .p-store-payment_account:after {
    bottom: 0px; }

.p-store .btn.btn-contact {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 260px;
  height: 42px;
  font-size: 14px;
  color: #ffffff;
  background: url(../images/common/btn1.png) no-repeat center center;
  background-size: 260px 42px;
  -webkit-transition: color .2s,background-image .3s;
  transition: color .2s,background-image .3s; }
  .p-store .btn.btn-contact .wrap {
    padding-bottom: 2px;
    border-bottom: 2px solid #fdff7b;
    -webkit-transition: border-bottom .3s;
    transition: border-bottom .3s; }
  .p-store .btn.btn-contact .fa-arrow {
    display: inline-block;
    margin-right: 7px;
    width: 7px;
    height: 13px;
    background: url(../images/common/arrow1.png) no-repeat center center;
    background-size: 7px 13px;
    -webkit-transition: background-image .3s;
    transition: background-image .3s; }
  .p-store .btn.btn-contact:hover {
    background-image: url(../images/common/btn1_ov.png);
    color: #4e8fd8; }
    .p-store .btn.btn-contact:hover .wrap {
      border-bottom: 2px solid #54afda; }
    .p-store .btn.btn-contact:hover .fa-arrow {
      background-image: url(../images/common/arrow1_ov.png); }

.p-store .btn.btn-submit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 260px;
  height: 42px;
  font-size: 14px;
  color: #ffffff;
  background: url(../images/common/btn2.png) no-repeat center center;
  background-size: 260px 42px;
  line-height: 26px;
  -webkit-transition: color .2s,background-image .3s;
  transition: color .2s,background-image .3s; }
  .p-store .btn.btn-submit .fa-cart {
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px;
    width: 21px;
    height: 26px;
    background: url(../images/online/i-cart.png) no-repeat center top;
    background-size: 21px 21px;
    -webkit-transition: background-image .3s;
    transition: background-image .3s; }
  .p-store .btn.btn-submit:hover {
    background-image: url(../images/common/btn2_ov.png);
    color: #4e8fd8; }
    .p-store .btn.btn-submit:hover .fa-cart {
      background: url(../images/online/i-cart_ov.png) no-repeat center top;
      background-size: 21px 21px; }

.p-store .btn.pull-right {
  margin-left: auto; }

.p-store-item {
  margin-bottom: 40px; }
  .p-store-item_wrap {
    width: 1056px;
    margin: auto;
    position: relative;
    padding-bottom: 46px; }
  .p-store-item_t {
    width: 144px;
    height: auto;
    position: absolute;
    top: -30px;
    background: #cbf2f4;
    font-size: 1.8rem;
    text-align: center;
    padding: 10px 0 0 0;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px; }
  .p-store-item--seal {
    background: #cbf2f4; }
  .p-store-item--cd {
    background: #feffca; }
    .p-store-item--cd .p-store-item_t {
      background: #feffca; }
  .p-store-item--book {
    background: #cbf2f4; }

.p-store-goods {
  margin: 42px auto 60px auto;
  display: inline-block; }
  .p-store-goods + .p-store-goods {
    margin-top: 18px; }
  .p-store-goods_t {
    font-size: 1.8rem;
    margin-bottom: 26px;
    position: relative;
    display: inline-block; }
    .p-store-goods_t:before {
      background: #fdff7b;
      bottom: -6px;
      content: '';
      display: inline-block;
      height: 70%;
      left: 0;
      position: absolute;
      right: 0;
      width: 0%;
      z-index: -1;
      -webkit-transition: width .3s .3s;
      transition: width .3s .3s; }
    .p-store-goods_t.motion:before {
      width: 100%; }
  .p-store-goods .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .p-store-goods .row .img {
      width: 192px;
      height: auto;
      margin-right: 48px; }
      .p-store-goods .row .img img {
        width: 100%;
        height: auto; }
    .p-store-goods .row .spec {
      width: 548px; }
      .p-store-goods .row .spec .price {
        font-size: 14px;
        font-weight: bold;
        margin-bottom: 12px; }
        .p-store-goods .row .spec .price small {
          display: block;
          font-size: 1.4rem;
          font-weight: normal;
          line-height: 32px; }
      .p-store-goods .row .spec .desc {
        line-height: 23px; }
    .p-store-goods .row .buy {
      -webkit-align-self: flex-end;
          -ms-flex-item-align: end;
              align-self: flex-end;
      text-align: right; }
      .p-store-goods .row .buy label {
        font-size: 1.8rem;
        margin-right: 20px; }
      .p-store-goods .row .buy .input-group {
        margin-bottom: 20px; }
        .p-store-goods .row .buy .input-group .input.num {
          width: 110px;
          height: 44px;
          border: 1px solid #9aa5a9;
          border-radius: 10px;
          padding: 0 10px;
          text-align: center; }

.l-top {
  min-width: 1160px;
  width: 100%;
  /* projects */
  /* activities */
  /* studies */
  /* news */
  /* natural */
  /* about */ }
  .l-top .p-top_main {
    height: 740px;
    overflow: hidden; }
  .l-top section {
    margin: 0 auto;
    overflow: hidden;
    padding: 79px 0 80px 0;
    text-align: center;
    width: 100%; }
    .l-top section .p-top_sec_inr {
      margin: 0 auto;
      width: 1056px; }
  .l-top .swiper-wrapper {
    position: relative; }
    .l-top .swiper-wrapper > div {
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      height: 560px;
      position: relative;
      top: 0; }
      .l-top .swiper-wrapper > div a {
        display: block;
        height: 100%;
        width: 100%; }
      .l-top .swiper-wrapper > div figure {
        overflow: hidden;
        text-align: center;
        width: 100%; }
        .l-top .swiper-wrapper > div figure img {
          min-height: 560px;
          margin: 0 auto; }
      .l-top .swiper-wrapper > div .txt_box {
        background: rgba(255, 255, 255, 0.8);
        bottom: 30px;
        border-radius: 10px;
        color: #333;
        margin-left: -530px;
        left: 50%;
        padding: 34px 50px 34px 58px;
        position: absolute;
        width: 280px; }
        .l-top .swiper-wrapper > div .txt_box .category {
          border-bottom: 2px solid #54afda;
          display: inline-block;
          margin-bottom: 20px;
          padding-bottom: 5px; }
        .l-top .swiper-wrapper > div .txt_box .ttl {
          font-size: 18px;
          font-weight: 600;
          letter-spacing: 0.5px;
          line-height: 27px; }
        .l-top .swiper-wrapper > div .txt_box .date {
          font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
          font-size: 12px;
          margin-top: 15px;
          text-align: right; }
  .l-top .p-top_slider2-wrapper {
    background-color: #cbf2f4;
    margin: 0 auto;
    max-width: 100% !important;
    overflow: visible; }
    .l-top .p-top_slider2-wrapper .bx-viewport {
      height: 180px !important;
      overflow: visible !important; }
    .l-top .p-top_slider2-wrapper .p-top_main_slider2 {
      display: block; }
  .l-top .p-top_main_slider2 {
    background-color: #cbf2f4;
    height: 180px !important;
    display: block;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 30px;
    padding-top: 30px;
    text-align: center;
    width: 2000%;
    overflow: hidden; }
    .l-top .p-top_main_slider2 li {
      opacity: 0;
      display: block;
      float: left;
      background-color: #fff;
      border-radius: 10px;
      height: 120px;
      overflow: hidden;
      width: 320px;
      margin-right: 500px;
      -webkit-backface-visibility: hidden;
              backface-visibility: hidden; }
      .l-top .p-top_main_slider2 li:first-child {
        margin-left: 100px; }
      .l-top .p-top_main_slider2 li a {
        border-right: 10px;
        display: block;
        height: 120px;
        overflow: hidden;
        position: relative;
        width: 320px; }
        .l-top .p-top_main_slider2 li a img {
          bottom: 0;
          height: auto;
          left: 0;
          margin: auto;
          position: absolute;
          top: 0;
          right: 0;
          width: 100%; }
  .l-top .p-top_sec_ttl {
    color: #333;
    display: inline-block;
    font-size: 16px;
    text-align: left; }
    .l-top .p-top_sec_ttl .jp {
      display: block;
      letter-spacing: 0.09em;
      margin-bottom: 9px; }
    .l-top .p-top_sec_ttl .en {
      display: block;
      line-height: 1.1; }
      .l-top .p-top_sec_ttl .en img {
        height: auto; }
  .l-top .p-top_btn_ribbon {
    display: inline-block; }
    .l-top .p-top_btn_ribbon a {
      background: url(../images/common/btn2.png) left top no-repeat;
      background-size: cover;
      color: #fff;
      display: block;
      font-size: 1.3rem;
      height: 42px;
      padding-top: 13px;
      -webkit-transition: all .4s;
      transition: all .4s;
      width: 259.5px; }
      .l-top .p-top_btn_ribbon a:hover {
        background: url(../images/common/btn2_ov.png) left top no-repeat;
        background-size: cover;
        color: #54afda;
        opacity: 1; }
    .l-top .p-top_btn_ribbon.dark a {
      background-image: url(../images/common/btn1.png); }
      .l-top .p-top_btn_ribbon.dark a:hover {
        background: url(../images/common/btn1_ov.png) left top no-repeat;
        background-size: cover;
        color: #4e8fd8;
        opacity: 1; }
  .l-top .p-top_projects {
    background-color: #f7f7f7; }
    .l-top .p-top_projects .p-top_sec_ttl {
      margin-bottom: 26px; }
      .l-top .p-top_projects .p-top_sec_ttl .en img {
        width: 177px; }
    .l-top .p-top_projects .p-top_projects_list {
      -webkit-align-content: flex-start;
          -ms-flex-line-pack: start;
              align-content: flex-start;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      font-size: 0;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      text-align: left; }
      .l-top .p-top_projects .p-top_projects_list li {
        background: #fff;
        border-radius: 10px;
        -webkit-flex-basis: 504px;
            -ms-flex-preferred-size: 504px;
                flex-basis: 504px;
        height: 433px;
        overflow: hidden;
        vertical-align: top; }
        .l-top .p-top_projects .p-top_projects_list li:nth-of-type(n+3) {
          margin-top: 29px; }
        .l-top .p-top_projects .p-top_projects_list li a {
          background-color: #fff;
          display: block;
          padding-top: 336px;
          position: relative; }
        .l-top .p-top_projects .p-top_projects_list li figure {
          margin: auto;
          overflow: hidden;
          position: absolute;
          top: 0;
          width: 100%;
          border-radius: 10px 10px 0 0; }
          .l-top .p-top_projects .p-top_projects_list li figure img {
            height: auto;
            width: 100%; }
        .l-top .p-top_projects .p-top_projects_list li .txt {
          background: #fff;
          height: 96px;
          padding: 19px 0 0 24px;
          position: relative;
          text-align: left; }
          .l-top .p-top_projects .p-top_projects_list li .txt .vol {
            background-color: #fff;
            border-radius: 5px 5px 0 0;
            color: #54afda;
            font-size: 14px;
            display: inline-block;
            left: 24px;
            letter-spacing: 0.5px;
            height: 21px;
            position: absolute;
            padding-top: 7px;
            top: -20px;
            text-align: center;
            width: 73px; }
          .l-top .p-top_projects .p-top_projects_list li .txt .ttl {
            font-size: 18px;
            font-weight: bold;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap; }
          .l-top .p-top_projects .p-top_projects_list li .txt .logo {
            -webkit-box-align: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
            display: -webkit-flex;
            display: -ms-flex;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            margin-top: 15px;
            -webkit-box-pack: start;
            -webkit-justify-content: flex-start;
                -ms-flex-pack: start;
                    justify-content: flex-start;
            text-align: left;
            overflow: visible; }
            .l-top .p-top_projects .p-top_projects_list li .txt .logo .partner {
              background: url(../images/top/projects_partner.png) left center no-repeat;
              background-size: 52px auto;
              border-right: 2px solid #ced6da;
              -webkit-flex-basis: 66px;
                  -ms-flex-preferred-size: 66px;
                      flex-basis: 66px;
              margin-right: 16px;
              line-height: 1.1;
              text-indent: -99999px; }
            .l-top .p-top_projects .p-top_projects_list li .txt .logo .img {
              padding: 0;
              position: relative;
              text-align: left; }
              .l-top .p-top_projects .p-top_projects_list li .txt .logo .img img {
                bottom: 0;
                margin: auto;
                left: 0;
                position: absolute;
                top: 0;
                width: auto;
                height: auto;
                max-width: 160px;
                max-height: 30px; }
    .l-top .p-top_projects .p-top_btn_list {
      font-size: 0;
      margin-top: 41px; }
      .l-top .p-top_projects .p-top_btn_list li {
        font-size: 14px;
        margin: 0 23px; }
  .l-top .p-top_activities {
    padding-top: 77px; }
    .l-top .p-top_activities .p-top_sec_ttl {
      margin-bottom: 33px; }
      .l-top .p-top_activities .p-top_sec_ttl .en img {
        width: 198px; }
    .l-top .p-top_activities .p-top_activities_list {
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .l-top .p-top_activities .p-top_activities_list li {
        background: url(../images/top/activities_bg.png) left top no-repeat;
        background-size: 100% auto;
        height: 214px;
        width: 504px; }
        .l-top .p-top_activities .p-top_activities_list li:nth-of-type(n+3) {
          margin-top: 15px; }
        .l-top .p-top_activities .p-top_activities_list li a {
          display: -webkit-flex;
          display: -ms-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          height: 214px;
          padding: 25px 0 0 36px;
          position: relative;
          text-align: left; }
        .l-top .p-top_activities .p-top_activities_list li figure {
          -webkit-align-self: center;
              -ms-flex-item-align: center;
                  align-self: center;
          -webkit-flex-basis: 144px;
              -ms-flex-preferred-size: 144px;
                  flex-basis: 144px;
          border-radius: 10px;
          height: 144px;
          overflow: hidden;
          position: relative;
          -webkit-transition: all .4s;
          transition: all .4s; }
          .l-top .p-top_activities .p-top_activities_list li figure img {
            bottom: 0;
            left: 0;
            margin: 0;
            max-height: 100%;
            max-width: 100%;
            position: absolute;
            right: 0;
            top: 0; }
        .l-top .p-top_activities .p-top_activities_list li .r_box {
          -webkit-align-self: center;
              -ms-flex-item-align: center;
                  align-self: center;
          -webkit-flex-basis: 300px;
              -ms-flex-preferred-size: 300px;
                  flex-basis: 300px;
          padding-left: 20px;
          -webkit-transition: all .4s;
          transition: all .4s; }
          .l-top .p-top_activities .p-top_activities_list li .r_box .ttl {
            font-size: 18px;
            font-weight: bold;
            letter-spacing: 0.16em;
            margin-bottom: 18px;
            line-height: 1.15; }
          .l-top .p-top_activities .p-top_activities_list li .r_box .txt {
            line-height: 23px;
            letter-spacing: 0.13em; }
        .l-top .p-top_activities .p-top_activities_list li .label {
          background-color: #fff;
          border-radius: 10px;
          bottom: -13px;
          color: #54afda;
          height: 40px;
          position: absolute;
          right: 45px;
          width: 140px; }
          .l-top .p-top_activities .p-top_activities_list li .label span {
            background-color: #fff;
            -webkit-box-align: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
            border: 2px solid #54afda;
            border-radius: 10px;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            height: 40px;
            letter-spacing: 0;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-transition: all .4s;
            transition: all .4s;
            width: 140px; }
          .l-top .p-top_activities .p-top_activities_list li .label.blue span {
            background-color: #54afda;
            color: #fff; }
        .l-top .p-top_activities .p-top_activities_list li a:hover figure,
        .l-top .p-top_activities .p-top_activities_list li a:hover .r_box,
        .l-top .p-top_activities .p-top_activities_list li a:hover .label span {
          opacity: .5; }
    .l-top .p-top_activities .p-top_btn_ribbon {
      margin-top: 49px; }
  .l-top .p-top_studies {
    background-color: #C0EFF1;
    position: relative; }
    .l-top .p-top_studies:before {
      background: #feffca;
      content: '';
      height: 100%;
      left: 50%;
      position: absolute;
      top: 0;
      width: 50%; }
    .l-top .p-top_studies .p-top_sec_ttl {
      margin-bottom: 22px;
      position: relative; }
      .l-top .p-top_studies .p-top_sec_ttl .jp {
        margin-bottom: 6px; }
      .l-top .p-top_studies .p-top_sec_ttl .en img {
        width: 377px; }
    .l-top .p-top_studies .p-top_sec_inr {
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      position: relative; }
    .l-top .p-top_studies .p-top_block {
      position: relative;
      text-align: left;
      width: 475px; }
      .l-top .p-top_studies .p-top_block .p-top_block_ttl {
        font-size: 18px;
        line-height: 32px;
        margin-bottom: 51px;
        letter-spacing: 0.12em;
        padding-left: 1px; }
        .l-top .p-top_studies .p-top_block .p-top_block_ttl span {
          display: inline-block;
          line-height: 1.3em;
          position: relative;
          z-index: 2; }
          .l-top .p-top_studies .p-top_block .p-top_block_ttl span:before {
            background: #fdff7b;
            bottom: -3px;
            content: '';
            display: inline-block;
            height: 70%;
            left: 0;
            position: absolute;
            width: 0%;
            z-index: -1;
            -webkit-transition: width .3s .3s;
            transition: width .3s .3s; }
        .l-top .p-top_studies .p-top_block .p-top_block_ttl.motion span:before {
          width: 100%; }
      .l-top .p-top_studies .p-top_block.right {
        width: 476px; }
        .l-top .p-top_studies .p-top_block.right .p-top_studies_list li .inr {
          padding-left: 52px; }
        .l-top .p-top_studies .p-top_block.right .p-top_block_ttl {
          padding-left: 3px; }
    .l-top .p-top_studies .p-top_studies_l .p-top_studies_list li:nth-of-type(1):before {
      content: '';
      display: block;
      background: url(../images/top/studies_deco1.png) 0 0 no-repeat;
      background-size: 100% auto;
      position: absolute;
      z-index: -1;
      left: 219px;
      top: -15px;
      width: 105px;
      height: 133px;
      opacity: 0;
      -webkit-transition: .4s .5s;
      transition: .4s .5s;
      -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
              transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
    .l-top .p-top_studies .p-top_studies_l .p-top_studies_list li.motion:nth-of-type(1):before {
      opacity: 1;
      top: -95px; }
    .l-top .p-top_studies .p-top_studies_r .p-top_studies_list li:nth-of-type(2):before {
      content: '';
      display: block;
      background: url(../images/top/studies_deco2.png) 0 0 no-repeat;
      background-size: 100% auto;
      position: absolute;
      z-index: -1;
      right: 69px;
      bottom: -20px;
      width: 92px;
      height: 133px;
      opacity: 0;
      -webkit-transition: .4s .5s;
      transition: .4s .5s;
      -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
              transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
    .l-top .p-top_studies .p-top_studies_r .p-top_studies_list li.motion:nth-of-type(2):before {
      opacity: 1;
      bottom: -100px; }
    .l-top .p-top_studies .p-top_studies_list li.p-top_studies_list_non .non_images {
      background: url(../images/top/study_no.png) left top no-repeat;
      background-size: 100% auto;
      width: 475px;
      height: 468px; }
      .l-top .p-top_studies .p-top_studies_list li.p-top_studies_list_non .non_images p {
        font-weight: bold;
        letter-spacing: 0.04em;
        font-size: 16px;
        line-height: 23px;
        padding: 50px; }
    .l-top .p-top_studies .p-top_studies_list li a {
      background: url(../images/top/studies_bg.png) left top no-repeat;
      background-size: 100% auto;
      position: relative;
      color: #333333;
      display: block; }
      .l-top .p-top_studies .p-top_studies_list li a:hover .inr,
      .l-top .p-top_studies .p-top_studies_list li a:hover .label span {
        opacity: .5; }
    .l-top .p-top_studies .p-top_studies_list li:nth-of-type(n+2) {
      margin-top: 39px; }
    .l-top .p-top_studies .p-top_studies_list li .inr {
      display: -webkit-flex;
      display: -ms-flex;
      display: block;
      height: 218px;
      padding: 32px 0 35px 50px;
      -webkit-transition: opacity 0.4s;
      transition: opacity 0.4s;
      width: 477px; }
    .l-top .p-top_studies .p-top_studies_list li .ttl {
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end;
      border-bottom: 2px dotted #ced6da;
      display: -webkit-flex;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 16px;
      font-weight: bold;
      height: 60px;
      letter-spacing: 0.04em;
      line-height: 23px;
      margin-bottom: 9px;
      padding-bottom: 6px;
      width: 373px; }
    .l-top .p-top_studies .p-top_studies_list li dl {
      padding-left: 1px;
      width: 384px; }
      .l-top .p-top_studies .p-top_studies_list li dl dt {
        clear: both;
        float: left;
        letter-spacing: 0;
        line-height: 21px;
        position: relative;
        width: 64px; }
        .l-top .p-top_studies .p-top_studies_list li dl dt:after {
          content: ':';
          position: absolute;
          right: 10px;
          top: 0; }
      .l-top .p-top_studies .p-top_studies_list li dl dd {
        letter-spacing: 0.003em;
        line-height: 23px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap; }
    .l-top .p-top_studies .p-top_studies_list li .label {
      color: #54afda;
      background-color: #fff;
      border-radius: 10px;
      overflow: hidden;
      position: absolute;
      right: 31px;
      top: -12px;
      width: 100px; }
      .l-top .p-top_studies .p-top_studies_list li .label span {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        border: 2px solid #54afda;
        border-radius: 10px;
        display: block;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding-top: 1px;
        -webkit-transition: opacity 0.4s;
        transition: opacity 0.4s;
        width: 100px; }
      .l-top .p-top_studies .p-top_studies_list li .label.blue span {
        background: #54afda;
        color: #fff; }
      .l-top .p-top_studies .p-top_studies_list li .label.study span {
        background-color: #54afda;
        color: #fff; }
    .l-top .p-top_studies .p-top_btn_ribbon {
      margin-top: 39px;
      position: relative; }
  .l-top .p-top_news {
    overflow: hidden;
    position: relative; }
    .l-top .p-top_news:before {
      -webkit-transition: height 1.5s;
      transition: height 1.5s; }
    .l-top .p-top_news .p-top_dotted_box {
      -webkit-transform: translateY(50px);
          -ms-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
      -webkit-transition: .4s .5s;
      transition: .4s .5s; }
      .l-top .p-top_news .p-top_dotted_box li {
        -webkit-transition: opacity .3s ,-webkit-transform .3s;
        transition: opacity .3s ,-webkit-transform .3s;
        transition: opacity .3s ,transform .3s;
        transition: opacity .3s ,transform .3s ,-webkit-transform .3s;
        -webkit-transform: translateY(20px);
            -ms-transform: translateY(20px);
                transform: translateY(20px);
        opacity: 0; }
      .l-top .p-top_news .p-top_dotted_box li:nth-of-type(1) {
        -webkit-transition-delay: .8s;
                transition-delay: .8s; }
      .l-top .p-top_news .p-top_dotted_box li:nth-of-type(2) {
        -webkit-transition-delay: .9s;
                transition-delay: .9s; }
      .l-top .p-top_news .p-top_dotted_box li:nth-of-type(3) {
        -webkit-transition-delay: 1.0s;
                transition-delay: 1.0s; }
      .l-top .p-top_news .p-top_dotted_box li:nth-of-type(4) {
        -webkit-transition-delay: 1.1s;
                transition-delay: 1.1s; }
      .l-top .p-top_news .p-top_dotted_box li:nth-of-type(5) {
        -webkit-transition-delay: 1.2s;
                transition-delay: 1.2s; }
    .l-top .p-top_news.motion:before {
      height: 700px; }
    .l-top .p-top_news.motion .p-top_dotted_box {
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0);
      opacity: 1; }
      .l-top .p-top_news.motion .p-top_dotted_box li {
        opacity: 1;
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0); }
    .l-top .p-top_news:before {
      position: absolute;
      left: 0;
      bottom: 0;
      z-index: -1;
      content: "";
      display: block;
      background-color: #f7f7f7;
      width: 100%;
      height: 0px; }
    .l-top .p-top_news .p-top_sec_ttl {
      margin-bottom: 29px; }
      .l-top .p-top_news .p-top_sec_ttl .jp {
        letter-spacing: 0.03em;
        margin-bottom: 6px; }
      .l-top .p-top_news .p-top_sec_ttl .en img {
        width: 122px; }
    .l-top .p-top_news .p-top_dotted_box {
      background: url(../images/top/news_bg.png) left top no-repeat;
      background-size: 100% auto;
      margin: 0 auto 50px;
      padding: 56px 60px 5px;
      position: relative;
      width: 1057px; }
      .l-top .p-top_news .p-top_dotted_box:after {
        background: url(../images/top/news_bg_btm.png) left bottom no-repeat;
        background-size: 100% auto;
        content: '';
        bottom: -57px;
        display: block;
        height: 57px;
        left: 0;
        position: absolute;
        width: 100%; }
      .l-top .p-top_news .p-top_dotted_box ul li {
        font-weight: bold; }
        .l-top .p-top_news .p-top_dotted_box ul li:nth-of-type(n+2) {
          margin-top: 11px; }
      .l-top .p-top_news .p-top_dotted_box ul a {
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        color: #333;
        text-align: left;
        -webkit-transition: opacity .4s;
        transition: opacity .4s; }
        .l-top .p-top_news .p-top_dotted_box ul a .category {
          border-right: 1px solid #333;
          font-size: 13px;
          letter-spacing: 0.18em;
          padding: 8px 0 0 48px;
          position: relative;
          width: 312px; }
          .l-top .p-top_news .p-top_dotted_box ul a .category .date {
            font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
            font-weight: normal;
            letter-spacing: 0.07em;
            display: inline-block;
            width: 94px; }
        .l-top .p-top_news .p-top_dotted_box ul a .ttl {
          display: inline-block;
          font-size: 14px;
          margin-left: 24px;
          letter-spacing: 0.12em;
          padding: 3px 0;
          z-index: 2;
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;
          width: 600px; }
          .l-top .p-top_news .p-top_dotted_box ul a .ttl span {
            display: inline-block;
            position: relative; }
        .l-top .p-top_news .p-top_dotted_box ul a:hover {
          opacity: .7; }
        .l-top .p-top_news .p-top_dotted_box ul a.is-new .category:before {
          font-family: "Yu Gothic", YuGothic, "Noto Sans Japanese", sans-serif;
          font-weight: bold;
          color: #6a99f9;
          content: 'NEW';
          display: inline-block;
          font-size: 12px;
          left: -1px;
          letter-spacing: 0.08em;
          position: absolute;
          top: 9px; }
        .l-top .p-top_news .p-top_dotted_box ul a.is-new .ttl span {
          position: relative;
          display: inline-block; }
          .l-top .p-top_news .p-top_dotted_box ul a.is-new .ttl span:before {
            background: #fdff7b;
            bottom: -3px;
            content: '';
            display: inline-block;
            height: 80%;
            width: 101%;
            position: absolute;
            z-index: -1; }
    .l-top .p-top_news .p-top_btn_ribbon {
      margin-top: 40px; }
  .l-top .p-top_natural {
    padding-top: 81px;
    padding-bottom: 0; }
    .l-top .p-top_natural .p-top_sec_ttl {
      margin-bottom: 71px; }
      .l-top .p-top_natural .p-top_sec_ttl .jp {
        letter-spacing: 0.13em;
        margin-bottom: 7px; }
      .l-top .p-top_natural .p-top_sec_ttl .en img {
        width: 178px; }
    .l-top .p-top_natural .p-top_list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
      .l-top .p-top_natural .p-top_list figure {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        opacity: 0;
        -webkit-transition: opacity .6s , -webkit-transform .6s;
        transition: opacity .6s , -webkit-transform .6s;
        transition: opacity .6s , transform .6s;
        transition: opacity .6s , transform .6s , -webkit-transform .6s; }
      .l-top .p-top_natural .p-top_list .txt {
        -webkit-transform: translateX(100px);
            -ms-transform: translateX(100px);
                transform: translateX(100px);
        opacity: 0;
        -webkit-transition: opacity .6s , -webkit-transform .6s;
        transition: opacity .6s , -webkit-transform .6s;
        transition: opacity .6s , transform .6s;
        transition: opacity .6s , transform .6s , -webkit-transform .6s; }
        .l-top .p-top_natural .p-top_list .txt .txt1:before {
          -webkit-transition: width .6s;
          transition: width .6s;
          width: 0%; }
      .l-top .p-top_natural .p-top_list li:nth-of-type(1) figure {
        -webkit-transition-delay: .1s;
                transition-delay: .1s; }
      .l-top .p-top_natural .p-top_list li:nth-of-type(1) .txt {
        -webkit-transition-delay: .2s;
                transition-delay: .2s; }
        .l-top .p-top_natural .p-top_list li:nth-of-type(1) .txt .txt1:before {
          -webkit-transition-delay: .4s;
                  transition-delay: .4s; }
      .l-top .p-top_natural .p-top_list li:nth-of-type(2) figure {
        -webkit-transition-delay: 0.6s;
                transition-delay: 0.6s; }
      .l-top .p-top_natural .p-top_list li:nth-of-type(2) .txt {
        -webkit-transition-delay: 0.7s;
                transition-delay: 0.7s; }
        .l-top .p-top_natural .p-top_list li:nth-of-type(2) .txt .txt1:before {
          -webkit-transition-delay: 0.9s;
                  transition-delay: 0.9s; }
      .l-top .p-top_natural .p-top_list.motion figure {
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
        opacity: 1; }
      .l-top .p-top_natural .p-top_list.motion .txt {
        -webkit-transform: translateX(0px);
            -ms-transform: translateX(0px);
                transform: translateX(0px);
        opacity: 1; }
        .l-top .p-top_natural .p-top_list.motion .txt .txt1:before {
          width: 100%; }
      .l-top .p-top_natural .p-top_list li {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        display: -webkit-flex;
        display: -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        text-align: left;
        width: 514px; }
        .l-top .p-top_natural .p-top_list li:nth-of-type(n+2) {
          margin-left: 38px;
          width: 514px; }
      .l-top .p-top_natural .p-top_list figure {
        -webkit-flex-basis: 259px;
            -ms-flex-preferred-size: 259px;
                flex-basis: 259px; }
        .l-top .p-top_natural .p-top_list figure img {
          width: 259px; }
      .l-top .p-top_natural .p-top_list .txt {
        color: #1e1b14;
        padding: 50px 5px 0 30px;
        width: 259px; }
        .l-top .p-top_natural .p-top_list .txt .txt1 {
          display: inline-block;
          font-size: 18px;
          font-weight: bold;
          letter-spacing: 0.04em;
          margin-bottom: 20px;
          position: relative; }
          .l-top .p-top_natural .p-top_list .txt .txt1:before {
            background: #fdff7b;
            bottom: 0;
            content: '';
            display: inline-block;
            height: 70%;
            left: 0;
            position: absolute;
            z-index: -1; }
        .l-top .p-top_natural .p-top_list .txt .txt2 {
          letter-spacing: 0.08em;
          line-height: 24px; }
    .l-top .p-top_natural .p-top_btn_ribbon {
      margin-top: 39px; }
    .l-top .p-top_natural .img_list {
      background-image: url(../images/top/natural_dashed.png), url(../images/top/natural_dashed.png);
      background-repeat: repeat-x;
      background-position: center top, center bottom;
      background-size: 8px auto;
      height: 323px;
      padding: 10px 0;
      margin-top: 80px; }
      .l-top .p-top_natural .img_list:before {
        background: url(../images/top/natural_bg.jpg) center top repeat-x;
        background-size: auto 100%;
        -webkit-animation: bgMove1 80s infinite linear;
                animation: bgMove1 80s infinite linear;
        content: '';
        display: block;
        height: 300px;
        width: 100%; }
  .l-top .p-top_about {
    background-color: #feffca;
    padding-top: 77px; }
    .l-top .p-top_about .p-top_sec_ttl {
      margin-bottom: 45px; }
      .l-top .p-top_about .p-top_sec_ttl .jp {
        margin-bottom: 3px; }
      .l-top .p-top_about .p-top_sec_ttl .en img {
        width: 140px; }
    .l-top .p-top_about .p-top_box {
      background: #fff url(../images/top/about_bg.png) top right repeat-x;
      background-size: 45px 100%;
      -webkit-animation: bgMove2 1.5s infinite linear;
              animation: bgMove2 1.5s infinite linear;
      height: 333px;
      padding: 39px 0 60px;
      position: relative; }
      .l-top .p-top_about .p-top_box:before {
        background: url(../images/top/about_deco1.png) left top no-repeat;
        background-size: 100% auto;
        content: '';
        display: block;
        left: 50%;
        margin-left: -470px;
        height: 136px;
        position: absolute;
        top: 142px;
        width: 150px; }
      .l-top .p-top_about .p-top_box:after {
        background: url(../images/top/about_deco2.png) left top no-repeat;
        background-size: 100% auto;
        content: '';
        display: block;
        height: 131px;
        left: 50%;
        margin-left: 308px;
        position: absolute;
        top: 62px;
        width: 169px; }
      .l-top .p-top_about .p-top_box .ttl {
        margin-bottom: 14px;
        margin-left: -5px;
        text-align: center; }
        .l-top .p-top_about .p-top_box .ttl img {
          margin-bottom: -1px;
          -webkit-transform: scale(0.5, 0.5);
              -ms-transform: scale(0.5, 0.5);
                  transform: scale(0.5, 0.5); }
      .l-top .p-top_about .p-top_box .txt {
        letter-spacing: 0.14em;
        line-height: 32px; }
    .l-top .p-top_about .p-top_btn_ribbon {
      margin-top: 41px; }

@-webkit-keyframes bgMove1 {
  from {
    background-position: 0 0; }
  to {
    background-position: -1558px 0; } }

@keyframes bgMove1 {
  from {
    background-position: 0 0; }
  to {
    background-position: -1558px 0; } }

@-webkit-keyframes bgMove2 {
  from {
    background-position: 0 0; }
  to {
    background-position: -45px 0; } }

@keyframes bgMove2 {
  from {
    background-position: 0 0; }
  to {
    background-position: -45px 0; } }

.c-bread {
  background-color: #cbf2f4;
  min-width: 1160px;
  padding: 9px 0;
  width: 100%; }
  .c-bread ol {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 0 52px;
    width: 1160px; }
    .c-bread ol li {
      font-size: 12px; }
      .c-bread ol li a {
        color: #54afda;
        text-decoration: underline; }
        .c-bread ol li a:hover {
          text-decoration: none; }
      .c-bread ol li:nth-of-type(n+2):before {
        content: '＞';
        margin: 0 5px;
        line-height: 1.15; }

/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.bx-wrapper img {
  max-width: 100%;
  display: block; }

.bxslider {
  margin: 0;
  padding: 0; }

ul.bxslider {
  list-style: none; }

.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0); }

/** THEME
===================================*/
.bx-wrapper {
  background: #fff; }

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  width: 100%; }

/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url("../images/common/bx_loader.gif") center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000; }

/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  margin-top: -30px; }

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #ced6da;
  text-indent: -9999px;
  display: block;
  width: 12px;
  height: 12px;
  margin: 0 6px;
  outline: 0;
  border-radius: 6px;
  -webkit-transition: all .4s;
  transition: all .4s; }

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #54afda; }

.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline; }

.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0; }

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url("../images/common/controls.png") no-repeat 0 -32px; }

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0; }

.bx-wrapper .bx-next {
  right: 10px;
  background: url("../images/common/controls.png") no-repeat -43px -32px; }

.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px 0; }

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999; }

.bx-wrapper .bx-controls-direction a.disabled {
  display: none; }

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center; }

.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url("../images/common/controls.png") -86px -11px no-repeat;
  margin: 0 3px; }

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0; }

.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url("../images/common/controls.png") -86px -44px no-repeat;
  margin: 0 3px; }

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px; }

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%; }

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px; }

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%; }

.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px; }

.c-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.c-form .error {
  color: #ff0000;
  font-size: 1.4rem;
  margin-top: 10px;
  display: block;
  width: 100%; }

.c-form .c-form_wrap {
  margin-bottom: 70px;
  position: relative; }
  .c-form .c-form_wrap:after {
    position: absolute;
    bottom: -5px;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: url(../images/common/dotted.png) repeat-x top center; }

.c-form-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 6px; }
  .c-form-group:after {
    position: absolute;
    top: -4px;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: url(../images/common/dotted.png) repeat-x top center; }
  .c-form-group.required .c-form-label:before {
    content: "※ ";
    color: #ff0000; }

.c-form-group--txtarea {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.c-form.is-input .for-confirm {
  display: none; }

.c-form.is-confirm .btn-wrap {
  width: 55%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: auto; }

.c-form.is-confirm .c-form-label:before {
  content: ""; }

.c-form.is-confirm .c-form-label {
  padding: 10px 30px 10px 30px; }

.c-form.is-confirm .c-form-input {
  padding: 10px 30px 10px 30px; }

.c-form.is-confirm .for-input {
  display: none; }

.c-form.is-confirm .c-form_wrap {
  position: relative; }
  .c-form.is-confirm .c-form_wrap:before {
    position: absolute;
    top: -5px;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: url(../images/common/dotted.png) repeat-x top center; }
  .c-form.is-confirm .c-form_wrap:after {
    position: absolute;
    bottom: -5px;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: url(../images/common/dotted.png) repeat-x top center; }

.c-form.is-confirm .c-form-group {
  margin-bottom: 0px; }
  .c-form.is-confirm .c-form-group:after {
    background: none;
    top: 0;
    left: 0; }

.c-form-label {
  width: 300px;
  height: auto;
  background-color: #fafafa;
  padding: 19px 20px;
  padding-right: 40px;
  text-align: right; }

.c-form-input {
  width: 750px;
  height: auto;
  background-color: #ffffff;
  padding: 8px 0;
  padding-left: 46px; }
  .c-form-input .horizontal-item {
    display: inline-block; }
  .c-form-input input[type="text"],
  .c-form-input input[type="email"] {
    width: 100%;
    border: 1px solid #b5b5b5;
    border-radius: 8px;
    padding: 10px 20px; }
  .c-form-input textarea {
    width: 710px;
    height: 240px;
    border: 1px solid #b5b5b5;
    border-radius: 8px;
    padding: 10px 20px; }
  .c-form-input .select-field {
    overflow: hidden;
    display: inline-block;
    position: relative;
    padding: 10px 20px;
    border-radius: 10px;
    border: 1px solid #ccc;
    background-color: white; }
    .c-form-input .select-field select {
      min-width: 180px;
      padding: 0.6em 2.4em 0.6em 0.6em;
      font-size: 1rem;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      /* border-radius: 0; */
      border: 0;
      margin: 0;
      padding: 0;
      background: none transparent;
      vertical-align: middle;
      font-size: inherit;
      color: inherit;
      -webkit-box-sizing: content-box;
              box-sizing: content-box;
      position: relative; }
      .c-form-input .select-field select option {
        padding: 10px 0; }
    .c-form-input .select-field:after {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      width: 1.8em;
      display: block;
      content: "";
      background: url(../images/common/icon-select.png) center no-repeat;
      pointer-events: none; }
  .c-form-input.radio .mwform-radio-field + .mwform-radio-field {
    margin-left: 38px; }
  .c-form-input.radio input[type="radio"] {
    display: none; }
    .c-form-input.radio input[type="radio"]:checked + .mwform-radio-field-text {
      color: #333; }
      .c-form-input.radio input[type="radio"]:checked + .mwform-radio-field-text::before {
        font-size: 1.6rem;
        background: #fff !important;
        border-color: #ccc !important;
        color: #ccc !important; }
      .c-form-input.radio input[type="radio"]:checked + .mwform-radio-field-text::after {
        border: 1px solid #ccc;
        background: #ccc; }
  .c-form-input.radio .mwform-radio-field-text {
    display: block;
    cursor: pointer;
    position: relative;
    /*通常時の見た目*/
    /*hover時の見た目*/ }
    .c-form-input.radio .mwform-radio-field-text::before {
      width: 18px;
      height: 18px;
      line-height: 16px;
      font-size: 8px;
      display: inline-block;
      vertical-align: middle;
      text-align: center;
      content: "";
      color: transparent;
      padding: 0;
      border-radius: 50%;
      border: 1px solid #ccc;
      background: #fff;
      margin: -2px 5px 0 0;
      -webkit-transition: .1s;
      transition: .1s;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    .c-form-input.radio .mwform-radio-field-text:after {
      position: absolute;
      top: 5px;
      left: 4px;
      width: 10px;
      height: 10px;
      line-height: 16px;
      font-size: 8px;
      display: inline-block;
      vertical-align: middle;
      text-align: center;
      content: "";
      color: transparent;
      padding: 0;
      border-radius: 50%;
      border: 0px solid #ccc;
      background: transparent;
      margin: -2px 5px 0 0;
      -webkit-transition: .1s;
      transition: .1s;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    .c-form-input.radio .mwform-radio-field-text:hover {
      color: #808080; }
      .c-form-input.radio .mwform-radio-field-text:hover::before {
        background-color: #aaa; }
  .c-form-input.checkbox .mwform-checkbox-field + .mwform-checkbox-field {
    margin-left: 52px; }
  .c-form-input.checkbox input[type="checkbox"] {
    display: none; }
    .c-form-input.checkbox input[type="checkbox"]:checked + .mwform-checkbox-field-text {
      color: #333; }
      .c-form-input.checkbox input[type="checkbox"]:checked + .mwform-checkbox-field-text::before {
        font-size: 1.6rem;
        background: #fff !important;
        border-color: #888 !important;
        color: #888 !important; }
  .c-form-input.checkbox .mwform-checkbox-field-text {
    display: block;
    cursor: pointer;
    /*通常時の見た目*/
    /*hover時の見た目*/ }
    .c-form-input.checkbox .mwform-checkbox-field-text::before {
      width: 18px;
      height: 18px;
      line-height: 16px;
      font-size: 8px;
      display: inline-block;
      vertical-align: middle;
      text-align: center;
      content: "\2713";
      color: transparent;
      padding: 0;
      border-radius: 2px;
      border: 1px solid #ccc;
      background: #fff;
      margin: -2px 5px 0 0;
      -webkit-transition: .1s;
      transition: .1s;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    .c-form-input.checkbox .mwform-checkbox-field-text:hover {
      color: #808080; }
      .c-form-input.checkbox .mwform-checkbox-field-text:hover::before {
        background-color: #aaa; }

.c-form .btn-wrap {
  margi: 30px; }

.c-form .btn.btn-submit, .c-form .btn.btn-rewrite {
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 260px;
  height: 42px;
  font-size: 16px;
  color: #ffffff;
  background: url(../images/common/btn2.png) no-repeat center center;
  background-size: 260px 42px;
  -webkit-transition: background-image .4s,color .4s;
  transition: background-image .4s,color .4s; }
  .c-form .btn.btn-submit:hover, .c-form .btn.btn-rewrite:hover {
    background-image: url(../images/common/btn2_ov.png);
    color: #4e8fd8; }

.c-form .btn.pull-right {
  margin-left: auto; }

.c-form .input-size--long {
  width: 473px; }

.c-form .input-size--short {
  width: 388px; }

.c-google-maps {
  position: relative;
  padding-bottom: 75%;
  height: 0;
  overflow: hidden; }

.c-google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }

.c-interview_list {
  margin-top: 40px; }
  .c-interview_list.interview_list_more {
    margin-top: 5px;
    display: none; }
  .c-interview_list li {
    background: #fff;
    border-radius: 10px;
    position: relative; }
    .c-interview_list li:nth-of-type(n+2) {
      margin-top: 5px; }
    .c-interview_list li a {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      border-radius: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 146px;
      padding-left: 195px;
      padding-right: 190px; }
    .c-interview_list li.is-interview a {
      background-color: #cbf2f4;
      background-image: url(/common/images/kids/i_lecture.png);
      background-position: 68px center;
      background-repeat: no-repeat;
      background-size: 88px 88px; }
    .c-interview_list li.is-lecture a {
      background-color: #cbf2f4;
      background-image: url(/common/images/kids/i_interview.png);
      background-position: 68px center;
      background-repeat: no-repeat;
      background-size: 88px 88px; }
    .c-interview_list li .ttl1 {
      font-size: 18px;
      margin-bottom: 16px; }
    .c-interview_list li .category {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      background: url(/common/images/kids/tag.png) left top no-repeat;
      background-size: 100% 100%;
      bottom: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      font-size: 13px;
      height: 30px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: absolute;
      right: 30px;
      width: 115px; }

.js-iv_up {
  -webkit-transition: opacity,-webkit-transform;
  transition: opacity,-webkit-transform;
  transition: transform,opacity;
  transition: transform,opacity,-webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  opacity: 0;
  -webkit-transform: translateY(50px);
      -ms-transform: translateY(50px);
          transform: translateY(50px); }
  .js-iv_up.motion {
    opacity: 1;
    -webkit-transform: translateY(0px);
        -ms-transform: translateY(0px);
            transform: translateY(0px); }

.c-link {
  text-decoration: underline; }
  .c-link:hover {
    text-decoration: none; }

.is-loading {
  overflow: hidden;
  height: 100vh; }

.c-loading {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100001;
  background: #cbf2f4 url(../images/common/loading.gif) no-repeat center center; }

/**
 * Swiper 3.4.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 *
 * http://www.idangero.us/swiper/
 *
 * Copyright 2017, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 *
 * Licensed under MIT
 *
 * Released on: March 10, 2017
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 0; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  -ms-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-transition-property: -webkit-transform, height;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 33px;
  height: 33px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 33px 33px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url(/common/images/common/btn-slider-arrow.png);
  left: 130px;
  top: 287px;
  right: auto;
  -webkit-transition: background-image .3s;
  transition: background-image .3s; }
  .swiper-button-prev:hover,
  .swiper-container-rtl .swiper-button-next:hover {
    background-image: url(/common/images/common/btn-slider-arrow_ov.png); }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url(/common/images/common/btn-slider-arrow.png);
  right: 130px;
  top: 286px;
  left: auto;
  -webkit-transition: background-image .3s;
  transition: background-image .3s; }
  .swiper-button-next:hover,
  .swiper-container-rtl .swiper-button-prev:hover {
    background-image: url(/common/images/common/btn-slider-arrow_ov.png); }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 15px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #54afda; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  -ms-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 5px 0;
  display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px; }

/* Progress */
.swiper-pagination-progress {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progress .swiper-pagination-progressbar {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progress {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progress.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }

.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
  background: #fff; }

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  -o-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper,
.swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube,
.swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide,
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide,
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-flip .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
      transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

/**
* wordpress
* WYSIWYG compatchble style
*/
.c-wp-post {
  padding-top: 50px; }
  .c-wp-post_title {
    font-weight: bold;
    font-size: 2.6rem; }
  .c-wp-post_date {
    font-weight: normal;
    font-size: 1.4rem;
    text-align: right; }
  .c-wp-post_article p {
    line-height: 2.4rem;
    margin: 1.6rem 0; }
  .c-wp-post_article strong {
    font-weight: bold; }
  .c-wp-post_article em {
    font-style: italic; }
  .c-wp-post_article ul {
    margin-left: 1em;
    display: block;
    list-style-type: disc !important;
    margin-before: 1em;
    margin-after: 1em;
    margin-start: 0px;
    margin-end: 0px;
    padding-start: 40px; }
  .c-wp-post_article ol {
    display: block;
    list-style-type: decimal !important;
    margin-before: 1em;
    margin-after: 1em;
    margin-start: 0px;
    margin-end: 0px;
    padding-start: 40px; }
  .c-wp-post_article li {
    display: list-item;
    text-align: match-parent; }
  .c-wp-post_article img {
    width: auto; }
  .c-wp-post_article .alignleft {
    display: inline;
    float: left; }
  .c-wp-post_article .alignright {
    display: inline;
    float: right; }
  .c-wp-post_article .aligncenter {
    display: block;
    margin-right: auto;
    margin-left: auto; }
  .c-wp-post_article blockquote.alignleft,
  .c-wp-post_article .wp-caption.alignleft,
  .c-wp-post_article img.alignleft {
    margin: 0.4em 1.6em 1.6em 0; }
  .c-wp-post_article blockquote.alignright,
  .c-wp-post_article .wp-caption.alignright,
  .c-wp-post_article img.alignright {
    margin: 0.4em 0 1.6em 1.6em; }
  .c-wp-post_article blockquote.aligncenter,
  .c-wp-post_article .wp-caption.aligncenter,
  .c-wp-post_article img.aligncenter {
    clear: both;
    margin-top: 0.4em;
    margin-bottom: 1.6em; }
  .c-wp-post_article .wp-caption.alignleft,
  .c-wp-post_article .wp-caption.alignright,
  .c-wp-post_article .wp-caption.aligncenter {
    margin-bottom: 1.2em; }

/**
 * clearfix micro
 */
.clearfix:after {
  content: "";
  clear: both;
  display: block; }

/**
 * text ellipsis., text...
 */
.text-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.u-hide {
  display: none; }

.u-click {
  cursor: pointer; }

.for-large {
  display: initial; }

.for-mobile {
  display: none; }

/**
 * BrowserSync
 */
#__bs_notify__ {
  display: none !important;
  font-size: 8px !important;
  opacity: .25;
  max-height: 50px; }

.__debug_mihon__ {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto 0 auto;
  z-index: 100000;
  pointer-events: none;
  cursor: none;
  width: 100%;
  overflow: hidden;
  text-align: center;
  -webkit-animation: __debug_mihon__ 1s infinite;
          animation: __debug_mihon__ 1s infinite; }

.__debug_mihon__ {
  padding-top: 0px;
  margin-top: 0; }

@-webkit-keyframes __debug_mihon__ {
  0% {
    opacity: 0; }
  60% {
    opacity: .5; }
  100% {
    opacity: .5; } }

/*
@example
 <div class="mihon">
  <img src="./images/sample1.png" alt="" class="type_pc">
  <img src="./images/sample2.png" alt="" class="type_sp">
</div>
*/

@media screen and (max-width: 767px) {
  .for-large {
    display: none; }
  .for-mobile {
    display: block;
    display: initial; } }

/*# sourceMappingURL=../../cache/_maps/styles.css.map */
