@charset "UTF-8";
/*
  次の要素のフォントサイズ、line-height分を差し引いたマージンを求める
 */
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */ }

*,
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
  box-sizing: inherit; }

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit; }

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0; }

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

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */ }

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block; }

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

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */ }

[hidden],
template {
  display: none;
  /* Add the correct display in IE */ }

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */ }

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

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */ }

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */ }

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */ }

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000; }

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0; }

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer; }

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default; }

[type="number"] {
  width: auto;
  /* Firefox 36+ */ }

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */ }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */ }

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */ }

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */ }

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */ }

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

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */ }

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */ }

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit; }

/* Style select like a standard input */
select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */ }

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */ }

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */ }

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

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

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */ }

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline; }

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */ }

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */ }

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress; }

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer; }

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default; }

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none; }

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none; }

/* # =================================================================
   # Base
   # ================================================================= */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

*:focus {
  outline: none; }

html {
  position: relative;
  min-height: 100%;
  font-size: 62.5%;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  visibility: hidden; }

html.wf-active {
  visibility: visible; }

body {
  font-family: noto-sans-cjk-jp, sans-serif;
  -webkit-font-smoothing: antialiased;
  word-wrap: break-word;
  width: 100%; }

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  overflow: unset; }

body.page-hide {
  display: none; }

section {
  margin: auto;
  overflow: hidden; }

.loaded {
  display: block; }

ul {
  list-style: none; }

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

a {
  tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  a img {
    -webkit-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }

.dh-is-active a {
  color: #bebebe !important; }

p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 27px;
  letter-spacing: 0.98px;
  font-weight: 400; }

*:focus {
  outline: none; }

svg {
  max-width: 100%; }

sub,
sup {
  font-size: 80%;
  padding-left: 3px;
  top: -0.4em; }

/* # =================================================================
   # レイアウト
   # ================================================================= */
.l-container {
  width: 100%; }

.l-inner {
  position: relative;
  width: 87.5%;
  margin: auto; }

/* # =================================================================
   # l-footer common
   # ================================================================= */
.l-footer {
  background: #000000;
  padding: 50px 0 50px; }
  .l-footer p {
    color: #ffffff;
    font-size: 10px;
    font-size: 1rem;
    line-height: 17px;
    letter-spacing: 0.5px;
    text-align: left; }

.l-footer__links {
  width: 256px;
  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: 0 auto 30px; }

.l-footer__item {
  width: 110px; }
  .l-footer__item:first-child {
    padding-top: 5px; }

/* # =================================================================
   # header
   # ================================================================= */
.l-header {
  position: fixed;
  top: 0;
  width: 100%;
  background: white;
  z-index: 9000; }

.l-header__inner {
  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;
  width: 87.5%;
  height: 50px;
  margin: auto; }

.l-header__logo {
  position: relative;
  width: 50px;
  z-index: 9000; }
  .l-header__logo img {
    width: 100%; }

.l-header__hamburger {
  position: relative;
  width: 24px;
  height: 16px;
  z-index: 9000; }

.l-header__nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 8000;
  padding: 70px 0 100px 6.25%;
  -webkit-transform: translateY(-100vh);
  -ms-transform: translateY(-100vh);
  transform: translateY(-100vh);
  opacity: 0;
  background: rgba(255, 255, 255, 0.9);
  overflow-y: scroll; }
  .l-header__nav.active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1; }

.home.top-header .l-header {
  background: rgba(0, 0, 0, 0.3); }

.single-post .l-header,
.blog .l-header {
  background: rgba(0, 0, 0, 0.3); }

.c-btnOpen {
  display: inline-block;
  width: 10px;
  height: 2px;
  background-color: #707070; }
  .c-btnOpen:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #707070;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: -webkit-transform 500ms ease-out;
    transition: -webkit-transform 500ms ease-out;
    transition: transform 500ms ease-out;
    transition: transform 500ms ease-out, -webkit-transform 500ms ease-out; }

.c-btn {
  position: relative;
  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: 280px;
  height: 60px;
  margin: auto;
  border-radius: 30px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0.75px;
  font-weight: 700;
  background: #FF0043;
  color: #ffffff;
  padding: 0 47px;
  text-decoration: none; }
  .c-btn:before {
    position: absolute;
    top: 50%;
    left: 24px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 12.1px;
    border-color: transparent transparent transparent #ffffff; }

.c-btn--blk {
  background-color: #000000;
  border: solid 1px #000000; }
  .c-btn--blk:hover {
    background-color: #fff;
    border: solid 1px #000000;
    color: #000; }
    .c-btn--blk:hover:before {
      border-color: transparent transparent transparent #000000; }

.c-linkBtn:hover {
  -webkit-transition: opacity 0s !important;
  transition: opacity 0s !important;
  opacity: .5 !important; }

.c-eventHeading {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1em;
  letter-spacing: 1.8px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  text-align: center;
  margin-bottom: 55px; }
  .c-eventHeading span {
    position: relative;
    display: block;
    text-align: center;
    margin-top: 24px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1em;
    letter-spacing: 1.8px; }
    .c-eventHeading span:before {
      position: absolute;
      top: -18px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      content: '';
      width: 100px;
      border-top: solid 4px #00A1FF; }

.c-hamburger,
.c-hamburger span {
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer; }

.c-hamburger {
  position: relative;
  width: 100%;
  height: 100%; }

.c-hamburger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000000;
  border-radius: 0; }

.c-hamburger span:nth-of-type(1) {
  top: 0; }

.c-hamburger span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.c-hamburger span:nth-of-type(3) {
  bottom: 0; }

.c-hamburger span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background-color: #000000;
  -webkit-transition: all .4s;
  transition: all .4s; }

.c-hamburger.active span:nth-of-type(1) {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0); }

.c-hamburger.active span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.c-hamburger.active span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.c-hamburger.active span:nth-of-type(3) {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0); }

.home.top-header .c-hamburger span,
.home.top-header .c-hamburger span:nth-of-type(2)::after {
  background-color: #ffffff; }

.home.nav-open .c-hamburger span,
.home.nav-open .c-hamburger span:nth-of-type(2)::after {
  background-color: #000000; }

.c-image {
  width: 100%; }

/**
  ex.
  <div class="p-wrap">
    <figure class="c-imageFit"><img src="assets/img/dummy2.jpg" alt=""></figure>
  </div>

  .p-wrap > .c-imageFit{
    padding-top:75%;
  }
 */
.c-imageFit {
  position: relative;
  width: 100%; }
  .c-imageFit img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }

.c-label {
  display: block;
  text-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 22px;
  letter-spacing: 2.4px;
  font-weight: 700;
  width: 100%;
  max-width: 100%;
  padding: 2px 5px; }

.anime-fadeInUp,
.anime-fadeInUpLoaded {
  -webkit-transition: all .8s ease-out;
  transition: all .8s ease-out;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0; }

.scroll-in.anime-fadeInUp,
.scroll-in .anime-fadeInUp {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1; }

.loaded .anime-fadeInUpLoaded {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1; }

.scroll-in.anime-fadeInUp.disable,
.scroll-in .anime-fadeInUp.disable {
  opacity: .4; }

.anime-fadeIn {
  -webkit-transition: all 2s ease-out;
  transition: all 2s ease-out;
  opacity: 0; }

.scroll-in.anime-fadeIn {
  opacity: 1; }

.anime-fadeInDown {
  opacity: 0;
  -webkit-transition: all 1.4s ease-out;
  transition: all 1.4s ease-out;
  -webkit-transform: translate3d(0, -20px, 0);
  transform: translate3d(0, -20px, 0); }

.anime-zoomin {
  opacity: 0;
  -webkit-transition: all .8s ease-out;
  transition: all .8s ease-out;
  -webkit-transform: scale3d(2, 2, 2) translate(-10px, -10px);
  transform: scale3d(2, 2, 2) translate(-10px, -10px); }

.scroll-in.anime-zoomin {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1) translate(0, 0);
  transform: scale3d(1, 1, 1) translate(0, 0); }

.scroll-in.anime-fadeInDown {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.anime-fadeInLeft {
  -webkit-transition: all .8s ease-out;
  transition: all .8s ease-out;
  -webkit-transform: translateX(-30px);
  -ms-transform: translateX(-30px);
  transform: translateX(-30px);
  opacity: 0; }

.scroll-in.anime-fadeInLeft {
  -webkit-transform: translateX(0px);
  -ms-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1; }

.anime-fadeInLeft-works {
  -webkit-transition: all 1.5s ease-out;
  transition: all 1.5s ease-out;
  -webkit-transform: translateX(-30px) skewY(15.5deg);
  -ms-transform: translateX(-30px) skewY(15.5deg);
  transform: translateX(-30px) skewY(15.5deg);
  opacity: 0; }

.scroll-in.anime-fadeInLeft-works {
  -webkit-transform: translateX(0) skewY(15.5deg);
  -ms-transform: translateX(0) skewY(15.5deg);
  transform: translateX(0) skewY(15.5deg);
  opacity: 1; }

.anime-imgUp {
  position: relative;
  width: 100%;
  padding-top: 75%;
  overflow: hidden; }
  .anime-imgUp:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 200%;
    z-index: 100;
    background-color: #F9F9F9;
    -webkit-transform: skewX(45deg) translateX(0px);
    -ms-transform: skewX(45deg) translateX(0px);
    transform: skewX(45deg) translateX(0px); }
  .anime-imgUp img {
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

.scroll-in .anime-imgUp:before,
.scroll-in.anime-imgUp:before {
  -webkit-transform: skewX(45deg) translateX(1000px);
  -ms-transform: skewX(45deg) translateX(1000px);
  transform: skewX(45deg) translateX(1000px);
  -webkit-animation: imgAnime 2s linear;
  animation: imgAnime 2s linear; }

.scroll-in .anime-imgUp img,
.scroll-in.anime-imgUp img {
  opacity: 1; }

@-webkit-keyframes imgAnime {
  0% {
    -webkit-transform: skewX(45deg) translateX(0px);
    transform: skewX(45deg) translateX(0px); }
  40% {
    -webkit-transform: skewX(45deg) translateX(30px);
    transform: skewX(45deg) translateX(30px); }
  100% {
    -webkit-transform: skewX(45deg) translateX(1000px);
    transform: skewX(45deg) translateX(1000px); } }

@keyframes imgAnime {
  0% {
    -webkit-transform: skewX(45deg) translateX(0px);
    transform: skewX(45deg) translateX(0px); }
  40% {
    -webkit-transform: skewX(45deg) translateX(30px);
    transform: skewX(45deg) translateX(30px); }
  100% {
    -webkit-transform: skewX(45deg) translateX(1000px);
    transform: skewX(45deg) translateX(1000px); } }

.anime-imgUp2 {
  padding-top: 100%; }
  .anime-imgUp2:before {
    background-color: rgba(255, 255, 255, 0.4); }
  .anime-imgUp2 img {
    -webkit-transition: all 4s ease-out;
    transition: all 4s ease-out;
    opacity: 0; }

.anime-imgUp3 {
  padding-top: 66%; }
  .anime-imgUp3:before {
    background-color: rgba(255, 255, 255, 0.4); }
  .anime-imgUp3 img {
    -webkit-transition: all 4s ease-out;
    transition: all 4s ease-out;
    opacity: 0; }

.anime-imgUp4 {
  padding-top: 100%; }
  .anime-imgUp4:before {
    background-color: rgba(255, 255, 255, 0.4); }
  .anime-imgUp4 img {
    -webkit-transition: all 4s ease-out;
    transition: all 4s ease-out;
    opacity: 0; }

.anime-type1 {
  display: inline-block;
  -webkit-transition: all 4s;
  transition: all 4s;
  opacity: 0;
  opacity: 0; }

.anime-type2 {
  display: inline-block;
  -webkit-transition: all 4s;
  transition: all 4s;
  opacity: 0; }

.anime-type3 {
  display: inline-block;
  -webkit-transition: all 4s;
  transition: all 4s;
  opacity: 0; }

.anime-type4 {
  display: inline-block;
  -webkit-transition: all 4s;
  transition: all 4s;
  opacity: 0; }

.scroll-in .anime-type1,
.scroll-in .anime-type2,
.scroll-in .anime-type3,
.scroll-in .anime-type4 {
  opacity: 1; }

.anime-badge {
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
  width: 0; }

.scroll-in.anime-badge {
  width: 140px; }

.anime-bounceIn {
  opacity: 0; }

.scroll-in.anime-bounceIn {
  opacity: 1;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.3, 1.3, 1.3);
    transform: scale3d(1.3, 1.3, 1.3); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.3, 1.3, 1.3);
    transform: scale3d(1.3, 1.3, 1.3); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.animate__bounceIn {
  -webkit-animation-duration: calc(1.5s * 0.75);
  animation-duration: calc(1.5s * 0.75);
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

.js-type .yellow-line {
  opacity: 0;
  -webkit-transition: all 800ms ease-in;
  transition: all 800ms ease-in; }
  .js-type .yellow-line.active {
    opacity: 1; }

.js-type .yellow-line-main {
  opacity: 0;
  -webkit-transform: translate3d(800px, -120px, 0);
  transform: translate3d(800px, -120px, 0);
  -webkit-transition: all 800ms ease-in;
  transition: all 800ms ease-in; }
  .js-type .yellow-line-main.active {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

.p-about {
  background: #D6E3FF;
  padding: 45px 0 35px 0; }

.p-about__inner {
  position: relative;
  background: #ffffff;
  padding: 93px 7% 56px; }

.p-about__content {
  width: 100%;
  position: relative;
  margin-bottom: 37px; }

.p-about__content2 {
  margin-bottom: 10px; }

.p-about__heading {
  position: absolute;
  top: -23px;
  left: -5px;
  width: 166px; }

.p-about__title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  letter-spacing: 0;
  font-weight: 700;
  color: #2E3180;
  margin-bottom: 13px; }

.p-about__text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 27px;
  letter-spacing: 0;
  margin-bottom: 2em;
  font-weight: 400; }
  .p-about__text:last-child {
    margin-bottom: 0; }

.p-about__figure1 {
  width: 120%;
  position: relative;
  left: -8%;
  margin: 42px 0 0 0; }

.p-about__figure2 {
  width: 132%;
  position: relative;
  left: -16%;
  margin: -9px 0 0 0; }

.p-about__invitation--title {
  position: relative;
  text-align: center;
  margin-bottom: 35px; }
  .p-about__invitation--title:before {
    position: absolute;
    top: 6px;
    left: -8px;
    content: '';
    width: 140px;
    border-top: solid 1px #231815;
    -webkit-transform: rotate(75deg) translate3d(0, 0, 0);
    transform: rotate(75deg) translate3d(0, 0, 0);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left; }
  .p-about__invitation--title:after {
    position: absolute;
    top: 6px;
    right: -8px;
    content: '';
    width: 140px;
    border-top: solid 1px #231815;
    -webkit-transform: rotate(-75deg) translate3d(0, 0, 0);
    transform: rotate(-75deg) translate3d(0, 0, 0);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right; }

.p-about__invitation {
  position: relative;
  width: 110%;
  left: -5%;
  margin-bottom: 28px; }

.p-about__message {
  text-align: center;
  margin-bottom: 5px; }

.p-about__copy {
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 32px;
  letter-spacing: 1.05px;
  font-weight: 700;
  text-align: center;
  color: #172A80;
  margin-bottom: 25px; }

.p-about__figure {
  position: relative;
  width: 106%;
  left: -3%; }

.p-aboutHeader {
  background: #000 url("../img/about/main_bg_sp.jpg") no-repeat center center;
  background-size: cover;
  height: 266px;
  margin-top: 50px;
  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; }

.p-aboutHeader__heading {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1em;
  letter-spacing: 5px;
  font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 700;
  color: #ffffff;
  margin-left: 3%; }
  .p-aboutHeader__heading span {
    display: inline-block;
    padding-bottom: 0;
    border-bottom: solid 4px #ffffff;
    margin-bottom: 19px; }
    .p-aboutHeader__heading span:last-child {
      margin-bottom: 0; }

.p-action {
  padding: 30px 0 50px; }

.p-action__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 21px;
  text-align: center; }

.p-action__list dt {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 26px;
  letter-spacing: 0;
  font-weight: 700;
  color: #FF0043;
  margin-bottom: 12px; }

.p-action__list dd {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 27px;
  letter-spacing: 0.7px;
  margin-bottom: 28px; }

.p-action__list ol {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 27px;
  letter-spacing: 0.7px;
  list-style: none; }

.p-actionHeader {
  width: 100%;
  margin-top: 50px;
  background: #FFCCCC; }
  .p-actionHeader .l-inner {
    width: 100%;
    height: 150px;
    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;
    padding: 0 0 0 7.5%; }

.p-actionHeader__heading {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1em;
  letter-spacing: 3px;
  font-weight: 700;
  margin-bottom: 15px;
  font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif; }
  .p-actionHeader__heading span {
    display: block;
    border-bottom: solid 4px #000000;
    padding-bottom: 2px;
    margin-top: 9px; }

.p-activity {
  background: #CDDAFF;
  padding: 50px 0 0 0;
  overflow: visible; }
  .p-activity:after {
    content: '';
    display: block;
    width: 100%;
    background: #CDDAFF url("../img/about/footer_image_sp.jpg") no-repeat center center;
    background-size: cover;
    padding-top: 82.81%; }

.p-activity__heading {
  position: relative;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1em;
  letter-spacing: 2px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  text-align: center;
  margin: 0 0 24px; }
  .p-activity__heading:after {
    position: absolute;
    left: 50%;
    bottom: -10px;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    content: '';
    display: block;
    width: 224px;
    border-top: solid 4px #000000; }

.p-activity__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 24px;
  letter-spacing: 1.6px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 28px; }

.p-activity__lists {
  width: 87.5%;
  margin: auto; }

.p-activity__card {
  background: #ffffff;
  margin-bottom: 20px;
  padding: 34px 6% 45px 7%;
  min-height: 280px; }
  .p-activity__card:last-child {
    margin-bottom: 38px; }

.p-activity__title {
  position: relative;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 34px;
  letter-spacing: 1.2px;
  color: #2E3180;
  height: 50px;
  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;
  margin-bottom: 20px; }
  .p-activity__title:before {
    position: absolute;
    top: 0;
    left: -8%;
    content: '';
    border-left: solid 6px #2996CD;
    height: 52px; }

.p-activity__title--small {
  font-size: 20px;
  font-size: 2rem;
  line-height: 28px;
  letter-spacing: 0; }
  .p-activity__title--small:before {
    position: absolute;
    top: 0;
    left: -8%;
    content: '';
    border-left: solid 6px #2996CD;
    height: 50px; }

.p-activity__text {
  font-weight: 400;
  letter-spacing: .022em; }

.p-activity__card--blue {
  background: #2E3180;
  color: #ffffff; }
  .p-activity__card--blue .p-activity__text {
    font-weight: 700;
    margin-bottom: 2em; }

.p-article {
  padding: 100px 0 45px; }

.p-article__wrap {
  border-bottom: dashed 1px #000000;
  margin-bottom: 30px; }

.p-article__title {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 20px; }

.p-article__body p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 23px;
  letter-spacing: 0;
  margin-bottom: 2em; }

.p-article__body .wp-block-image {
  margin-bottom: 2em; }

.p-article__body .wp-block-columns {
  margin-bottom: 0; }

.p-article__body .wp-block-table {
  margin-bottom: 2em; }

.p-article__body table {
  border-collapse: collapse; }

.p-article__body td {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 23px;
  letter-spacing: 0;
  padding: .5em 1em;
  border: 1px solid #666; }

.p-pagination__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;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.p-pagination__item {
  width: 100px;
  margin-bottom: 17px; }
  .p-pagination__item a {
    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;
    border: solid 1px #231815;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0.7px;
    text-decoration: none;
    height: 40px;
    color: #000; }

.p-pagination--back {
  width: 100%;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3; }

.p-caseStudy {
  padding: 60px 0 0; }

.p-caseStudy__heading {
  margin-bottom: 55px; }

.p-caseStudy__case {
  margin-bottom: 30px;
  padding: 0 0 55px;
  border-bottom: solid 1px #949494; }
  .p-caseStudy__case:last-child {
    margin-bottom: 58px;
    padding: 0;
    border: none; }

.p-caseStudy__label {
  display: block;
  padding: 5px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1 100px;
  letter-spacing: 0;
  font-weight: 700;
  color: #ffffff;
  background: #FF0043;
  width: 110px;
  margin-bottom: 26px; }

.p-caseStudy__text {
  margin-bottom: 34px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px; }

.p-caseStudy__title {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 38px;
  letter-spacing: 2.4px;
  margin-bottom: 24px; }

.p-caseStudy__memberComment {
  margin-bottom: 40px; }
  .p-caseStudy__memberComment dt {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0.7px;
    font-weight: 700;
    padding: 10px 15px;
    background: #EAEAEA;
    margin-bottom: 15px; }
  .p-caseStudy__memberComment dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 25px;
    letter-spacing: 0.7px; }

.p-caseStudy__comment {
  background: #FFEBEB;
  margin-bottom: 20px;
  padding: 20px 5% 20px 10%; }
  .p-caseStudy__comment dt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0.7px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #FF0043; }
  .p-caseStudy__comment .p-caseStudy__comment--item {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 28px;
    letter-spacing: 0.6px;
    font-weight: 700;
    margin-left: -.5em;
    padding-left: 1em;
    text-indent: -1em; }
    .p-caseStudy__comment .p-caseStudy__comment--item:before {
      content: '・';
      margin-right: .3em; }

.p-caseStudy__teacher {
  margin-bottom: 20px;
  padding: 20px 5%;
  background: #F6F6F6; }

.p-caseStudy__teacher--profile {
  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;
  margin-bottom: 20px; }
  .p-caseStudy__teacher--profile img {
    width: 50%;
    margin-right: 10px; }
  .p-caseStudy__teacher--profile .p-caseStudy__teacher--name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 25px;
    letter-spacing: 0.7px;
    font-weight: 700; }

.p-dxDescription {
  background: url("../img/diagnosis/balloon_bg_sp.jpg") no-repeat center center;
  background-size: cover;
  padding: 44px 0; }

.p-dxDescription__heading {
  width: 100%;
  background: url("../img/diagnosis/balloon_sp.svg") no-repeat center center;
  background-size: 100% 100%;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  letter-spacing: 1.6px;
  font-weight: bold;
  text-align: center;
  color: #ffffff;
  padding: 28px 0 47px; }

.p-dx_wrap {
  background: #fff2e9;
  padding: 40px 0; }

.p-dxCardBox {
  margin: 0 0 25px; }

.p-dxCard {
  background: #ffffff; }

.p-dxCard__inner {
  padding: 0 3.125% 40px; }

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

.p-diagTitle {
  font-size: 20px;
  font-size: 2rem;
  line-height: 38px;
  letter-spacing: 2px;
  text-align: center;
  margin: 0 0 20px; }
  .p-diagTitle span {
    display: block;
    color: #ff0043; }
  .p-diagTitle:after {
    content: '';
    display: block;
    width: 100px;
    border-top: solid 4px #FF0043;
    margin: 12px auto 0; }

.p-dxCard__content {
  display: none; }
  .p-dxCard__content.is-active {
    display: block; }

.p-dxText p {
  margin: 0 0 30px; }

.p-dxQuestion {
  position: relative;
  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;
  background: #ff0043;
  color: #ffffff;
  font-weight: bold;
  margin: 0 0 20px;
  padding: 49px 6.25% 9px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 27px;
  letter-spacing: 0.8px; }
  .p-dxQuestion:before {
    content: 'Q';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 40px;
    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;
    background-color: #ff6e7c;
    font-size: 30px;
    font-size: 3rem;
    line-height: 1em;
    letter-spacing: 0;
    font-family: urw-din, sans-serif;
    font-weight: 600; }

.p-dxChoice a,
.p-dxChoice span {
  display: block;
  width: 100%;
  border: solid 1px #000000;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 27px;
  letter-spacing: 0.9px;
  text-align: center;
  margin: 0 0 10px;
  padding: .9em;
  font-weight: bold;
  color: #000000;
  text-decoration: none;
  cursor: pointer; }
  .p-dxChoice a:hover,
  .p-dxChoice span:hover {
    opacity: 1;
    background-color: #ff6e7c;
    color: #ffffff; }

/* YES・NO チャート */
.yn-chart {
  margin: 0 auto 2rem;
  padding: 2em;
  max-width: 600px;
  background: #fff8e3;
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.07);
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.07);
  font-size: 0.9rem;
  margin-bottom: 200px; }

.yn-chart__add {
  background: #fdc44f;
  color: #fff;
  padding: 0.2em 0.9em !important;
  margin: 0 !important;
  text-align: center;
  display: inline-block;
  line-height: 1.5 !important; }

.yn-chart__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  text-align: center;
  width: 100%;
  padding: 0.5em 0 0.3em !important;
  margin: 0 auto !important;
  font-size: 1.35em !important;
  font-weight: 600 !important;
  color: #fdc44f;
  letter-spacing: 1px !important;
  line-height: 1.5 !important; }

.yn-chart__title:before, .yn-chart__title:after {
  content: "";
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1 1;
  height: 1px;
  background: #fdc44f;
  display: block; }

.yn-chart__title:before {
  margin-right: 0.7em; }

.yn-chart__title:after {
  margin-left: 0.7em; }

.yn-chart__ex {
  text-align: center;
  margin: 0 !important;
  padding: 0 !important; }

.yn-chart > div {
  display: none;
  padding-top: 100px;
  margin-top: -100px; }

.yn-chart > div.yn-chart__display {
  display: block; }

.yn-chart > div > figure {
  margin: 1em 0 2em; }

.yn-chart > div > figure img {
  display: block; }

.yn-chart > div > p {
  margin: 2em 0 0 !important;
  padding: 0.8em 1em 0.8em 4.3em !important;
  background: #fff;
  position: relative; }

.yn-chart > div > p:before {
  content: "Q";
  background: #fdc44f;
  position: absolute;
  left: 0;
  top: 0;
  color: #fff;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-weight: 600;
  font-size: 1.1em;
  min-width: 48px; }

.yn-chart > div ul {
  margin: 2em 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: none; }

.yn-chart > div ul li {
  margin: 0 0 1em 1em !important;
  padding: 0 !important; }

.yn-chart > div ul li:last-child {
  margin: 0 0 0 1em !important; }

.yn-chart > div ul li a {
  background: #fff;
  display: block;
  padding: 0.8em !important;
  text-decoration: none;
  color: #333;
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.07);
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.07); }

.yn-chart > div ul li a:hover {
  -webkit-box-shadow: inset 2px 2px 0 0 #ee8f81, 2px 2px 0 0 #ee8f81, 2px 0 0 0 #ee8f81, 0 2px 0 0 #ee8f81;
  box-shadow: inset 2px 2px 0 0 #ee8f81, 2px 2px 0 0 #ee8f81, 2px 0 0 0 #ee8f81, 0 2px 0 0 #ee8f81;
  -webkit-transition: 0.1s ease-in-out;
  transition: 0.1s ease-in-out;
  opacity: 1; }

.yn-chart > div ul li:before {
  content: unset !important; }

.yn-chart__result {
  background: #fff;
  padding: 1em; }

.yn-chart__result-title {
  color: #fdc44f;
  font-size: 1.1em !important;
  font-weight: 600 !important;
  padding: 0 !important;
  margin: 0 0 1em !important;
  border-bottom: 1px dashed #fdc44f; }

/* Twitterシェアボタンなど */
.p-tw-btn, .p-check-btn {
  text-align: center;
  margin: 1.5em 5em !important;
  padding: 0 !important; }

.p-tw-btn a, .p-check-btn a {
  display: block;
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);
  color: #fff !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  padding: 0.5em 0;
  border-radius: 30px; }

.p-tw-btn a {
  background: #00acee; }

.p-check-btn a {
  background: #fbc55e; }

.p-tw-btn a:hover, .p-check-btn a:hover {
  -webkit-transform: translateY(3px);
  -ms-transform: translateY(3px);
  transform: translateY(3px);
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.22);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.22); }

.yn-chart > div > p.p-check-btn {
  background: none !important;
  padding: 0 5em !important; }

.yn-chart > div > p.p-check-btn:before {
  content: unset !important; }

.p-diagnosisHeader {
  width: 100%;
  width: 100%;
  margin-top: 50px; }
  .p-diagnosisHeader .l-inner {
    background: #ff6e7c url("../img/diagnosis/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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;
    padding: 0 0 0 13.75%; }
  .p-diagnosisHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #ff6e7c; }

.p-diagnosisHeader__heading {
  color: #ffffff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 0px;
  letter-spacing: 1px;
  font-family: urw-din, sans-serif;
  font-weight: 600; }
  .p-diagnosisHeader__heading small {
    display: block;
    margin-bottom: 17px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 0px;
    letter-spacing: 1px; }
  .p-diagnosisHeader__heading span {
    display: block;
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1em;
    letter-spacing: 4.8px;
    font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 700;
    padding-bottom: 4px;
    border-bottom: solid 4px #ffffff;
    margin-bottom: 7px; }

.p-diagnosisResult {
  background-color: #fff2e9;
  padding: 30px 0 60px; }

.p-diagnosisResult__inner {
  padding-bottom: 20px; }

.p-dxResultCard {
  background-color: #fff;
  padding: 30px 0 20px; }

.p-dxResultCard__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1em;
  letter-spacing: 1.8px;
  text-align: center;
  font-weight: 700;
  margin-bottom: 20px; }

.p-dxResultCard__name {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 30px;
  letter-spacing: 2.5px;
  font-weight: 700;
  color: #ff0043;
  margin-bottom: 30px;
  padding: 0 3.125%;
  text-align: center; }

.p-dxResultCard__content {
  padding: 20px 8% 0; }

.p-dxResult__sns {
  margin-top: 20px; }
  .p-dxResult__sns li {
    margin-bottom: 20px; }

.p-dxResultInfo {
  background-color: #fff5f5;
  padding: 45px 8% 45px; }

.p-dxResultInfo__heading {
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 1em;
  letter-spacing: 1.9px;
  text-align: center;
  color: #ff0043;
  margin: 0 0 30px; }
  .p-dxResultInfo__heading:before {
    content: '';
    display: block;
    width: 42px;
    height: 45px;
    background: transparent url("../img/diagnosis/icon_glass.svg") no-repeat center center;
    background-size: contain;
    margin: 0 auto 15px; }

.p-dxResultTry {
  background-color: #fff;
  padding: 40px 8% 40px; }
  .p-dxResultTry p {
    font-weight: bold;
    margin-bottom: 1.5em; }

.p-dxResultTry__header {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 2px;
  margin-bottom: 16px;
  text-align: center; }
  .p-dxResultTry__header:after {
    content: '';
    display: block;
    width: 100px;
    border-top: solid 4px #ff0043;
    margin: 16px auto 0; }

.p-diagnosisResultHeader {
  width: 100%;
  width: 100%;
  margin-top: 50px;
  background: #ffffff url("../img/diagnosis/result_bg_sp.jpg") no-repeat center top;
  background-size: cover; }
  .p-diagnosisResultHeader .l-inner {
    width: 100%;
    height: 150px;
    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;
    padding: 0; }

.p-diagnosisResultHeader__heading {
  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;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 0px;
  letter-spacing: 4.8px;
  font-weight: 600;
  background-color: #ff6e7c;
  color: #ffffff;
  padding: .9em;
  width: 240px;
  height: 50px;
  margin: auto;
  text-align: center; }

.p-event {
  width: 100%;
  padding: 48px 0 0 0; }

.p-event__box {
  margin-bottom: 78px;
  position: relative; }

.p-event__heading {
  display: inline-block;
  font-size: 50px;
  font-size: 5rem;
  line-height: 1em;
  letter-spacing: 2.5px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding-bottom: 4px;
  border-bottom: solid 4px #000000;
  margin-bottom: 32px; }

.p-event__lead {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 1px;
  font-weight: 700;
  margin-bottom: 18px; }

.p-event__tag {
  margin-bottom: 47px; }

.p-event__link {
  position: relative;
  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;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0.75px;
  font-weight: 700;
  width: 280px;
  height: 60px;
  color: #ffffff;
  background: #00A1FF;
  border-radius: 30px;
  margin: 0 auto 40px;
  text-decoration: none; }
  .p-event__link:before {
    position: absolute;
    top: 50%;
    left: 10%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .6em 0 .6em .7em;
    border-color: transparent transparent transparent #fff; }

.p-event__figure {
  display: block; }

.p-event__box--myevent .p-event__link {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0.7px;
  background: #000C84;
  padding-left: 33px; }

.p-eventArchives {
  padding: 60px 0; }

.p-eventArchives__header {
  margin-bottom: 42px; }

.p-eventArchives__lists a {
  text-decoration: none; }

.p-eventArchives__card {
  margin-bottom: 48px; }

.p-eventArchives__image {
  position: relative;
  padding-top: 66.42%;
  margin-bottom: 27px;
  background-color: #000000; }
  .p-eventArchives__image img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }

.p-eventArchives__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 32px;
  letter-spacing: 1.8px;
  margin-bottom: 10px;
  text-decoration: underline;
  color: #000; }

.p-eventArchives__text {
  margin-bottom: 24px;
  color: #000; }

.p-eventArchives__link {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  width: 240px;
  height: 40px;
  border-radius: 20px;
  background: #00A1FF;
  color: #ffffff;
  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;
  margin: auto;
  padding-right: 10px; }
  .p-eventArchives__link:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .4em 0 .4em .6em;
    border-color: transparent transparent transparent #ffffff;
    margin-right: 5px; }

.p-eventHeader {
  width: 100%;
  width: 100%;
  margin-top: 50px; }
  .p-eventHeader .l-inner {
    background: #00A1FF url("../img/event/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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;
    padding: 0 0 0 13.75%; }
  .p-eventHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #00A1FF; }

.p-eventHeader__heading {
  color: #ffffff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 0px;
  letter-spacing: 1px;
  font-family: urw-din, sans-serif;
  font-weight: 600; }
  .p-eventHeader__heading small {
    display: block;
    margin-bottom: 17px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 0px;
    letter-spacing: 1px; }
  .p-eventHeader__heading span {
    display: block;
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1em;
    letter-spacing: 4.8px;
    font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 700;
    padding-bottom: 4px;
    border-bottom: solid 4px #ffffff;
    margin-bottom: 10px; }

.p-eventInfo {
  padding: 46px 0 50px 0;
  background: #F3FBFF; }

.p-eventInfo__lists a {
  text-decoration: none; }

.p-eventInfo__card {
  display: block;
  margin-bottom: 36px; }
  .p-eventInfo__card:last-child {
    margin-bottom: 0; }

.p-eventInfo__image {
  margin-bottom: 20px; }

.p-eventInfo__title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 26px;
  letter-spacing: 1.6px;
  font-weight: 700;
  margin-bottom: 15px;
  text-decoration: underline;
  color: #000000; }

.p-eventInfo__text {
  text-decoration: none;
  color: #000000; }

.p-eventLead {
  padding: 24px 0 40px; }
  .p-eventLead p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 25px;
    letter-spacing: 1.4px;
    font-weight: 700;
    text-align: center; }

.p-follow {
  padding: 60px 0 78px;
  background: #D0D1D1; }

.p-follow__heading {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1em;
  letter-spacing: 2.5px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  margin-bottom: 28px; }

.p-follow__lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 25px;
  letter-spacing: 0.75px;
  font-weight: 400;
  margin-bottom: 43px; }

.p-follow__links {
  width: 240px;
  margin: 0 auto 50px;
  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-follow__item {
  width: 100px; }

.p-follow--red {
  background: #FF0043; }
  .p-follow--red .p-follow__heading {
    color: #fff; }
  .p-follow--red .p-follow__lead {
    color: #fff; }

.p-gNav {
  margin-bottom: 46px; }

.p-gNav__item {
  position: relative;
  margin-bottom: 22px; }
  .p-gNav__item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    height: 20px;
    border-left: solid 5px #FF0043; }
  .p-gNav__item a, .p-gNav__item span {
    display: block;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1em;
    letter-spacing: 0.684px;
    text-decoration: none;
    height: 20px;
    color: #000000;
    padding-left: 16px;
    cursor: pointer; }

.p-gNav__sub {
  padding: 15px 0 0;
  display: none; }
  .p-gNav__sub a {
    position: relative;
    display: block;
    font-weight: 700;
    height: 20px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1em;
    letter-spacing: 0.684px;
    text-decoration: none;
    color: #ffffff;
    margin-bottom: 15px;
    padding: 0; }
    .p-gNav__sub a:hover:after {
      display: none; }
    .p-gNav__sub a:hover span:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      width: 100%;
      border-bottom: solid 2px #FF0043;
      margin-top: 10px; }
    .p-gNav__sub a span {
      position: relative;
      display: inline-block; }

.p-gSns {
  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;
  margin-bottom: 40px; }
  .p-gSns a {
    display: block; }
  .p-gSns img {
    width: 100%; }

.p-gSns__item--twitter {
  margin-right: 27px; }
  .p-gSns__item--twitter a {
    width: 30px; }

.p-gSns__item--instagram a {
  width: 30px; }

.p-gBanner__item img {
  width: 100%; }

.p-gBanner__item--tobitate {
  margin-bottom: 25px; }
  .p-gBanner__item--tobitate a {
    display: block;
    width: 100px; }

.p-gBanner__item--mext a {
  display: block;
  width: 120px; }

.p-guest {
  margin-bottom: 40px; }

.p-guest__heading {
  position: relative;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1em;
  letter-spacing: 0.9px;
  width: 100%;
  margin: 0 0 13px; }
  .p-guest__heading span {
    position: relative;
    display: block;
    width: 180px;
    margin: auto;
    text-align: center;
    background-color: #ffffff;
    z-index: 10; }
  .p-guest__heading:after {
    content: '';
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    border-top: solid 1px #000C84;
    z-index: 0; }

.p-guest__wrapper {
  background: #F3F7FF;
  padding: 40px 7%; }

.p-guest__card {
  margin-bottom: 42px; }

.p-guest__image {
  width: 50%;
  margin: 0 auto 18px; }

.p-guest__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.p-guest__tag {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px;
  font-weight: 700;
  color: #000C84;
  margin-right: 7px; }

.p-join {
  position: relative;
  background: #000 url("../img/top/join_bg_sp.jpg") no-repeat center top;
  background-size: cover;
  width: 100%;
  padding-top: 87.5%; }
  .p-join .l-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center; }

.p-join__heading {
  font-size: 52px;
  font-size: 5.2rem;
  line-height: 1em;
  letter-spacing: 0;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  color: #ffffff;
  width: 100%;
  text-align: center;
  margin: 0 0 15px; }

.p-join__text {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  padding: 5px; }

.p-kameikou {
  margin-top: 50px; }

.p-kameikou__header {
  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: 100%;
  height: 104.6875vw;
  background: #ffffff url("../img/kameikou/main_bg_sp.jpg") no-repeat center center;
  background-size: cover; }

.p-kameikou__heading {
  width: 65.625vw; }

.p-kameikouOverview {
  background-color: #a38d4f;
  padding: 30px 0;
  text-align: center;
  color: #ffffff; }
  .p-kameikouOverview h3 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 30px;
    letter-spacing: 0.9px;
    margin-bottom: 16px; }
  .p-kameikouOverview a {
    color: #ff0043;
    text-decoration: underline; }
  .p-kameikouOverview p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 23px;
    letter-spacing: 0;
    font-weight: 700; }

.p-kameikouLook {
  padding: 30px 0 60px;
  background-color: #f4eee1; }
  .p-kameikouLook p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 25px;
    letter-spacing: 0.75px;
    margin-bottom: 1.7em; }
  .p-kameikouLook figure {
    margin-bottom: 30px; }
  .p-kameikouLook .c-btn {
    padding: 0 0 0 10px; }

.p-kameikouLook__inner {
  margin-bottom: 40px; }

.p-kameikouLook__heading {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 36px;
  letter-spacing: 1.1px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center; }

.p-kameikouLook__image figcaption {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 400;
  text-align: center;
  margin-top: 10px; }

.p-kameikouEvent {
  padding: 50px 0 25px; }

.p-kameikouEvent__heading {
  font-size: 30px;
  font-size: 3rem;
  line-height: 33px;
  letter-spacing: 1.5px; }
  .p-kameikouEvent__heading span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0;
    margin-top: 27px; }
    .p-kameikouEvent__heading span:before {
      border-color: #ff0043; }

.p-kameikou__pankuzu {
  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;
  margin-top: 50px;
  height: 50px;
  background-color: #f4eee1; }
  .p-kameikou__pankuzu a {
    color: #000;
    text-decoration: none;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1em;
    letter-spacing: 0; }

.p-kameikouArchive {
  padding-top: 50px;
  background: #f7f7f7; }
  .p-kameikouArchive .p-eventArchives__title a {
    color: #000; }
  .p-kameikouArchive .p-kameikouEvent__heading span:before {
    border-color: #a38d4f; }
  .p-kameikouArchive .p-eventArchives__link {
    background-color: #a38d4f; }

.p-kameikouArchive__link {
  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;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 20px;
  letter-spacing: 0;
  font-weight: 700;
  color: #000;
  text-decoration: underline;
  margin-top: 30px; }
  .p-kameikouArchive__link:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 9px;
    border-color: transparent transparent transparent #000000;
    margin-right: 4px; }

.p-kameikou4Teacher {
  text-align: center;
  background-color: #7c7c7c;
  color: #ffffff;
  padding: 38px 0; }
  .p-kameikou4Teacher h2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 33px;
    letter-spacing: 1.5px;
    font-family: urw-din, sans-serif;
    font-weight: 600;
    margin-bottom: 16px; }
  .p-kameikou4Teacher p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1em;
    letter-spacing: 1.8px;
    font-weight: 700; }

.p-kameikouLogo {
  padding: 55px 0 75px; }
  .p-kameikouLogo .c-btn {
    padding: 0 0 0 10px;
    width: 240px;
    height: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0;
    margin-top: 40px; }

.p-kameikouLogo__heading {
  font-family: urw-din, sans-serif;
  font-weight: 600;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1em;
  letter-spacing: 1.2px;
  margin-bottom: 20px;
  text-align: center; }
  .p-kameikouLogo__heading span {
    display: block;
    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 700;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1em;
    letter-spacing: 1.5px;
    margin-top: 10px; }

.p-kameikouLogo__content {
  background-color: #f9f9f9;
  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;
  height: 40.625vw;
  margin-bottom: 20px; }

.p-kameikouLogo1 {
  width: 30%;
  margin-right: 10%; }

.p-kameikouLogo2 {
  width: 43%; }

.p-kameikouTaxonomy {
  padding: 50px 0;
  background-color: #f7f7f7; }

.p-article__kameikou {
  padding-top: 30px; }

.p-media {
  width: 100%;
  padding: 65px 0 45px 0; }

.p-media__heading {
  display: inline-block;
  font-size: 50px;
  font-size: 5rem;
  line-height: 1em;
  letter-spacing: 2.5px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding-bottom: 4px;
  border-bottom: solid 4px #000000;
  margin-bottom: 32px; }

.p-media__lead {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 1px;
  font-weight: 700;
  margin-bottom: 18px; }

.p-media__tag {
  margin-bottom: 47px; }

.p-media__link {
  position: relative;
  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;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0.75px;
  font-weight: 700;
  width: 280px;
  height: 60px;
  color: #ffffff;
  background: #FF0043;
  border-radius: 30px;
  margin: 0 auto 40px;
  text-decoration: none; }
  .p-media__link:before {
    position: absolute;
    top: 50%;
    left: 24%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .6em 0 .6em .7em;
    border-color: transparent transparent transparent #fff; }

.p-mediaHeader {
  width: 100%;
  margin-top: 50px; }
  .p-mediaHeader .l-inner {
    background: #A3A3A3 url("../img/media/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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; }
  .p-mediaHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #A3A3A3; }

.p-mediaHeader__heading {
  display: block;
  font-size: 52px;
  font-size: 5.2rem;
  line-height: 1em;
  letter-spacing: 2.6px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding-bottom: 2px;
  border-bottom: solid 4px #ffffff;
  color: #ffffff; }

.p-mediaLead {
  padding: 24px 0 22px; }

.p-mediaLead__text {
  text-align: center;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px; }

.p-mediaPickUp__check {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px;
  color: #ffffff;
  font-weight: 700;
  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;
  background: #A3A3A3;
  width: 100%;
  height: 80px;
  margin: 0 0 40px; }
  .p-mediaPickUp__check:after {
    content: '';
    position: absolute;
    left: 48%;
    bottom: -20px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 34px 8px 0 8px;
    border-color: #A3A3A3 transparent transparent transparent;
    -webkit-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    transform: rotate(35deg); }

.p-mediaPickUp__heading {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 1.4px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 10px; }
  .p-mediaPickUp__heading img {
    display: block;
    width: 122px;
    margin: 0 auto 24px; }

.p-mediaPickUp__lists {
  margin-bottom: 25px; }

.p-mediaPickUp__item {
  margin-bottom: 14px; }

.p-mediaPickUp__text {
  text-align: center;
  margin-bottom: 30px; }

.p-mediaPickUp__link {
  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: 60px;
  margin: 0 auto 44px;
  padding-right: 20px;
  border-radius: 30px;
  background: #FF0043;
  color: #ffffff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  text-decoration: none; }
  .p-mediaPickUp__link:before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 18px;
    background: #FF0043 url("../img/media/icon_note_small.svg") no-repeat center top;
    background-size: contain;
    margin-right: 16px; }

.p-mediaYoutube {
  padding: 50px 0 70px;
  background: #F0F0F0; }

.p-mediaYoutube__heading {
  width: 120px;
  margin: 0 auto 16px;
  text-align: center; }
  .p-mediaYoutube__heading span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: 0;
    display: block;
    margin: 24px 0 0 0; }

.p-mediaYoutube__link {
  display: block;
  margin-bottom: 18px; }

.p-mediaYoutube__text {
  text-align: center; }

.p-meeting {
  background: #F3FBFF;
  padding: 52px 0 87px; }

.p-meeting__heading {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1em;
  letter-spacing: 1.8px;
  font-weight: 600;
  font-family: urw-din, sans-serif;
  color: #000C84;
  margin-bottom: 22px;
  text-align: center;
  white-space: nowrap; }

.p-meeting__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: 1.6px;
  font-weight: 700;
  color: #000C84;
  margin-bottom: 17px;
  text-align: center; }

.p-meeting__text {
  font-weight: 700;
  width: 280px;
  margin: 0 auto 23px; }

.p-myEventContact {
  padding: 0 0 64px; }

.p-schoolFooter__link {
  margin-bottom: 28px; }

.p-myEventFooter__check {
  background: #000C84;
  padding: 44px 0 34px; }

.p-myEventCheck__heading {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 38px;
  letter-spacing: 2.4px;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin-bottom: 22px; }

.p-myEventCheck__image {
  width: 87.5%;
  margin: auto; }

.p-myEventFooter__info {
  background: #ffffff url("../img/my-event/footer_bg_sp.jpg") no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 260px;
  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; }

.p-myEventFooter__text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: 1.6px;
  font-weight: 700;
  color: #ffffff;
  background: #000;
  width: 270px;
  height: 24px;
  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;
  -webkit-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  transform: rotate(-10deg); }

.p-myEventHeader {
  width: 100%;
  margin-top: 50px; }
  .p-myEventHeader .l-inner {
    background: #000C84 url("../img/my-event/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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; }
  .p-myEventHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #000C84; }

.p-myEventHeader__heading {
  color: #ffffff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 0px;
  letter-spacing: 1px;
  font-weight: 700;
  font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif; }
  .p-myEventHeader__heading small {
    display: block;
    margin-bottom: 25px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 0px;
    letter-spacing: 1.2px;
    font-family: urw-din, sans-serif;
    font-weight: 600; }
  .p-myEventHeader__heading span {
    display: block;
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 1em;
    letter-spacing: 4.2px;
    font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 700;
    padding-bottom: 2px;
    border-bottom: solid 4px #ffffff;
    margin-bottom: 20px; }

.p-myEventManual {
  background: #F3F7FF;
  text-align: center;
  padding: 43px 0 60px; }

.p-myEventManual__heading {
  font-size: 20px;
  font-size: 2rem;
  line-height: 34px;
  letter-spacing: 1px;
  font-weight: 700;
  margin-bottom: 23px; }

.p-myEventManual__text {
  margin-bottom: 27px;
  text-align: left; }

.p-myEventTry {
  padding: 45px 0 8px; }

.p-myEventTry__heading {
  width: 262px;
  margin: 0 auto 25px; }

.p-myEventTry__lead {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center; }

.p-myEventTry__card {
  border: solid 1px #A9A9A9;
  margin-bottom: 27px;
  padding: 5px; }
  .p-myEventTry__card:nth-child(even) .p-myEventTry__cardInner {
    background: #FFEBEB; }
  .p-myEventTry__card:nth-child(even) .p-myEventTry__title {
    color: #FF0043; }

.p-myEventTry__cardInner {
  background: #EDEFFF;
  padding: 25px 4%; }

.p-myEventTry__title {
  position: relative;
  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;
  font-size: 20px;
  font-size: 2rem;
  line-height: 28px;
  letter-spacing: 2px;
  font-weight: 700;
  color: #000C84;
  margin: 0 auto 9px; }
  .p-myEventTry__title img {
    display: block;
    position: relative;
    width: 72px;
    margin: 0 15px 0 0; }

.p-myEventTry__text {
  margin-bottom: 32px; }

.p-myEventTry__link {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 0;
  color: #ffffff;
  background: #000;
  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;
  width: 240px;
  height: 60px;
  border-radius: 30px;
  margin: 0 auto 24px;
  text-decoration: none;
  padding-left: 20px; }
  .p-myEventTry__link:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .7em 0 .7em .7em;
    border-color: transparent transparent transparent #fff;
    margin-right: 17px; }

.p-news {
  padding: 38px 0 40px 0; }

.p-news__heading {
  width: 211px;
  margin: 0 auto 34px; }
  .p-news__heading img {
    width: 100%; }

.p-news__banner {
  display: block;
  width: 100%;
  margin: 0 0 60px; }
  .p-news__banner img {
    width: 100%; }

.p-news__card {
  margin-bottom: 30px; }
  .p-news__card a {
    text-decoration: none;
    color: #000; }
  .p-news__card:last-child {
    margin-bottom: 52px; }

.p-news__card--image {
  position: relative;
  padding-top: 66.42%;
  margin-bottom: 16px;
  background-color: #000000; }
  .p-news__card--image img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }

.p-news__info {
  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;
  margin-bottom: 11px; }

.p-news__date {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 400;
  margin-right: 6px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1em;
  letter-spacing: 0; }

.p-news__category {
  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;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0.5px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  color: #ffffff;
  width: 70px;
  height: 14px; }
  .p-news__category.p-news__category--other {
    background: #FF4380; }
  .p-news__category.p-news__category--event {
    background: #FF0043; }
  .p-news__category.p-news__category--recruit {
    background: #000DFF; }
  .p-news__category.p-news__category--campaign {
    background: #00AAFF; }
  .p-news__category.p-news__category--new-event {
    background: #F15A24; }
  .p-news__category.p-news__category--report {
    background: #E6E6E6;
    color: #000000; }
  .p-news__category.p-news__category--member {
    width: auto;
    background: #a38d4f;
    color: #ffffff;
    padding: 0 .5em; }
  .p-news__category.p-news__category--teacher {
    width: auto;
    background: #7c7c7c;
    color: #ffffff;
    padding: 0 .5em; }

.p-news__card--title {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 23px;
  letter-spacing: 0;
  font-weight: 400;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt'; }

.p-news__link {
  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;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0;
  color: #000; }
  .p-news__link:hover {
    text-decoration: none; }
  .p-news__link:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .35em 0 .35em .5em;
    border-color: transparent transparent transparent #000000;
    margin-right: 8px; }

.p-news__note {
  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;
  width: 85%;
  margin: 0 auto 30px; }
  .p-news__note p {
    font-weight: 700;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 20px;
    letter-spacing: 0; }

.p-news__note--logo {
  width: 30%; }

.p-topNews__list a {
  text-decoration: none;
  color: #000; }
  .p-topNews__list a:hover * {
    opacity: .8; }

.p-topNews__card {
  margin-bottom: 40px; }

.p-topNews__card--image {
  margin-bottom: 20px; }

.p-topNews__info p {
  line-height: 1.6em; }

.p-topNews__title {
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 0;
  margin-bottom: 15px;
  color: #020c7f; }

.p-topNews__sub {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 10px;
  font-weight: 700; }

.p-newsArchive {
  margin-top: 50px;
  padding: 42px 0 0 0; }

.p-newsArchive__heading {
  width: 215px;
  margin: 0  auto 45px; }

.p-offMeeting {
  padding: 41px 0 60px;
  background: #FFEBEB; }

.p-offMeeting__heading {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 28px;
  letter-spacing: 0.9px;
  font-weight: 700;
  color: #FF0043;
  text-align: center;
  margin-bottom: 22px; }

.p-offMeeting__text {
  margin-bottom: 34px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px; }

.p-photos {
  padding: 56px 0 40px; }

.p-photos__heading {
  font-size: 20px;
  font-size: 2rem;
  line-height: 34px;
  letter-spacing: 1px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 20px; }

.p-photos__text {
  margin-bottom: 35px; }

.p-photos__lists {
  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-photos__item {
  width: 47.85%;
  margin-bottom: 17px; }

.p-photosAlbum {
  background: #ffffff url("../img/photos/album_bg_sp.jpg") no-repeat center top;
  background-size: cover;
  padding: 40px 0 35px; }
  .p-photosAlbum .l-inner {
    background: rgba(255, 255, 255, 0.95);
    padding: 5px;
    max-width: 800px; }

.p-photosAlbum__inner {
  border: solid 1px #2E3191;
  padding: 26px 4% 20px; }

.p-photosAlbum__heading {
  width: 240px;
  margin: 0 auto 20px; }

.p-photosAlbum__text {
  margin-bottom: 10px;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px; }

.p-photosContest {
  background: #ffffff url("../img/photos/contest_bg_sp.jpg") no-repeat center top;
  background-size: cover;
  padding: 40px 0 50px; }
  .p-photosContest .l-inner {
    background: rgba(255, 255, 255, 0.95);
    padding: 5px; }

.p-photosContest__inner {
  border: solid 1px #2E3191;
  padding: 26px 4% 20px; }

.p-photosContest__heading {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 30px;
  letter-spacing: 2.4px;
  font-weight: 700;
  margin: 0 auto 16px;
  color: #1B1464;
  text-align: center; }

.p-photosContest__text {
  margin-bottom: 14px;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px; }

.p-photosHeader {
  width: 100%;
  margin-top: 50px; }
  .p-photosHeader .l-inner {
    background: #666666 url("../img/photos/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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; }
  .p-photosHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #666666; }

.p-photosHeader__heading {
  display: block;
  font-size: 52px;
  font-size: 5.2rem;
  line-height: 1em;
  letter-spacing: 2.6px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding-bottom: 2px;
  border-bottom: solid 4px #ffffff;
  color: #ffffff; }

.p-privilege {
  padding: 27px 0 20px; }

.p-privilege__card {
  margin-bottom: 52px; }

.p-privilege__number {
  display: block;
  width: 70px;
  margin: 0 auto 20px; }

.p-privilege__title {
  font-size: 21px;
  font-size: 5.6vw;
  line-height: 1em;
  letter-spacing: 0;
  line-height: 1.7em;
  font-weight: 700;
  margin-bottom: 19px;
  text-align: center; }

.p-privilege__info {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 22px;
  letter-spacing: 1.5px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center; }

.p-privilege__text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px;
  margin-bottom: 25px; }

.p-privilege__link {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  color: #ffffff;
  background: #000C84;
  width: 240px;
  height: 40px;
  border-radius: 20px;
  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;
  padding-left: 20px;
  text-decoration: none;
  margin: 0 auto 10px; }
  .p-privilege__link:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .4em 0 .4em .6em;
    border-color: transparent transparent transparent #ffffff;
    margin-right: 4px; }
  .p-privilege__link span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1em;
    letter-spacing: 0; }

.p-privilege2 {
  margin-bottom: 35px; }
  .p-privilege2 .p-privilege__title {
    margin-bottom: 10px; }
  .p-privilege2 .p-privilege__image {
    margin: 40px 0; }

.p-privilege3 .p-privilege__title {
  margin-bottom: 10px; }

.p-reportArchives {
  padding: 60px 0;
  background-color: #F4F4F4; }

.p-reportArchives__header {
  margin-bottom: 42px; }
  .p-reportArchives__header span:before {
    border-top: solid 4px #FF0043; }

.p-reportArchives__lists a {
  text-decoration: none; }

.p-reportArchives__card {
  margin-bottom: 48px; }

.p-reportArchives__image {
  position: relative;
  padding-top: 66.42%;
  margin-bottom: 27px;
  background-color: #000000; }
  .p-reportArchives__image img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }

.p-reportArchives__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 32px;
  letter-spacing: 1.8px;
  margin-bottom: 10px;
  text-decoration: underline;
  color: #000; }

.p-reportArchives__text {
  margin-bottom: 24px;
  color: #000; }

.p-reportArchives__link {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  width: 240px;
  height: 40px;
  border-radius: 20px;
  background: #FF0043;
  color: #ffffff;
  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;
  margin: auto;
  padding-right: 10px; }
  .p-reportArchives__link:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .4em 0 .4em .6em;
    border-color: transparent transparent transparent #ffffff;
    margin-right: 5px; }

.p-reportHeader {
  width: 100%;
  width: 100%;
  margin-top: 50px; }
  .p-reportHeader .l-inner {
    background: #F2F2F2 url("../img/report/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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;
    padding: 0 0 0 13.75%; }
  .p-reportHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #F2F2F2; }

.p-reportHeader__heading {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 0px;
  letter-spacing: 2.4px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  color: #ffffff;
  margin: 33px 0 0 20px; }
  .p-reportHeader__heading span {
    display: block;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1em;
    letter-spacing: 2px;
    font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 700;
    border-top: solid 4px #ffffff;
    margin-top: 30px;
    padding-top: 10px;
    color: #ffffff; }

.p-reportLead {
  padding: 31px 0 46px; }

.p-reportLead__heading {
  width: 94%;
  margin: 0 auto 16px; }

.p-reportLead__link {
  width: 100%; }

.p-schoolAbout {
  text-align: center;
  padding: 28px 0 0; }
  .p-schoolAbout:after {
    content: '';
    display: block;
    width: 100%;
    padding-top: 83%;
    background: #ffffff url("../img/school/school_image_sp.jpg") no-repeat center center;
    background-size: cover;
    margin: 30px 0 0 0; }

.p-schoolAbout__heading {
  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: 220px;
  height: 40px;
  margin: 0 auto 16px;
  border-radius: 20px;
  border: solid 1px #000000;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 1.4px;
  font-weight: 700; }

.p-schoolAbout__lead {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 25px;
  letter-spacing: 0.7px;
  font-weight: 700;
  margin-bottom: 13px; }
  .p-schoolAbout__lead span {
    color: #FF0043; }

.p-schoolFooter {
  padding: 50px 0 64px;
  background: #F0F0F0; }

.p-schoolFooter__link {
  margin-bottom: 28px; }

.p-schoolHeader {
  width: 100%;
  margin-top: 50px; }
  .p-schoolHeader .l-inner {
    background: #000000 url("../img/school/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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;
    padding-top: 35px; }
  .p-schoolHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #000000; }

.p-schoolHeader__heading {
  display: block;
  font-size: 37px;
  font-size: 3.7rem;
  line-height: 51px;
  letter-spacing: 3.7px;
  font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 700;
  color: #ffffff; }
  .p-schoolHeader__heading span {
    display: inline-block;
    border-bottom: solid 4px #ffffff; }

.p-scroll {
  display: none; }
  .p-scroll span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 24px;
    height: 24px;
    margin-left: -12px;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: sdb 1.5s infinite;
    animation: sdb 1.5s infinite;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(-5px, 5px);
    transform: rotate(-45deg) translate(-5px, 5px);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }

@keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(-5px, 5px);
    transform: rotate(-45deg) translate(-5px, 5px);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }

.p-snsFollow {
  padding: 37px 0 13px 0; }

.p-snsFollow__heading {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1em;
  letter-spacing: 1.8px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  width: 246px;
  margin: 0 auto 20px;
  padding-bottom: 5px;
  text-align: center;
  border-bottom: solid 4px #000000;
  white-space: nowrap; }

.p-snsFollow_lead {
  text-align: center;
  margin: 0 0 15px;
  font-weight: 700; }

.p-snsFollow__lists {
  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;
  width: 81.25%;
  margin: auto; }

.p-snsFollow__item {
  width: 46.15%;
  text-align: center;
  margin: 0 0 34px; }

.p-snsFollow__figure {
  margin-bottom: 9px; }

.p-snsFollow__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1em;
  letter-spacing: 0.9px;
  font-weight: 700;
  margin-bottom: 7px; }

.p-snsFollow__tag {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 18px;
  letter-spacing: 0.65px; }

.p-snsHeader {
  width: 100%;
  width: 100%;
  margin-top: 50px; }
  .p-snsHeader .l-inner {
    background: #FF0043 url("../img/sns/main_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    width: 100%;
    height: 250px;
    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;
    padding: 0 0 0 13.75%; }
  .p-snsHeader:after {
    content: '';
    display: block;
    width: 100%;
    height: 50px;
    background: #FF0043; }

.p-snsHeader__heading {
  color: #ffffff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 0px;
  letter-spacing: 1px;
  font-family: urw-din, sans-serif;
  font-weight: 600; }
  .p-snsHeader__heading small {
    display: block;
    margin-bottom: 17px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 0px;
    letter-spacing: 1px; }
  .p-snsHeader__heading span {
    display: block;
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1em;
    letter-spacing: 4.8px;
    font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 700;
    padding-bottom: 4px;
    border-bottom: solid 4px #ffffff;
    margin-bottom: 7px; }

.p-snsTalk {
  background: #FFCFCF;
  padding: 60px 0 40px; }
  .p-snsTalk .l-inner {
    position: relative;
    width: 90.5%; }

.p-snsTalk__inner {
  background: #ffffff;
  padding: 51px 7% 36px; }

.p-snsTalk__heading {
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 218px; }

.p-snsTalk__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 26px;
  letter-spacing: 1.6px;
  font-weight: 700;
  width: 255px;
  margin: 0 auto 40px; }
  .p-snsTalk__lead span {
    color: #FF0043; }

.p-snsTalk__text {
  margin-bottom: 48px; }

.p-snsTalk__rule {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0.7px;
  font-weight: 700;
  text-decoration: underline;
  text-align: center;
  color: #000;
  margin-bottom: 30px; }
  .p-snsTalk__rule span {
    position: relative; }
    .p-snsTalk__rule span:before {
      content: '';
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      left: -20px;
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 5.5px 0 5.5px 10px;
      border-color: transparent transparent transparent #FF0043; }

.p-snsTalk__lists {
  margin-bottom: 53px; }

.p-snsTalk__item {
  margin-bottom: 13px; }

.p-snsTalk__link {
  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: 100%;
  height: 60px;
  background: #FF0043;
  color: #ffffff;
  border-radius: 30px;
  text-decoration: none;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  margin: 0 auto 50px;
  padding-right: 10px; }
  .p-snsTalk__link:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 16px;
    background: transparent url("../img/top/icon_twitter.png") no-repeat center top;
    background-size: contain;
    margin-right: 10px; }

.p-snsTalk__welcome {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 26px;
  letter-spacing: 1.6px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
  white-space: nowrap; }

.p-snsTalk__theme {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0.7px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 26px; }
  .p-snsTalk__theme span {
    display: block;
    position: relative;
    width: 116px;
    margin: auto;
    background: #ffffff;
    z-index: 10; }
  .p-snsTalk__theme:after {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 100%;
    border-top: solid 1px #FF0000;
    z-index: 0; }

.p-snsTalk__themeLists {
  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-snsTalk__themeLists--item {
  width: 48%; }

.p-social {
  background: #FFCFCF;
  padding: 8px; }

.p-social__inner {
  border: solid 1px #FF8880;
  padding: 35px 3% 0; }

.p-social__card {
  text-align: center;
  margin-bottom: 60px; }

.p-social__title {
  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;
  font-size: 31px;
  font-size: 3.1rem;
  line-height: 1em;
  letter-spacing: 1.55px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  text-align: center;
  margin-bottom: 12px; }
  .p-social__title span {
    display: inline-block;
    border-bottom: solid 3px #000000;
    padding-bottom: 6px; }

.p-social__lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 25px;
  letter-spacing: 1.5px;
  font-weight: 700;
  margin-bottom: 22px; }

.p-social__link {
  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: 60px;
  background: #FF0043;
  color: #ffffff;
  border-radius: 30px;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  margin: 0 auto 34px;
  padding-right: 10px; }

.p-social__card--twitter .p-social__title:before {
  content: '';
  display: inline-block;
  width: 60px;
  height: 60px;
  background: transparent url("../img/top/icon_circle_twitter.png") no-repeat center center;
  background-size: contain;
  margin-right: 10px; }

.p-social__card--twitter .p-social__link:before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 16px;
  background: transparent url("../img/top/icon_twitter.png") no-repeat center top;
  background-size: contain;
  margin-right: 18px; }

.p-social__card--instagram {
  margin-bottom: 50px; }
  .p-social__card--instagram .p-social__title {
    margin-bottom: 14px; }
    .p-social__card--instagram .p-social__title:before {
      content: '';
      display: inline-block;
      width: 60px;
      height: 60px;
      background: transparent url("../img/top/icon_circle_instagram.png") no-repeat center center;
      background-size: contain;
      margin-right: 10px; }
  .p-social__card--instagram .p-social__link {
    padding-right: 32px; }
    .p-social__card--instagram .p-social__link:before {
      content: '';
      display: inline-block;
      width: 20px;
      height: 20px;
      background: transparent url("../img/top/icon_instagram.png") no-repeat center top;
      background-size: contain;
      margin-right: 26px; }
  .p-social__card--instagram .p-social__figure {
    width: 91%;
    margin: auto; }

.p-social__card--note {
  margin-bottom: 42px; }
  .p-social__card--note .p-social__title {
    margin: 0 0 11px -19px; }
    .p-social__card--note .p-social__title:before {
      content: '';
      display: inline-block;
      width: 60px;
      height: 60px;
      background: transparent url("../img/top/icon_circle_note.png") no-repeat center center;
      background-size: contain;
      margin-right: 15px; }
  .p-social__card--note .p-social__lead {
    margin-bottom: 18px; }
  .p-social__card--note .p-social__banner {
    display: block;
    width: 92%;
    margin: 0 auto 12px; }
    .p-social__card--note .p-social__banner:last-child {
      margin-bottom: 0; }

.p-social__card--youtube {
  margin-bottom: 50px; }
  .p-social__card--youtube .p-social__title {
    margin: 0 0 11px 7px; }
    .p-social__card--youtube .p-social__title:before {
      content: '';
      display: inline-block;
      width: 60px;
      height: 60px;
      background: transparent url("../img/top/icon_circle_youtube.png") no-repeat center center;
      background-size: contain;
      margin-right: 15px; }
  .p-social__card--youtube .p-social__lead {
    margin-bottom: 32px; }
  .p-social__card--youtube .p-social__figure {
    display: block;
    width: 92%;
    margin: auto; }

.p-social--media {
  background: #ffffff; }
  .p-social--media .p-social__inner {
    border: none;
    padding: 35px 3% 0; }

.css-16my406 {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0; }

.p-staff {
  margin-bottom: 40px; }

.p-staffHeader {
  background: #ffffff url("../img/about/staff_bg_sp.jpg") no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 250px;
  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-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;
  margin-bottom: 30px;
  padding-top: 26px; }

.p-staffHeader__heading {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1em;
  letter-spacing: 2px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 19px;
  padding: 0 0 8px;
  border-bottom: solid 5px #ffffff; }

.p-staffHeader__text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: 0.8px;
  font-weight: 700;
  color: #ffffff;
  background-color: #000000;
  padding: 10px 23px; }

.p-staffLists__lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 25px;
  letter-spacing: 0.75px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px; }

.p-staff__lists {
  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-staff__card {
  width: 50%;
  margin-bottom: 56px; }

.p-staff__profile {
  position: relative;
  margin-bottom: 14px; }

.p-staff__name {
  position: absolute;
  left: 0;
  bottom: 35px;
  width: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0.75px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding: 8px 0 8px 10px;
  color: #ffffff;
  background-color: #000000; }

.p-staff__name--small {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0; }

.p-staff__account {
  position: absolute;
  left: 0;
  bottom: 10px;
  width: 87%;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1em;
  letter-spacing: 0.55px;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  padding: 4px 0 4px 10px;
  color: #ffffff;
  background-color: #000000; }

.p-staff__tag {
  width: 87.5%;
  margin: auto;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  letter-spacing: 0.6px;
  font-weight: 400;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.p-staff__tag--item {
  margin-right: 5px;
  white-space: nowrap; }

.p-summary {
  position: relative;
  width: 100%;
  background: #E51B44 url("../img/top/summary_bg_sp.png") no-repeat center top;
  background-size: cover;
  padding: 46px 0 110px 0; }
  .p-summary .l-inner {
    position: relative;
    width: 87.5%;
    margin: auto;
    background-color: #fff;
    padding: 36% 6.42% 30%; }
    .p-summary .l-inner:before {
      position: absolute;
      left: 50%;
      top: -40px;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      content: '';
      display: block;
      width: 111%;
      padding-top: 100%;
      background: transparent url("../img/top/summary_photo_top.png") no-repeat center top;
      background-size: 100%; }
    .p-summary .l-inner:after {
      position: absolute;
      left: 50%;
      bottom: -80px;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      content: '';
      display: block;
      width: 110%;
      padding-top: 55%;
      background: transparent url("../img/top/summary_photo_bottom.png") no-repeat center top;
      background-size: 100%; }

.p-summary__heading {
  width: 100%;
  margin: 0 auto 20px; }

.p-summary__lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  letter-spacing: 0;
  font-weight: 700;
  color: #FF0043;
  margin-bottom: 14px; }

.p-summary__text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 27px;
  letter-spacing: 0;
  margin-bottom: 44px; }

.p-summary__link {
  position: relative;
  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: 240px;
  height: 50px;
  color: #ffffff;
  background: #000;
  border-radius: 25px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: 0;
  font-weight: 700;
  text-decoration: none;
  margin: 0 auto 56px;
  padding-right: 35px; }
  .p-summary__link:after {
    position: absolute;
    top: 50%;
    right: 36px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .45em 0 .45em .6em;
    border-color: transparent transparent transparent #ffffff; }

.p-summary__image img {
  width: 95%;
  margin: auto; }

.p-summary__caption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 18px;
  letter-spacing: 0;
  font-weight: 700;
  text-align: center;
  margin-bottom: 14px; }

.p-supporter {
  margin: 0 0 37px; }

.p-supporter__heading {
  position: relative;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 24px; }
  .p-supporter__heading span {
    position: relative;
    display: block;
    width: 234px;
    margin: auto;
    background-color: #fff;
    text-align: center;
    z-index: 10; }
  .p-supporter__heading:after {
    content: '';
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    border-top: solid 1px #000000;
    z-index: 0; }

.p-supporter__lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 25px;
  letter-spacing: 0.75px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 18px; }

.p-supporter__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.p-supporter__item {
  width: 50%;
  margin-bottom: 40px; }

.p-supporter__name {
  margin-top: 10px;
  padding-left: 10px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1em;
  letter-spacing: 0.65px;
  font-weight: 600; }

.p-topMain {
  position: relative;
  background: #ffffff url("../img/top/main_bg_sp.jpg") no-repeat center top;
  background-size: cover;
  min-height: 100vh;
  padding: 73px 0 30px 0;
  overflow: hidden; }

.p-topMain__bg2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: #ffffff url("../img/top/main_bg2_sp.jpg") no-repeat center top;
  background-size: cover;
  opacity: 0;
  -webkit-transition: opacity 500ms ease-in;
  transition: opacity 500ms ease-in; }
  .p-topMain__bg2.active {
    opacity: 1; }

.p-topMain__inner {
  position: relative;
  height: calc(100vh - 80px);
  opacity: 1;
  z-index: 10; }

.p-topMain__heading {
  width: 90%;
  margin: 0 0 24px 10px; }
  .p-topMain__heading svg {
    width: 100%;
    overflow: hidden; }
    .p-topMain__heading svg .cls-1 {
      opacity: 0;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .p-topMain__heading svg .cls-1.active {
        opacity: 1; }
    .p-topMain__heading svg .cls-line1 {
      -webkit-transform: scale3d(0, 1, 1);
      transform: scale3d(0, 1, 1);
      -webkit-transition: all 600ms linear;
      transition: all 600ms linear;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .p-topMain__heading svg .cls-line1.active {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1); }
    .p-topMain__heading svg .cls-line2 {
      -webkit-transform: scale3d(0, 1, 1);
      transform: scale3d(0, 1, 1);
      -webkit-transition: -webkit-transform 600ms linear;
      transition: -webkit-transform 600ms linear;
      transition: transform 600ms linear;
      transition: transform 600ms linear, -webkit-transform 600ms linear;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .p-topMain__heading svg .cls-line2.active {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1); }
    .p-topMain__heading svg .cls-line3 {
      -webkit-transform: scale3d(0, 1, 1);
      transform: scale3d(0, 1, 1);
      -webkit-transition: -webkit-transform 600ms linear;
      transition: -webkit-transform 600ms linear;
      transition: transform 600ms linear;
      transition: transform 600ms linear, -webkit-transform 600ms linear;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .p-topMain__heading svg .cls-line3.active {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1); }
    .p-topMain__heading svg .cls-line4 {
      -webkit-transform: scale3d(0, 1, 1);
      transform: scale3d(0, 1, 1);
      -webkit-transition: -webkit-transform 600ms linear;
      transition: -webkit-transform 600ms linear;
      transition: transform 600ms linear;
      transition: transform 600ms linear, -webkit-transform 600ms linear;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .p-topMain__heading svg .cls-line4.active {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1); }

.p-topMain__lead {
  text-align: right;
  width: 87.5%;
  margin: auto; }
  .p-topMain__lead .p-topMain__lead--text {
    display: inline-block;
    width: 218px;
    margin-bottom: 8px; }
  .p-topMain__lead .p-topMain__lead--logo {
    width: 182px;
    position: relative;
    left: -13px;
    opacity: 0; }

.p-tweet {
  position: relative;
  background: #000 url("../img/top/tweet_bg_sp.jpg") no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-top: 87.5%; }
  .p-tweet .l-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; }

.p-tweet__heading {
  font-family: urw-din, sans-serif;
  font-weight: 600;
  font-size: 50px;
  font-size: 5rem;
  line-height: 47px;
  letter-spacing: 2.5px;
  color: #ffffff;
  width: 278px; }

.p-tweet__text {
  display: inline-block;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 21px;
  letter-spacing: 0.8px;
  color: #ffffff;
  padding: 0;
  width: auto;
  margin: 14px 66px 0 0; }

.p-tweet__list {
  background: #ced8fb url("../img/top/tweet_list_bg_sp.jpg") no-repeat center top;
  background-size: 100%;
  padding: 45px 0 50px; }

.p-tweet__card {
  margin-bottom: 26px; }

.p-tweet__box {
  overflow-x: hidden;
  overflow-y: scroll;
  height: 240px;
  border: solid 1px #000;
  background-color: #fff; }
  .p-tweet__box .twitter-tweet {
    margin: 0 !important; }

.p-tweet__place {
  font-size: 23px;
  font-size: 2.3rem;
  line-height: 1em;
  letter-spacing: 0;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  margin-bottom: 14px; }

.p-youtube {
  margin-bottom: 54px; }

.p-youtube__wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  .p-youtube__wrap iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out; }

.loader {
  color: #000000;
  font-size: 10px;
  margin: 80px auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s; }

.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0; }

.loader:before {
  left: -3.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s; }

.loader:after {
  left: 3.5em; }

@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    -webkit-box-shadow: 0 2.5em 0 -1.3em;
    box-shadow: 0 2.5em 0 -1.3em; }
  40% {
    -webkit-box-shadow: 0 2.5em 0 0;
    box-shadow: 0 2.5em 0 0; } }

@keyframes load7 {
  0%,
  80%,
  100% {
    -webkit-box-shadow: 0 2.5em 0 -1.3em;
    box-shadow: 0 2.5em 0 -1.3em; }
  40% {
    -webkit-box-shadow: 0 2.5em 0 0;
    box-shadow: 0 2.5em 0 0; } }

.page-load-status {
  display: none;
  /* hidden by default */
  padding-top: 20px;
  text-align: center;
  color: #777; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slide-dots {
  text-align: center;
  height: 5px;
  margin: auto; }
  .slide-dots li {
    display: inline-block;
    height: 5px;
    margin: 0 8px; }
    .slide-dots li button {
      position: relative;
      text-indent: -9999px; }
      .slide-dots li button:before {
        content: '';
        display: block;
        width: 5px;
        height: 5px;
        background-color: #fff;
        text-indent: 0px;
        position: absolute;
        top: 0;
        left: 0; }
    .slide-dots li.slick-active button:before {
      background-color: #e60815; }

.u-sp-hidden {
  display: none; }

.u-skew5 {
  -webkit-transform: skew(-5deg) rotate(-5deg);
  -ms-transform: skew(-5deg) rotate(-5deg);
  transform: skew(-5deg) rotate(-5deg);
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom; }

.u-skew5__inner {
  -webkit-transform: skew(5deg) rotate(5deg);
  -ms-transform: skew(5deg) rotate(5deg);
  transform: skew(5deg) rotate(5deg);
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom; }

.alert {
  border:3px solid #FF0000;
  width:80%;
  margin:0 auto 40px;
  padding:5px;
  color:#a94442;
  background-color: #f2dede;
  font-family: "Raleway", sans-serif;
  border-radius: 4px;
}
.alert h1 {
  display:block; 
  margin-bottom: 20px;
}

@media only screen and (min-width: 321px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ } }

@media only screen and (min-width: 414px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ } }

@media only screen and (min-width: 500px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ } }

@media only screen and (min-width: 560px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ }
    p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 27px;
      letter-spacing: 0.7px;
      letter-spacing: 1.6px; }
  a:hover {
    opacity: .6; }
    a:hover img {
      opacity: .8; }
  a.c-btn:hover {
    opacity: .8; }
    .l-inner {
      width: 100%;
      max-width: 840px;
      padding: 0 20px; }
    .l-footer {
      padding-bottom: 50px; }
      .l-footer p {
        width: 50%; }
    .l-footer .l-inner {
      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; }
    .l-footer__links {
      width: 300px;
      margin: 0;
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
      -ms-flex-order: 2;
      order: 2; }
    .l-footer__item {
      width: 133px; }
    .c-btn {
      width: 400px;
      height: 60px;
      border-radius: 30px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1em;
      letter-spacing: 0; }
      .c-btn:before {
        border-width: 7px 0 7px 12.1px;
        left: 54px; }
    .c-eventHeading {
      font-size: 40px;
      font-size: 4rem;
      line-height: 1em;
      letter-spacing: 2px; }
      .c-eventHeading span {
        margin-top: 24px; }
        .c-eventHeading span:before {
          top: -18px; }
    .c-label {
      font-size: 17px;
      font-size: 1.7rem;
      line-height: 30px;
      letter-spacing: 3.4px;
      padding: 0 5px; }
    .p-about {
      padding: 72px 0 90px;
      overflow: hidden; }
    .p-about__inner {
      border-radius: 15px;
      padding: 100px 7% 90px; }
    .p-about__content {
      margin-bottom: 90px; }
    .p-about__content2 {
      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: end;
      -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      margin-bottom: 60px; }
    .p-about__content2 .p-about__title {
      width: 351px; }
    .p-about__content2 .p-about__text {
      width: 351px; }
    .p-about__heading {
      width: 254px;
      top: -45px;
      left: -20px; }
    .p-about__title {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 40px;
      letter-spacing: 1.2px;
      margin-bottom: 28px; }
    .p-about__text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 29px;
      letter-spacing: 0;
      width: 246px;
      white-space: nowrap; }
    .p-about__figure1 {
      position: absolute;
      top: -125px;
      left: 356px;
      width: 425px; }
    .p-about__figure2 {
      position: absolute;
      top: -17px;
      left: auto;
      right: 393px;
      width: 460px; }
    .p-about__invitation--title {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 28px;
      letter-spacing: 0.9px; }
      .p-about__invitation--title:before {
        left: 75px;
        width: 109px;
        -webkit-transform: rotate(54deg) translate3d(0, 0, 0);
        transform: rotate(54deg) translate3d(0, 0, 0); }
      .p-about__invitation--title:after {
        right: 85px;
        width: 109px;
        -webkit-transform: rotate(-54deg) translate3d(0, 0, 0);
        transform: rotate(-54deg) translate3d(0, 0, 0); }
    .p-about__invitation {
      width: 89%;
      left: auto;
      margin: 0 auto 50px; }
    .p-about__message {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 28px;
      letter-spacing: 0.9px;
      margin-bottom: 19px; }
    .p-about__copy {
      font-size: 30px;
      font-size: 3rem;
      line-height: 28px;
      letter-spacing: 1.5px;
      margin-bottom: 31px; }
    .p-about__figure {
      width: 74%;
      left: auto;
      margin: auto; }
    .p-aboutHeader {
      background: #000 url("../img/about/main_bg_pc.jpg") no-repeat center center;
      background-size: cover;
      height: 250px; }
    .p-aboutHeader__heading {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1em;
      letter-spacing: 16px;
      margin-left: 27px; }
      .p-aboutHeader__heading span {
        border-bottom: solid 5px #ffffff;
        padding-bottom: 7px; }
    .p-action {
      padding: 55px 0 100px; }
    .p-action__lead {
      font-size: 20px;
      font-size: 2rem;
      line-height: 38px;
      letter-spacing: 2px;
      margin-bottom: 54px; }
    .p-action__list dt {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 34px;
      letter-spacing: 1.6px; }
    .p-action__list dt {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 34px;
      letter-spacing: 1.8px; }
    .p-action__list dd {
      margin-bottom: 47px; }
    .p-actionHeader {
      height: 250px;
      overflow: hidden; }
      .p-actionHeader .l-inner {
        background: none;
        max-width: 840px;
        height: 250px;
        padding: 0 20px; }
    .p-actionHeader__heading {
      margin: 0 0 0 0;
      color: #000;
      font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", dnp-shuei-gothic-gin-std, sans-serif; }
      .p-actionHeader__heading span {
        display: inline; }
      .p-activity:after {
        background: #CDDAFF url("../img/about/footer_image_pc.jpg") no-repeat center center;
        background-size: cover;
        padding: 0;
        height: 280px; }
    .p-activity__heading {
      font-size: 60px;
      font-size: 6rem;
      line-height: 1em;
      letter-spacing: 3px;
      margin: -78px 0 43px; }
      .p-activity__heading:after {
        width: 146px; }
    .p-activity__lead {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1em;
      letter-spacing: 2.4px;
      margin-bottom: 45px; }
    .p-activity__lists {
      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;
      width: 100%;
      max-width: 840px;
      margin-bottom: 74px;
      padding: 0 20px; }
    .p-activity__card {
      width: 45%;
      margin-bottom: 40px;
      padding: 40px 5% 35px;
      min-height: 250px; }
      .p-activity__card:last-child {
        margin-bottom: 40px; }
    .p-activity__title {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 30px;
      letter-spacing: 1.2px; }
      .p-activity__title:before {
        left: -14.5%; }
    .p-activity__title--small {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 30px;
      letter-spacing: 1.2px; }
    .p-activity__card--blue {
      padding: 35px 5% 0; }
      .p-activity__card--blue .p-activity__text {
        margin-bottom: 1.2em; }
    .p-article {
      padding: 150px 0 65px; }
    .p-article .p-article__info {
      margin-bottom: 25px; }
    .p-article__wrap {
      padding-bottom: 104px;
      margin-bottom: 57px; }
    .p-article__title {
      font-size: 20px;
      font-size: 2rem;
      line-height: 35px;
      letter-spacing: 0;
      margin-bottom: 43px;
      padding-bottom: 22px;
      border-bottom: dashed 1px #000000; }
    .p-article__body p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 0.7px;
      margin-bottom: 2.5em; }
    .p-article__body .wp-block-image {
      margin-bottom: 4em; }
  .p-article__body .wp-block-column:not(:first-child) {
    margin-left: 40px; }
    .p-article__body .wp-block-table {
      margin-bottom: 3em; }
    .p-article__body td {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 0.7px; }
    .p-article__body td:first-child {
      white-space: nowrap; }
    .p-pagination__item {
      width: 25%; }
  .p-pagination--prev {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1; }
  .p-pagination--next {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3; }
    .p-pagination--back {
      width: 25%;
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
      -ms-flex-order: 2;
      order: 2; }
    .p-caseStudy {
      padding: 98px 0 0 0; }
    .p-caseStudy__heading {
      width: 442px;
      margin: 0 auto 67px; }
    .p-caseStudy__case {
      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;
      margin-bottom: 95px;
      padding: 0 0 74px; }
      .p-caseStudy__case:last-child {
        margin-bottom: 106px; }
  .p-caseStudy__case2 .p-caseStudy__content {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    margin-bottom: 20px; }
  .p-caseStudy__content {
    width: 45.7%; }
    .p-caseStudy__text {
      margin-bottom: 23px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 28px;
      letter-spacing: 0.7px; }
    .p-caseStudy__memberComment {
      margin-bottom: 29px; }
      .p-caseStudy__memberComment dd {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 28px;
        letter-spacing: 0.7px; }
    .p-caseStudy__comment {
      padding: 17px 5% 50px 8%; }
  .p-caseStudy__image {
    width: 45%; }
    .p-caseStudy__teacher {
      -webkit-box-ordinal-group: 4;
      -webkit-order: 3;
      -ms-flex-order: 3;
      order: 3;
      padding: 40px 5% 20px;
      width: 100%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .p-caseStudy__teacher--profile {
      position: relative;
      display: block;
      width: 21%;
      margin-right: 7%; }
      .p-caseStudy__teacher--profile img {
        width: 100%;
        margin-right: 0; }
      .p-caseStudy__teacher--profile .p-caseStudy__teacher--name {
        position: absolute;
        top: 0;
        left: 132%;
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1em;
        letter-spacing: 0.85px;
        min-width: 200px; }
  .p-caseStudy__teacher--text {
    width: 73.5%;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    letter-spacing: 0.7px;
    margin-top: 34px; }
    .p-dxDescription {
      background: url("../img/diagnosis/balloon_bg_pc.jpg") no-repeat center center;
      background-size: cover; }
    .p-dxDescription__heading {
      background: url("../img/diagnosis/balloon_pc.svg") no-repeat center center;
      background-size: 100% 100%;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 28px;
      letter-spacing: 1.8px; }
    .p-dx_wrap {
      padding: 45px; }
    .p-dxCardBox {
      max-width: 600px;
      margin: 0 auto 50px; }
    .p-dxCard__inner {
      padding: 0 5% 60px; }
    .p-dxImage {
      margin-bottom: 35px; }
    .p-diagTitle {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 38px;
      letter-spacing: 2.5px; }
      .p-diagTitle span {
        font-size: 20px;
        font-size: 2rem;
        line-height: 32px;
        letter-spacing: 2px; }
      .p-diagTitle:after {
        margin-top: 16px; }
    .p-dxQuestion {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 27px;
      letter-spacing: 0.8px;
      padding: 1em 1em 1em 90px;
      min-height: 70px; }
      .p-dxQuestion:before {
        width: 70px;
        height: 100%; }
    .p-diagnosisHeader {
      background: #ff6e7c;
      height: 250px;
      overflow: hidden; }
      .p-diagnosisHeader .l-inner {
        background: none;
        max-width: 840px;
        padding: 0 20px; }
      .p-diagnosisHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 50%;
        content: '';
        width: 600px;
        height: 250px;
        background: #ff6e7c url("../img/diagnosis/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-diagnosisHeader:after {
        display: none; }
    .p-diagnosisHeader__heading {
      margin-top: 13px; }
      .p-diagnosisHeader__heading small {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 0px;
        letter-spacing: 1.1px;
        margin-bottom: 20px; }
      .p-diagnosisHeader__heading span {
        padding-bottom: 7px;
        margin-bottom: 10px;
        font-size: 50px;
        font-size: 5rem;
        line-height: 1em;
        letter-spacing: 5px; }
    .p-diagnosisResult {
      padding: 50px 0 80px; }
    .p-diagnosisResult__inner {
      background-color: #fff;
      padding-bottom: 20px; }
    .p-dxResultCard {
      width: 75%;
      margin: auto;
      padding: 50px 0 0; }
    .p-dxResultCard__title {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1em;
      letter-spacing: 2px;
      margin-bottom: 8px; }
    .p-dxResultCard__name {
      font-size: 40px;
      font-size: 4rem;
      line-height: 60px;
      letter-spacing: 4px;
      margin-bottom: 20px; }
  .p-dxResultCard__image {
    width: 390px;
    margin: auto; }
    .p-dxResultCard__content {
      padding: 40px 0; }
    .p-dxResult__sns {
      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: 40px; }
      .p-dxResult__sns li {
        width: 31.66%; }
    .p-dxResultInfo {
      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: 75%;
      margin: 0 auto 55px;
      padding: 30px 5% 45px; }
    .p-dxResultInfo p {
      width: 75%; }
    .p-dxResultInfo__heading {
      width: 80px;
      font-size: 19px;
      font-size: 1.9rem;
      line-height: 29px;
      letter-spacing: 1.9px; }
    .p-dxResultTry {
      width: 75%;
      margin: auto;
      padding: 0 0 70px; }
    .p-dxResultTry__header {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1em;
      letter-spacing: 2.5px;
      margin-bottom: 40px; }
      .p-dxResultTry__header:after {
        margin: 20px auto 0; }
    .p-diagnosisResultHeader {
      background: #ffffff url("../img/diagnosis/result_bg_pc.jpg") no-repeat center top;
      background-size: cover;
      height: 150px;
      overflow: hidden; }
    .p-diagnosisResultHeader__heading {
      width: 400px;
      height: 60px;
      font-size: 30px;
      font-size: 3rem;
      line-height: 0px;
      letter-spacing: 6px; }
    .p-event {
      padding: 128px 0 65px 0;
      overflow: hidden; }
    .p-event__box {
      width: 100%; }
    .p-event__heading {
      font-size: 60px;
      font-size: 6rem;
      line-height: 1em;
      letter-spacing: 3px;
      margin-bottom: 26px; }
    .p-event__lead {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px;
      margin-bottom: 17px; }
    .p-event__tag {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 0.7px;
      max-width: 290px;
      margin-bottom: 30px; }
    .p-event__link {
      margin: 0;
      width: 100%;
      max-width: 320px;
      height: 68px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1em;
      letter-spacing: 0.9px;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      padding-left: 20%;
      border-radius: 34px; }
      .p-event__link:before {
        left: 10%; }
    .p-event__figure {
      position: absolute;
      top: 0;
      right: 400px;
      width: 600px;
      height: 360px; }
  .p-event__box--event {
    margin-bottom: 152px; }
  .p-event__box--event .p-event__content {
    width: 320px;
    padding-top: 38px;
    margin-left: calc(100% - 320px); }
  .p-event__box--myevent .p-event__content {
    padding-top: 26px; }
    .p-event__box--myevent .p-event__link {
      padding-left: 58px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1em;
      letter-spacing: 0.8px; }
  .p-event__box--myevent .p-event__figure {
    position: absolute;
    top: 0;
    left: 400px;
    width: 600px;
    height: 360px; }
    .p-eventArchives {
      padding: 89px 0; }
    .p-eventArchives__header {
      margin-bottom: 54px; }
  .p-eventArchives__lists {
    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-eventArchives__card {
      position: relative;
      width: 45%;
      margin-bottom: 65px; }
    .p-eventArchives__image {
      margin-bottom: 9px; }
    .p-eventArchives__title {
      margin-bottom: 14px; }
    .p-eventArchives__text {
      margin-bottom: 60px; }
    .p-eventArchives__link {
      position: absolute;
      bottom: 0;
      margin: 0; }
    .p-eventHeader {
      background: #00A1FF;
      height: 250px;
      overflow: hidden; }
      .p-eventHeader .l-inner {
        background: none;
        max-width: 840px;
        padding: 0 20px; }
      .p-eventHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 50%;
        content: '';
        width: 600px;
        height: 250px;
        background: #00A1FF url("../img/event/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-eventHeader:after {
        display: none; }
    .p-eventHeader__heading {
      margin-top: 13px; }
      .p-eventHeader__heading small {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 0px;
        letter-spacing: 1.1px;
        margin-bottom: 20px; }
      .p-eventHeader__heading span {
        padding-bottom: 7px;
        font-size: 50px;
        font-size: 5rem;
        line-height: 1em;
        letter-spacing: 5px; }
    .p-eventInfo {
      padding: 56px 0 50px 0; }
    .p-eventInfo__card {
      margin-bottom: 20px; }
  .p-eventInfo__inner {
    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-eventInfo__image {
      width: 45%; }
  .p-eventInfo__content {
    width: 50%; }
    .p-eventInfo__title {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 32px;
      letter-spacing: 1.8px;
      margin-bottom: 7px; }
    .p-eventInfo__text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 27px;
      letter-spacing: 0.7px; }
    .p-eventLead {
      padding: 65px 0 67px; }
      .p-eventLead p {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 38px;
        letter-spacing: 1.8px; }
    .p-follow {
      padding: 65px 0 50px;
      overflow: hidden; }
    .p-follow__heading {
      font-size: 60px;
      font-size: 6rem;
      line-height: 1em;
      letter-spacing: 3px;
      margin-bottom: 29px; }
    .p-follow__lead {
      margin-bottom: 34px; }
    .p-follow__links {
      width: 234px;
      margin: 0 0 0 24px; }
  .p-follow__figure {
    width: 55%;
    position: absolute;
    top: -21px;
    left: 430px; }
    .p-guest__heading {
      margin: 0 0 20px; }
      .p-guest__heading span {
        width: 215px; }
    .p-guest__wrapper {
      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: 35px 3% 30px; }
    .p-guest__card {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 43.22%; }
    .p-guest__card:nth-child(3), .p-guest__card:nth-child(4) {
      margin-bottom: 0; }
    .p-guest__image {
      width: 35%;
      margin: 0 5% 0 0; }
  .p-guest__content {
    width: 60%; }
    .p-join {
      background: #000 url("../img/top/join_bg_pc.jpg") no-repeat center top;
      background-size: cover;
      height: 250px;
      padding: 0; }
    .p-join__heading {
      font-size: 120px;
      font-size: 12rem;
      line-height: 1em;
      letter-spacing: 0;
      margin: 0 0 25px; }
    .p-kameikou {
      margin-top: 80px; }
    .p-kameikou__header {
      height: 550px;
      background: #ffffff url("../img/kameikou/main_bg_pc.jpg") no-repeat center center;
      background-size: cover; }
    .p-kameikou__heading {
      width: 96%;
      max-width: 700px; }
    .p-kameikouOverview {
      padding: 60px 0 50px; }
      .p-kameikouOverview h3 {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1em;
        letter-spacing: 1.5px;
        margin-bottom: 26px; }
      .p-kameikouOverview p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 25px;
        letter-spacing: 0; }
    .p-kameikouLook {
      padding: 80px 0 70px; }
      .p-kameikouLook p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 25px;
        letter-spacing: 0.7px; }
      .p-kameikouLook .c-btn {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1em;
        letter-spacing: 0;
        width: 240px;
        height: 40px;
        padding: 0 0 0 10px; }
        .p-kameikouLook .c-btn:before {
          left: 24px; }
    .p-kameikouLook__inner {
      width: 100%;
      max-width: 860px;
      padding: 0 30px; }
    .p-kameikouLook__heading {
      font-size: 30px;
      font-size: 3rem;
      line-height: 42px;
      letter-spacing: 3px;
      text-align: left; }
  .p-kameikouLook__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-kameikouLook__content {
    width: 50%;
    margin-bottom: 40px; }
  .p-kameikouLook__content.order2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2; }
  .p-kameikouLook__content.content2 p {
    margin-top: 50px; }
  .p-kameikouLook__image {
    width: 45%; }
    .p-kameikouLook__image figcaption {
      text-align: right; }
    .p-kameikouEvent {
      padding: 70px 0 50px; }
      .p-kameikouEvent .p-news__card {
        width: 45%;
        margin-bottom: 50px; }
        .p-kameikouEvent .p-news__card:hover .p-news__card--title {
          text-decoration: none; }
      .p-kameikouEvent .p-news__info {
        margin-bottom: 15px; }
      .p-kameikouEvent .p-news__card--title {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 26px;
        letter-spacing: 0;
        text-decoration: underline; }
    .p-kameikouEvent__heading {
      font-size: 40px;
      font-size: 4rem;
      line-height: 1em;
      letter-spacing: 0; }
      .p-kameikouEvent__heading span {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1em;
        letter-spacing: 0;
        margin-top: 32px; }
    .p-kameikou__pankuzu {
      margin-top: 80px; }
    .p-kameikou__pankuzu .l-header__inner {
      padding-top: 0;
      padding-bottom: 0;
      height: auto; }
    .p-kameikouArchive {
      padding-top: 70px; }
      .p-kameikouArchive .p-eventArchives__card {
        width: 30%;
        margin-bottom: 80px; }
      .p-kameikouArchive .p-eventArchives__title {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 28px;
        letter-spacing: 0;
        margin-bottom: 8px; }
      .p-kameikouArchive .eventArchives__text {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 27px;
        letter-spacing: 0; }
      .p-kameikouArchive .p-eventArchives__lists:after {
        content: '';
        display: block;
        width: 30%; }
    .p-kameikouArchive__link {
      text-align: right;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 20px;
      letter-spacing: 0;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      margin-top: 0; }
    .p-kameikou4Teacher {
      padding: 65px 0; }
      .p-kameikou4Teacher h2 {
        font-size: 40px;
        font-size: 4rem;
        line-height: 1em;
        letter-spacing: 2px; }
    .p-kameikouLogo {
      padding: 80px 0 100px; }
    .p-kameikouLogo p {
      text-align: center; }
      .p-kameikouLogo .c-btn {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1em;
        letter-spacing: 0;
        width: 240px;
        height: 40px;
        padding: 0 0 0 10px;
        margin-top: 35px; }
        .p-kameikouLogo .c-btn:before {
          left: 24px; }
    .p-kameikouLogo__heading {
      font-size: 40px;
      font-size: 4rem;
      line-height: 1em;
      letter-spacing: 2px;
      margin-bottom: 30px; }
      .p-kameikouLogo__heading span {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1em;
        letter-spacing: 1.8px;
        margin-top: 16px; }
    .p-kameikouLogo__content {
      height: 200px; }
    .p-kameikouLogo1 {
      width: 134px; }
    .p-kameikouLogo2 {
      width: 192px; }
    .p-kameikouTaxonomy {
      padding: 150px 0; }
    .p-article__kameikou {
      padding-top: 50px; }
    .p-media {
      overflow: hidden;
      padding: 74px 0 70px; }
    .p-media .l-inner {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
  .p-media__content {
    width: 48%; }
  .p-media__figure {
    position: absolute;
    top: 27px;
    left: 51%;
    width: 600px;
    height: 360px; }
    .p-media__heading {
      font-size: 60px;
      font-size: 6rem;
      line-height: 1em;
      letter-spacing: 3px;
      margin-bottom: 26px; }
    .p-media__lead {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px;
      margin-bottom: 9px; }
    .p-media__tag {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 0.7px;
      max-width: 290px;
      margin-bottom: 26px; }
    .p-media__link {
      margin: 0;
      width: 100%;
      max-width: 320px;
      height: 68px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1em;
      letter-spacing: 0.9px;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      padding-left: 15%;
      border-radius: 34px; }
      .p-media__link:before {
        left: 10%; }
    .p-mediaHeader {
      background: #A3A3A3;
      height: 250px;
      overflow: hidden; }
      .p-mediaHeader .l-inner {
        background: none;
        max-width: 880px;
        padding: 0 20px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .p-mediaHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 430px;
        content: '';
        width: 600px;
        height: 250px;
        background: #A3A3A3 url("../img/media/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-mediaHeader:after {
        display: none; }
    .p-mediaHeader__heading {
      font-size: 54px;
      font-size: 5.4rem;
      line-height: 1em;
      letter-spacing: 5.4px;
      padding-bottom: 7px;
      margin-bottom: 25px; }
    .p-mediaLead {
      padding: 64px 0 52px; }
    .p-mediaLead__text {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 38px;
      letter-spacing: 1.8px; }
    .p-mediaPickUp__check {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1em;
      letter-spacing: 2px;
      margin-bottom: 80px; }
      .p-mediaPickUp__check:after {
        left: 48%;
        bottom: -38px;
        border-width: 60px 15px 0 15px;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); }
    .p-mediaPickUp__heading {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1em;
      letter-spacing: 2px;
      margin-bottom: 25px; }
      .p-mediaPickUp__heading img {
        width: 163px;
        margin: 0 auto 30px; }
    .p-mediaPickUp__lists {
      margin-bottom: 5px;
      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-mediaPickUp__item {
      width: 47.5%;
      margin-bottom: 30px; }
    .p-mediaPickUp__text {
      margin-bottom: 19px; }
    .p-mediaPickUp__link {
      margin-bottom: 74px; }
    .p-mediaYoutube {
      padding: 80px 0 90px; }
    .p-mediaYoutube__heading {
      width: 200px;
      margin-bottom: 35px; }
    .p-mediaYoutube__link {
      margin-bottom: 22px; }
    .p-meeting {
      padding: 63px 0 49px; }
  .p-meeting__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .p-meeting__heading {
      font-size: 44px;
      font-size: 4.4rem;
      line-height: 1em;
      letter-spacing: 2.2px;
      margin-bottom: 18px; }
    .p-meeting__lead {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1em;
      letter-spacing: 2px;
      text-align: left;
      margin-bottom: 29px; }
    .p-meeting__text {
      width: auto;
      margin: 0; }
  .p-meeting__content {
    padding: 20px 0 0 0;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2; }
  .p-meeting__image {
    width: 45%;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    margin-right: 5%; }
    .p-myEventContact {
      padding: 0 0 75px; }
    .p-myEventFooter__check {
      padding: 71px 0 80px; }
    .p-myEventCheck__image {
      width: 96%;
      max-width: 600px; }
    .p-myEventFooter__info {
      background: #ffffff url("../img/my-event/footer_bg_pc.jpg") no-repeat center center;
      background-size: cover;
      height: 250px; }
    .p-myEventFooter__text {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1em;
      letter-spacing: 2.4px;
      width: 400px;
      height: 38px; }
    .p-myEventHeader {
      background: #000C84;
      height: 250px;
      overflow: hidden; }
      .p-myEventHeader .l-inner {
        background: none;
        max-width: 840px;
        padding: 0 20px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .p-myEventHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 430px;
        content: '';
        width: 600px;
        height: 250px;
        background: #000C84 url("../img/my-event/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-myEventHeader:after {
        display: none; }
    .p-myEventHeader__heading {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 0px;
      letter-spacing: 1.2px;
      margin-top: 5px; }
      .p-myEventHeader__heading small {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 0px;
        letter-spacing: 1.2px;
        margin-top: -23px; }
      .p-myEventHeader__heading span {
        font-size: 52px;
        font-size: 5.2rem;
        line-height: 1em;
        letter-spacing: 5.2px;
        padding-bottom: 7px;
        margin-bottom: 25px; }
    .p-myEventManual {
      padding: 61px 0 52px; }
    .p-myEventManual__heading {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px; }
    .p-myEventManual__text {
      text-align: center;
      margin-bottom: 38px; }
  .p-myEventManual__link {
    display: block;
    width: 75%;
    margin: auto; }
    .p-myEventTry {
      padding: 80px 0 66px; }
    .p-myEventTry__heading {
      width: 345px;
      margin: 0 auto 19px; }
    .p-myEventTry__lead {
      margin-bottom: 33px; }
  .p-myEventTry__content {
    width: 44%; }
    .p-myEventTry__card {
      margin-bottom: 49px; }
    .p-myEventTry__cardInner {
      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: 43px 4% 39px; }
    .p-myEventTry__title {
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 31px;
      letter-spacing: 1.8px;
      margin: 0 0 26px;
      padding-left: 92px; }
      .p-myEventTry__title img {
        position: absolute;
        top: 0;
        left: 0; }
    .p-myEventTry__link {
      width: 100%;
      height: auto;
      padding: 12px 1.5em 12px 20px;
      margin: 0; }
      .p-myEventTry__link:before {
        border-width: .4em 0 .4em .6em; }
  .p-myEventTry__image {
    width: 48%;
    margin: 0 2% 0 0; }
  .p-myEventTry__case1 .p-myEventTry__title {
    max-width: 300px; }
  .p-myEventTry__case3 .p-myEventTry__title {
    max-width: 267px; }
  .p-myEventTry__case4 .p-myEventTry__title {
    max-width: 300px; }
    .p-news {
      padding-top: 75px; }
  .p-news__header {
    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;
    max-width: 840px;
    padding: 0 20px;
    margin: 0 auto 20px;
    height: 100px; }
    .p-news__heading {
      width: 240px;
      margin: 0 20px 0 0; }
    .p-news__banner {
      width: 65%;
      margin: 0; }
  .p-news__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-news__list:after {
      content: '';
      display: block;
      width: 30%; }
    .p-news__card {
      width: 30%; }
    .p-news__info {
      margin-bottom: 18px; }
    .p-news__card--title {
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 20px;
      letter-spacing: 0; }
    .p-news__link {
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 1em;
      letter-spacing: 0;
      position: absolute;
      top: -58px;
      left: 12px; }
    .p-news__note {
      padding: 5px 0 0 20px;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
      -ms-flex: 1;
      flex: 1 1; }
      .p-news__note p {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        letter-spacing: 0; }
    .p-news__note a {
      width: 38%; }
  .p-topNews__inner {
    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-topNews__card {
      margin-bottom: 20px; }
    .p-topNews__card--image {
      width: 40%; }
  .p-topNews__info {
    width: 55%; }
    .p-topNews__title {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 30px;
      letter-spacing: 0;
      margin-bottom: 15px; }
    .p-topNews__sub {
      margin-bottom: 5px; }
    .p-newsArchive__heading {
      width: 245px;
      margin: 0  auto 66px; }
    .p-offMeeting {
      padding: 59px 0 78px; }
    .p-offMeeting__heading {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px; }
    .p-offMeeting__text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 28px;
      letter-spacing: 0.7px;
      text-align: center; }
  .p-offMeeting__link {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1em;
    letter-spacing: 0; }
    .p-photos {
      padding: 73px 0 109px; }
    .p-photos__heading {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px;
      margin: 0 0 7px; }
    .p-photos__text {
      text-align: center;
      margin-bottom: 55px; }
    .p-photos__item {
      margin-bottom: 32px; }
    .p-photosAlbum {
      background: #ffffff url("../img/photos/album_bg_pc.jpg") no-repeat center center;
      background-size: cover;
      padding: 114px 20px 123px; }
    .p-photosAlbum__inner {
      padding: 36px 4% 32px; }
    .p-photosAlbum__heading {
      width: 336px;
      margin: 0 auto 12px; }
    .p-photosAlbum__text {
      margin-bottom: 18px; }
  .p-photosAlbum__banner {
    width: 300px;
    margin: auto; }
    .p-photosContest {
      background: #ffffff url("../img/photos/contest_bg_pc.jpg") no-repeat center top;
      background-size: cover;
      padding: 114px 20px 123px; }
      .p-photosContest .l-inner {
        max-width: 800px; }
    .p-photosContest__inner {
      padding: 44px 0 44px; }
    .p-photosContest__heading {
      margin: 0 auto 22px;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1em;
      letter-spacing: 2.4px; }
    .p-photosContest__text {
      margin-bottom: 20px; }
  .p-photosContest__banner {
    display: block;
    width: 420px;
    margin: auto; }
    .p-photosHeader {
      background: #666666;
      height: 250px;
      overflow: hidden; }
      .p-photosHeader .l-inner {
        background: none;
        max-width: 880px;
        padding: 0 20px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .p-photosHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 430px;
        content: '';
        width: 600px;
        height: 250px;
        background: #666666 url("../img/photos/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-photosHeader:after {
        display: none; }
    .p-photosHeader__heading {
      font-size: 54px;
      font-size: 5.4rem;
      line-height: 1em;
      letter-spacing: 5.4px;
      padding-bottom: 7px;
      margin-bottom: 25px; }
    .p-privilege {
      padding: 87px 0 0; }
    .p-privilege__card {
      position: relative;
      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;
      margin-bottom: 170px; }
    .p-privilege__card:last-child {
      margin-bottom: 15px; }
    .p-privilege__number {
      width: 11.25%;
      margin: -27px 28px 0 0; }
    .p-privilege__title {
      font-size: 20px;
      font-size: 2rem;
      line-height: 36px;
      letter-spacing: 1px;
      text-align: left; }
    .p-privilege__info {
      margin-bottom: 15px;
      text-align: left; }
    .p-privilege__text {
      width: 180%; }
    .p-privilege__link {
      margin: 0 0 12px; }
  .p-privilege__content {
    width: 35%; }
  .p-privilege__image {
    position: absolute;
    top: 0;
    right: 0;
    width: 45%; }
    .p-privilege2 {
      margin-bottom: 122px; }
      .p-privilege2 .p-privilege__title {
        margin-bottom: 14px; }
      .p-privilege2 .p-privilege__image {
        margin: 0; }
    .p-privilege3 .p-privilege__title {
      margin-bottom: 42px; }
    .p-reportArchives {
      padding: 89px 0; }
    .p-reportArchives__header {
      margin-bottom: 54px; }
  .p-reportArchives__lists {
    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-reportArchives__card {
      position: relative;
      width: 45%;
      margin-bottom: 65px; }
    .p-reportArchives__image {
      margin-bottom: 9px; }
    .p-reportArchives__title {
      margin-bottom: 14px; }
    .p-reportArchives__text {
      margin-bottom: 60px; }
    .p-reportArchives__link {
      position: absolute;
      bottom: 0;
      margin: 0; }
    .p-reportHeader {
      background: #F2F2F2;
      height: 250px;
      overflow: hidden; }
      .p-reportHeader .l-inner {
        background: none;
        max-width: 840px;
        padding: 0 20px; }
      .p-reportHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 50%;
        content: '';
        width: 600px;
        height: 250px;
        background: #F2F2F2 url("../img/report/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-reportHeader:after {
        display: none; }
    .p-reportHeader__heading {
      margin: 50px 0 0 0;
      color: #000; }
      .p-reportHeader__heading span {
        padding-bottom: 7px;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1em;
        letter-spacing: 2px;
        color: #000;
        border-top: solid 4px #000;
        margin-top: 30px;
        padding-top: 13px; }
    .p-reportLead {
      padding: 66px 0 82px; }
  .p-reportLead__inner {
    max-width: 640px;
    padding: 0 20px; }
    .p-reportLead__heading {
      width: 92%; }
    .p-schoolAbout {
      padding: 58px 0 0; }
      .p-schoolAbout:after {
        background: #ffffff url("../img/school/school_image_pc.jpg") no-repeat center center;
        background-size: cover;
        margin-top: 65px;
        padding: 0;
        height: 250px; }
    .p-schoolAbout__heading {
      margin: 0 auto 21px; }
    .p-schoolAbout__lead {
      font-size: 20px;
      font-size: 2rem;
      line-height: 38px;
      letter-spacing: 2px;
      margin-bottom: 17px; }
    .p-schoolFooter {
      padding: 73px 0 75px; }
    .p-schoolHeader {
      background: #000000;
      height: 250px;
      overflow: hidden; }
      .p-schoolHeader .l-inner {
        background: none;
        max-width: 880px;
        padding: 0 20px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .p-schoolHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 430px;
        content: '';
        width: 600px;
        height: 250px;
        background: #000000 url("../img/school/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-schoolHeader:after {
        display: none; }
    .p-schoolHeader__heading {
      font-size: 48px;
      font-size: 4.8rem;
      line-height: 1em;
      letter-spacing: 4.8px; }
      .p-schoolHeader__heading span {
        margin-bottom: 10px;
        padding-bottom: 2px; }
    .p-scroll {
      display: block;
      position: relative;
      text-align: center;
      height: 4vh; }
    .p-snsFollow {
      padding: 88px 0 0; }
    .p-snsFollow__heading {
      font-size: 50px;
      font-size: 5rem;
      line-height: 1em;
      letter-spacing: 2.5px;
      margin: 0 auto 38px;
      padding-bottom: 13px;
      width: 320px;
      border-bottom: solid 5px #000000; }
    .p-snsFollow_lead {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1em;
      letter-spacing: 1.4px;
      margin: 0 0 37px; }
    .p-snsFollow__lists {
      width: 100%;
      max-width: 840px;
      padding: 0 20px; }
    .p-snsFollow__item {
      width: 20%; }
    .p-snsFollow__figure {
      margin-bottom: 14px; }
    .p-snsFollow__title {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1em;
      letter-spacing: 2px; }
    .p-snsFollow__tag {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 1.4px; }
    .p-snsHeader {
      background: #FF0043;
      height: 250px;
      overflow: hidden; }
      .p-snsHeader .l-inner {
        background: none;
        max-width: 840px;
        padding: 0 20px; }
      .p-snsHeader .l-inner:after {
        position: absolute;
        top: 0;
        left: 50%;
        content: '';
        width: 600px;
        height: 250px;
        background: #FF0043 url("../img/sns/main_bg_pc.jpg") no-repeat center top;
        background-size: contain; }
      .p-snsHeader:after {
        display: none; }
    .p-snsHeader__heading {
      margin-top: 13px; }
      .p-snsHeader__heading small {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 0px;
        letter-spacing: 1.1px;
        margin-bottom: 20px; }
      .p-snsHeader__heading span {
        padding-bottom: 7px;
        margin-bottom: 10px;
        font-size: 50px;
        font-size: 5rem;
        line-height: 1em;
        letter-spacing: 5px; }
    .p-snsTalk {
      background: #FFCFCF url("../img/sns/talk_bg_pc.jpg") no-repeat center top;
      background-size: 1335px 1700px;
      padding: 90px 0 110px; }
      .p-snsTalk .l-inner {
        width: 100%; }
    .p-snsTalk__inner {
      padding: 96px 7% 63px; }
    .p-snsTalk__heading {
      width: 406px;
      top: -55px; }
    .p-snsTalk__lead {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px;
      width: 380px;
      margin: 0 auto 28px; }
    .p-snsTalk__text {
      text-align: center;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 0.7px;
      margin-bottom: 39px; }
    .p-snsTalk__rule {
      margin-bottom: 46px; }
    .p-snsTalk__lists {
      max-width: 600px;
      margin: 0 auto 28px;
      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-snsTalk__item {
      width: 46.66%;
      margin-bottom: 25px; }
    .p-snsTalk__link {
      width: 320px;
      height: 68px;
      margin: 0 auto 48px;
      border-radius: 34px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1em;
      letter-spacing: 0;
      padding-right: 25px; }
      .p-snsTalk__link:before {
        margin-right: 18px; }
    .p-snsTalk__welcome {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 2.4px;
      margin-bottom: 32px; }
    .p-snsTalk__theme {
      max-width: 600px;
      margin: 0 auto 23px; }
    .p-snsTalk__themeLists {
      max-width: 600px;
      margin: auto; }
    .p-snsTalk__themeLists--item {
      width: 45%; }
    .p-social {
      max-width: 800px;
      padding: 10px 10px;
      margin-top: 80px; }
    .p-social__inner {
      padding: 53px 0 0 0; }
  .p-social__list {
    max-width: 600px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: auto; }
    .p-social__card {
      width: 50%;
      text-align: center;
      margin-bottom: 63px; }
    .p-social__title {
      margin-bottom: 10px; }
    .p-social__lead {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 25px;
      letter-spacing: 1.4px;
      margin-bottom: 18px; }
    .p-social__link {
      width: 240px;
      height: 40px;
      border-radius: 20px;
      margin: 0 auto 24px; }
  .p-social__card--twitter .p-social__title {
    margin-left: -71px; }
  .p-social__card--twitter .p-social__figure {
    width: 240px;
    margin: auto; }
      .p-social__card--instagram .p-social__figure {
        width: 230px; }
    .p-social__card--note {
      margin-bottom: 40px; }
      .p-social__card--note .p-social__title {
        margin: 0 0 24px -102px; }
      .p-social__card--note .p-social__lead {
        margin-bottom: 36px; }
      .p-social__card--note .p-social__banner {
        width: 170px;
        margin-bottom: 10px; }
    .p-social__card--youtube {
      margin-bottom: 40px; }
      .p-social__card--youtube .p-social__title {
        margin: 0 0 23px -10px; }
      .p-social__card--youtube .p-social__lead {
        margin-bottom: 38px; }
      .p-social__card--youtube .p-social__figure {
        width: 240px; }
    .p-social--media {
      padding-bottom: 58px; }
      .p-social--media .p-social__inner {
        padding: 53px 0 0 0; }
    .p-social--media .p-social__list {
      max-width: 700px; }
    .p-staff {
      margin-bottom: 30px; }
    .p-staffHeader {
      background: #ffffff url("../img/about/staff_bg_pc.jpg") no-repeat center center;
      background-size: cover;
      margin-bottom: 65px; }
    .p-staffHeader__heading {
      font-size: 60px;
      font-size: 6rem;
      line-height: 1em;
      letter-spacing: 3px;
      padding-bottom: 2px; }
    .p-staffLists__lead {
      margin-bottom: 46px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 25px;
      letter-spacing: 0.8px; }
    .p-staff__lists {
      width: 100%;
      max-width: 1040px;
      margin: auto;
      padding: 0 20px; }
      .p-staff__lists:after {
        content: '';
        width: 20%; }
      .p-staff__lists:before {
        content: '';
        width: 20%;
        -webkit-box-ordinal-group: 5;
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4; }
    .p-staff__card {
      width: 30%;
      margin-bottom: 68px; }
    .p-staff__profile {
      margin-bottom: 4px; }
    .p-staff__name {
      bottom: 41px;
      width: 81%; }
    .p-staff__account {
      bottom: 16px;
      width: 69%; }
    .p-staff__tag {
      width: 100%; }
    .p-summary {
      background: #FF0043 url("../img/top/summary_bg_pc.jpg") no-repeat center top;
      background-size: 1399px;
      padding: 125px 0 100px; }
      .p-summary .l-inner {
        width: 100%;
        max-width: 850px;
        min-height: 610px;
        background: transparent url("../img/top/summary_markup_pc.png") no-repeat center top;
        background-size: 850px 609px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding: 24px 0 0 0; }
        .p-summary .l-inner:before {
          display: none; }
        .p-summary .l-inner:after {
          display: none; }
  .p-summary__content {
    width: 50%;
    margin: 0 0 0 2%; }
    .p-summary__heading {
      width: 268px;
      margin: 0 0 15px; }
    .p-summary__lead {
      margin: 0 0 13px 11%;
      max-width: 335px; }
    .p-summary__text {
      margin: 0 0 40px 11%; }
    .p-summary__link {
      margin-left: 9%;
      width: 240px; }
      .p-summary__link.center{
        margin-left: auto;
      }
  .p-summary__image {
    width: 30%;
    margin: 132px 0 0 7%;
    min-width: 238px; }
    .p-summary__caption {
      text-align: left; }
    .p-supporter {
      margin-bottom: 110px; }
  .p-supporter__inner {
    max-width: 1040px;
    padding: 0 20px; }
    .p-supporter__heading {
      font-size: 30px;
      font-size: 3rem;
      line-height: 1em;
      letter-spacing: 3px; }
      .p-supporter__heading span {
        width: 360px; }
    .p-supporter__lead {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1em;
      letter-spacing: 0.8px;
      margin-bottom: 42px; }
    .p-supporter__list {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      max-width: 1040px;
      padding: 0 20px;
      margin: auto; }
    .p-supporter__item {
      width: 13%;
      margin-right: 2%;
      margin-bottom: 48px; }
      .p-supporter__item:nth-child(12), .p-supporter__item:nth-child(6) {
        margin-right: 0; }
    .p-supporter__name {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1em;
      letter-spacing: 0.24px;
      padding: 0; }
    .p-topMain {
      background: #ffffff url("../img/top/main_bg_pc.jpg") no-repeat center top;
      background-size: cover;
      margin: 0;
      min-height: 700px;
      padding: 80px 0 20px 0;
      height: 90vh; }
    .p-topMain__bg2 {
      background: #ffffff url("../img/top/main_bg2_pc.jpg") no-repeat center top;
      background-size: cover; }
    .p-topMain__inner {
      min-height: 600px;
      max-width: 1500px;
      margin: auto;
      height: 100%; }
    .p-topMain__heading {
      position: absolute;
      top: 50%;
      left: 0;
      width: 55.83%;
      height: 100%;
      min-height: 600px;
      max-height: calc(90vh - 80px);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
      .p-topMain__heading svg {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 100%; }
    .p-topMain__lead {
      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-align-content: center;
      -ms-flex-line-pack: center;
      align-content: center;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      position: absolute;
      top: 50%;
      right: 3%;
      width: 30%;
      height: 100%;
      min-height: 600px;
      max-height: calc(100vh - 80px);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
      .p-topMain__lead .p-topMain__lead--text {
        width: auto;
        height: auto;
        min-width: 100%;
        max-width: 100%;
        max-height: 100%;
        margin-bottom: 20px; }
      .p-topMain__lead .p-topMain__lead--logo {
        width: auto;
        height: auto;
        width: 95%;
        left: 3%; }
    .p-tweet {
      background: #000 url("../img/top/tweet_bg_pc.jpg") no-repeat center center;
      background-size: cover;
      margin-bottom: 0;
      height: 250px;
      padding-top: 35px; }
      .p-tweet .l-inner {
        display: block;
        position: relative;
        top: auto;
        left: auto;
        max-width: 840px;
        padding: 0 20px;
        margin: auto; }
    .p-tweet__heading {
      position: relative;
      width: 100%;
      font-size: 64px;
      font-size: 6.4rem;
      line-height: 65px;
      letter-spacing: 3.2px;
      margin: 0; }
    .p-tweet__text {
      display: inline-block;
      width: auto;
      padding: 6px 10px; }
    .p-tweet__list {
      background: #ced8fb url("../img/top/tweet_list_bg_pc.jpg") no-repeat center top;
      background-size: 1200px;
      height: 700px;
      padding: 58px 0 68px; }
    .p-tweet__list .l-inner {
      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-tweet__card {
      width: 48%;
      margin-bottom: 56px; }
    .p-tweet__place {
      margin-bottom: 11px; }
    .p-youtube {
      max-width: 600px;
      margin: 0 auto 100px; }
  .u-tablet-hidden {
    display: none; }
    .u-sp-hidden {
      display: inline-block; } }

@media only screen and (min-width: 768px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ } }

@media only screen and (min-width: 769px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ } }

@media only screen and (min-width: 960px) {
  a:active,
  a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */ }
      .l-footer p {
        width: 50%; }
    .p-about__content2 {
      padding-left: 50%; }
    .p-about__heading {
      left: -85px; }
    .p-news__card {
      width: 30%; }
    .p-privilege__title {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 38px;
      letter-spacing: 1.2px; }
    .p-staff__card {
      width: 20.1%;
      margin-bottom: 68px; }
      .p-summary .l-inner {
        padding: 24px 0 0 0; }
  .p-summary__content {
    margin: 0 0 0 9.2%; }
    .p-summary__text {
      margin: 0 0 62px 11%; }
  .p-summary__image {
    width: 30%;
    margin: 132px 0 0 4.5%; }
    .p-summary__caption {
      padding-left: .2em; }
    .p-tweet__heading {
      font-size: 80px;
      font-size: 8rem;
      line-height: 65px;
      letter-spacing: 4px; }
    .p-tweet__card {
      width: 32%;
      margin-bottom: 56px; } }

@media screen {
  [hidden~="screen"] {
    display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important; } }

@media only screen and (min-width: 1240px) {
    .l-header__inner {
      padding: 0 20px 0 50px;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      width: 100%;
      height: 80px; }
    .l-header__logo {
      position: absolute;
      top: 50%;
      left: 50px;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 99px; }
    .l-header__hamburger {
      display: none; }
    .l-header__nav {
      position: relative;
      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;
      width: 100%;
      height: 80px;
      padding: 0;
      background: none;
      overflow: visible; }
  .loaded .l-header__inner {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1; }
  .loaded .l-header__nav {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1; }
    .p-aboutHeader {
      margin-top: 80px; }
    .p-actionHeader {
      margin-top: 80px; }
    .p-diagnosisHeader {
      margin-top: 80px; }
    .p-diagnosisResultHeader {
      margin-top: 80px; }
    .p-eventHeader {
      margin-top: 80px; }
    .p-gNav {
      margin: 0 0 0 152px;
      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;
      height: 100%; }
    .p-gNav__item {
      margin: 0 27px 0 0;
      height: 100%;
      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; }
      .p-gNav__item:before {
        display: none; }
      .p-gNav__item a, .p-gNav__item span {
        height: auto;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1em;
        letter-spacing: 0.494px;
        border: none;
        padding: 0; }
        .p-gNav__item a:hover:after, .p-gNav__item span:hover:after {
          content: '';
          position: absolute;
          top: 50%;
          left: 0;
          width: 100%;
          border-bottom: solid 2px #FF0043;
          margin-top: 12px; }
    .p-gNav__item:first-child {
      display: none; }
    .p-gNav__sub {
      position: absolute;
      top: 80px;
      width: 200px;
      left: -5px;
      background: #000000;
      padding: 10px 0 10px; }
      .p-gNav__sub:before {
        content: '';
        position: absolute;
        top: -20px;
        left: 20px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 12px 25px 12px;
        border-color: transparent transparent #000000 transparent; }
      .p-gNav__sub a {
        height: auto;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1em;
        letter-spacing: 0.494px;
        border: none;
        padding: 10px;
        margin-bottom: 0; }
        .p-gNav__sub a span {
          color: #ffffff; }
  .p-gNav__parent:hover .p-gNav__sub {
    display: block; }
    .p-gSns {
      position: absolute;
      top: 50%;
      right: 259px;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      margin: 0; }
      .p-gSns__item--twitter a {
        width: 20px; }
    .p-gSns__item--instagram a {
      width: 19px; }
  .p-gBanner {
    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;
    position: absolute;
    top: 19px;
    right: 0; }
    .p-gBanner__item--tobitate {
      margin: 7px 24px 0 0; }
      .p-gBanner__item--tobitate a {
        width: 100px; }
    .p-gBanner__item--mext a {
      width: 102px; }
  .home.top-header .p-gNav .p-gNav__item a, .home.top-header .p-gNav .p-gNav__item span {
    color: #ffffff; }
  .home.top-header .p-gNav__sub {
    background-color: rgba(0, 0, 0, 0.3); }
    .home.top-header .p-gNav__sub a {
      color: #ffffff; }
    .home.top-header .p-gNav__sub:before {
      border-color: transparent transparent rgba(0, 0, 0, 0) transparent; }
    .p-mediaHeader {
      margin-top: 80px; }
    .p-myEventHeader {
      margin-top: 80px; }
    .p-newsArchive {
      margin-top: 80px;
      padding-top: 65px; }
    .p-photosHeader {
      margin-top: 80px; }
    .p-reportHeader {
      margin-top: 80px; }
    .p-schoolHeader {
      margin-top: 80px; }
    .p-snsHeader {
      margin-top: 80px; } }

@media screen and (max-width: 560px) {
  .yn-chart {
    padding: 1.8em 1.3em; }
  .yn-chart > div > figure {
    margin: 0.5em 0; }
  .yn-chart > div > p {
    margin: 1em 0 0 !important;
    padding: 0.8em 1em 0.8em 3.3em !important; }
  .yn-chart > div ul {
    margin: 1em 0 0 !important; }
  .yn-chart__title {
    font-size: 1em !important; }
  .yn-chart__title:before {
    margin-right: 0.3em; }
  .yn-chart__title:after {
    margin-left: 0.3em; }
  .yn-chart__ex, .yn-chart__add {
    font-size: 0.9em !important; }
  .yn-chart > div > p:before {
    min-width: 30px; }
  .p-tw-btn, .p-check-btn {
    margin: 1.5em 1em !important; }
  .yn-chart > div > p.p-check-btn {
    padding: 0 3em !important; } }

@media screen and (max-width: 800px) {
  .p-tw-btn, .p-check-btn {
    margin: 1.5em 3em !important; } }
