@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
*, html, body, h1, h2, h3, h4, h5, h6, p {
  padding: 0;
  margin: 0;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
  *::before, *::after, html::before, html::after, body::before, body::after, h1::before, h1::after, h2::before, h2::after, h3::before, h3::after, h4::before, h4::after, h5::before, h5::after, h6::before, h6::after, p::before, p::after {
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }

li {
  list-style: none; }

a {
  text-decoration: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  a:focus {
    outline: none; }

select,
button,
textarea,
label,
input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  border: 0;
  background: none;
  border-radius: 0;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  color: #404040; }
  select:focus,
  button:focus,
  textarea:focus,
  label:focus,
  input:focus {
    outline: none; }
  select::-webkit-input-placeholder,
  button::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder,
  label::-webkit-input-placeholder,
  input::-webkit-input-placeholder {
    color: #D5D7DA; }
  select:-ms-input-placeholder,
  button:-ms-input-placeholder,
  textarea:-ms-input-placeholder,
  label:-ms-input-placeholder,
  input:-ms-input-placeholder {
    color: #D5D7DA; }
  select::-moz-placeholder,
  button::-moz-placeholder,
  textarea::-moz-placeholder,
  label::-moz-placeholder,
  input::-moz-placeholder {
    color: #D5D7DA; }

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

input[type=number] {
  -moz-appearance: textfield; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal; }

img {
  border-image-width: 0; }

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #F5F5F5 inset; }

*, html, body {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, Helvetica Neue, Segoe UI, "游ゴシック体", YuGothic, Yu Gothic, "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; }

html {
  font-size: 10px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%; }
  html.noScroll {
    scroll-behavior: auto; }

body {
  background: #FFF;
  font-size: 1.6rem;
  color: #404040; }

a {
  color: #09f; }

::-moz-selection {
  background: #9172FE;
  color: #FFF; }

::-ms-selection {
  background: #9172FE;
  color: #FFF; }

::-o-selection {
  background: #9172FE;
  color: #FFF; }

::selection {
  background: #9172FE;
  color: #FFF; }

@font-face {
  font-family: "Noto";
  src: url("../fonts/NotoSansJP-Bold.woff") format("woff");
  font-weight: 900; }

@font-face {
  font-family: "Noto";
  src: url("../fonts/NotoSansJP-Regular.woff") format("woff");
  font-weight: 300; }

@font-face {
  font-family: "Noto";
  src: url("../fonts/NotoSansJP-Thin.woff") format("woff");
  font-weight: 100; }

.c-acceleratorIcons {
  display: flex; }
  .c-acceleratorIcons .image {
    display: block;
    margin-bottom: 16px;
    width: 80px; }
  .c-acceleratorIcons .image-client {
    display: block;
    margin-bottom: 16px;
    width: 100px; }
  .c-acceleratorIcons .head {
    margin-bottom: 20px;
    font-size: 2rem;
    font-weight: bold; }
  .c-acceleratorIcons .description {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: .8px; }
  .c-acceleratorIcons.vertical {
    flex-flow: row nowrap;
    justify-content: space-between; }
    .c-acceleratorIcons.vertical .item {
      flex-basis: 30%; }
    .c-acceleratorIcons.vertical .item2 {
      flex-basis: 50%; }
    
.c-acceleratorIcons.vertical .item {
      flex-basis: 30%; }  .c-acceleratorIcons.horizon {
    flex-flow: column nowrap; }
    .c-acceleratorIcons.horizon .item {
      display: flex;
      align-items: center;
      margin-bottom: 48px; }
    .c-acceleratorIcons.horizon .imageBox {
      margin-right: 32px; }
      .c-acceleratorIcons.horizon .imageBox .image {
        margin-bottom: 0; }
    .c-acceleratorIcons.horizon .textBox .head {
      margin-bottom: 8px; }

@media screen and (max-width: 1000px) {
  .c-acceleratorIcons {
    display: block; } }

@media screen and (max-width: 670px) {
  .c-acceleratorIcons.horizon .item {
    display: block; }
    .c-acceleratorIcons.horizon .item .imageBox .image {
      margin-bottom: 16px; } }

.c-bookCard {
  border-radius: 32px 0 32px 0;
  overflow: hidden;
  box-shadow: 0 14px 14px rgba(0, 0, 0, 0.1);
  background: #FFF;
  height: 100%; }
  .c-bookCard .cardLink {
    display: block;
    color: #404040; }
  .c-bookCard .headContents {
    position: relative; }
    .c-bookCard .headContents .image {
      position: relative;
      overflow: hidden;
      padding-top: 56%; }
      .c-bookCard .headContents .image img {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 150%;
        height: auto;
        transform: translate(-50%, -50%); }
    .c-bookCard .headContents .head {
      position: absolute;
      bottom: 0;
      left: 0;
      background: #000;
      color: #FFF;
      padding: 4px 32px;
      background: #191970; }
  .c-bookCard .info {
    display: flex;
    justify-content: space-between;
    padding: 20px 16px 12px; }
    .c-bookCard .info .date {
      color: #191970;
      font-weight: bold; }
    .c-bookCard .info .pv {
      flex-shrink: 0;
      display: flex;
      justify-content: flex-end;
      font-weight: bold;
      min-width: 68px;
      color: #191970; }
      .c-bookCard .info .pv .icon {
        margin-right: 8px; }
  .c-bookCard .title {
    margin-bottom: 36px;
    padding: 0 20px;
    font-size: 1.6rem;
    line-height: 1.75; }
  .c-bookCard .description {
    padding: 0 16px;
    margin-bottom: 48px;
    font-size: 1.2rem; }
  .c-bookCard .writeUser {
    display: flex;
    align-items: center;
    padding: 0 16px;
    margin-bottom: 20px; }
    .c-bookCard .writeUser .icon {
      margin-right: 12px;
      width: 42px;
      height: 42px;
      border-radius: 50%; }
    .c-bookCard .writeUser .status .name {
      font-size: 1.4rem; }
    .c-bookCard .writeUser .status .position {
      font-size: 1.2rem;
      font-weight: bold;
      color: #9172FE; }
  .c-bookCard .tagList {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    padding: 0 16px 32px; }
    .c-bookCard .tagList .listItem {
      margin-right: 8px;
      margin-bottom: 8px;
      display: flex;
      align-items: center;
      background: #F5F5F5;
      padding: 4px 12px;
      border-radius: 30px;
      color: #9172FE; }
      .c-bookCard .tagList .listItem a {
        display: block;
        color: #9172FE;
        font-size: 1.2rem; }
  .c-bookCard.single {
    border-radius: 0;
    box-shadow: none;
    overflow: visible; }
    .c-bookCard.single .cardLink {
      display: flex;
      position: relative; }
    .c-bookCard.single .headContents {
      flex-shrink: 0;
      width: 100px;
      height: 72px;
      margin-right: 16px;
      overflow: hidden; }
      .c-bookCard.single .headContents .image {
        padding-top: 80%; }
    .c-bookCard.single .head {
      position: absolute;
      bottom: 0;
      left: 100px;
      border-radius: 50%;
      width: 32px;
      height: 32px;
      padding: 5px 0 0;
      text-align: center;
      transform: translate(-80%, 50%);
      background: #9172FE;
      color: #FFF; }
    .c-bookCard.single .title {
      font-size: 1.4rem;
      margin-bottom: 0;
      padding: 0; }
  .c-bookCard.category {
    border-radius: 0;
    box-shadow: none;
    background: #FFF;
    height: auto; }
    .c-bookCard.category .cardLink {
      display: flex;
      position: relative; }
    .c-bookCard.category .headContents {
      width: 260px;
      flex-shrink: 0; }
    .c-bookCard.category .bodyContents {
      flex-grow: 2;
      padding-left: 32px; }
    .c-bookCard.category .image {
      display: block;
      padding-top: 70%; }
    .c-bookCard.category .title {
      display: block;
      padding: 0;
      margin-bottom: 8px;
      font-size: 2rem;
      color: #404040; }
    .c-bookCard.category .excerpt {
      color: #B2B2B2;
      margin-bottom: 24px; }
    .c-bookCard.category .date {
      display: block;
      color: #404040; }
    .c-bookCard.category .info {
      align-items: center;
      padding: 0; }
      .c-bookCard.category .info .tagList {
        padding: 0; }
      .c-bookCard.category .info .pv {
        align-items: center; }

@media screen and (max-width: 670px) {
  .c-bookCard {
    border-radius: 0;
    box-shadow: none;
    border-bottom: solid 1px #F5F5F5; }
    .c-bookCard.category .cardLink {
      display: block; }
    .c-bookCard.category .headContents {
      width: 100%; }
    .c-bookCard.category .image {
      padding-top: 56%; }
    .c-bookCard.category .bodyContents {
      padding-left: 0;
      padding: 20px 16px 12px; }
    .c-bookCard.category .info .pv {
      justify-content: flex-end; } }

.c-breadCrumbs {
  display: flex; }
  .c-breadCrumbs a {
    color: #404040; }
  .c-breadCrumbs span {
    flex-shrink: 0; }
  .c-breadCrumbs .current-item {
    flex-shrink: 1; }
  .c-breadCrumbs .breakTag {
    display: block;
    position: relative;
    width: 32px;
    height: 32px; }
    .c-breadCrumbs .breakTag::before {
      content: "";
      position: absolute;
      top: 33%;
      left: 50%;
      width: 20%;
      height: 1px;
      background: gray;
      transform: translate(-50%, -50%) rotate(45deg); }
    .c-breadCrumbs .breakTag::after {
      content: "";
      position: absolute;
      top: 43%;
      left: 50%;
      width: 20%;
      height: 1px;
      background: gray;
      transform: translate(-50%, -50%) rotate(-45deg); }

@media screen and (max-width: 1000px) {
  .c-breadCrumbs {
    flex-flow: row wrap; } }

@media screen and (max-width: 670px) {
  .c-breadCrumbs {
    font-size: 1.1rem; } }

.c-btn {
  display: block;
  padding: 12px 36px;
  border-radius: 50px;
  background: #9172FE;
  cursor: pointer;
  border: solid 1px transparent;
  text-align: center;
  font-size: 1.6rem;
  color: #FFF; }
  .c-btn.defPrimary {
    background: #191970; }
  .c-btn.defSubPrimary {
    background: #191970; }
  .c-btn.defGradient {
    background: #191970; }
  .c-btn.borPrimary {
    background: #FFF;
    border-color: #191970;
    color: #191970; }
  .c-btn.sizeBg {
    margin: 0 auto;
    padding: 20px 36px;
    width: 420px;
    font-size: 2.4rem; }
  .c-btn.sizeMd {
    margin: 0 auto;
    width: 240px; }

.c-hamburgerMenu {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px; }
  .c-hamburgerMenu.js-open .contents span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg); }
    .c-hamburgerMenu.js-open .contents span:nth-child(2) {
      transform: translate(-50%, -50%) rotate(-45deg); }
  .c-hamburgerMenu .contents {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: space-between;
    position: relative;
    width: 24px;
    height: 16px; }
  .c-hamburgerMenu span {
    display: block;
    width: 100%;
    height: 2px;
    background: #404040; }

.c-head.white {
  color: #FFF; }

.c-head.primary {
  color: #191970; }

.c-head.ltGray {
  color: #F5F5F5; }

.c-head.mdGray {
  color: #D5D7DA; }

.c-head.sizeBg {
  font-size: 3.2rem; }

.c-head.sizeLg {
  font-size: 2.4rem; }

.c-head.sizeMd {
  font-size: 1.6rem; }

.c-head.sizeSm {
  font-size: 1.2rem; }

.c-head.center {
  text-align: center; }

.c-head.bold {
  font-weight: bold; }

.c-iconCard {
  position: relative;
  max-width: 360px;
  height: 100%;
  margin: 0 auto;
  width: 100%;
  background: #FFF;
  border-radius: 50px 0 50px 0;
  padding: 64px 36px 32px;
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }
  .c-iconCard .icon {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    margin: 0 auto;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #191970;
    transform: translate(-50%, -50%); }
    .c-iconCard .icon img {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 64px;
      transform: translate(-50%, -50%); }
  .c-iconCard .subHead {
    margin-bottom: 12px; }
  .c-iconCard .head {
    margin-bottom: 24px; }
  .c-iconCard .description {
    line-height: 2; }

@media screen and (max-width: 670px) {
  .c-iconCard {
    max-width: 100%;
    border-radius: 0; }
    .c-iconCard .icon {
      width: 64px;
      height: 64px; }
      .c-iconCard .icon img {
        display: block;
        width: 70%;
        height: 70%; }
    .c-iconCard .subHead {
      font-size: 1.2rem; }
    .c-iconCard .head {
      font-size: 1.6rem; }
    .c-iconCard .description {
      font-size: 1.4rem; } }

.c-priceCard {
  display: flex;
  overflow: hidden;
  border-radius: 20px 0 20px 0;
  background: #FFF;
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }
  .c-priceCard .plan {
    position: relative;
    width: 160px;
    text-align: center;
    color: #FFF; }
    .c-priceCard .plan .head {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      font-size: 2rem;
      transform: translate(-50%, -50%);
      font-weight: bold; }
  .c-priceCard .doubleBlock {
    display: flex;
    justify-content: space-between;
    width: 100%; }
  .c-priceCard .price {
    flex-basis: 30%;
    align-self: center;
    padding: 0 32px; }
    .c-priceCard .price .head {
      font-weight: bold;
      font-size: 3.2rem; }
    .c-priceCard .price .subHead {
      display: block;
      font-size: 1.2rem;
      font-weight: bold; }
  .c-priceCard .serviceContentsList {
    flex-grow: 2;
    padding: 32px;
    align-self: center;
    border-left: dashed 1px #D5D7DA; }
    .c-priceCard .serviceContentsList > .listItem {
      display: flex;
      align-items: center;
      margin-bottom: 20px; }
      .c-priceCard .serviceContentsList > .listItem:last-child {
        margin-bottom: 0; }
      .c-priceCard .serviceContentsList > .listItem .check {
        margin-right: 8px; }
      .c-priceCard .serviceContentsList > .listItem .text {
        font-size: 1.6rem; 
		line-height: 2;
}
  .c-priceCard .btnCase {
    padding: 0 32px;
    align-self: center; }
  .c-priceCard.test .plan {
    background: #4AE6D6; }
  .c-priceCard.test .price .head {
    color: #4AE6D6; }
  .c-priceCard.light .plan {
    background: #FEA166; }
  .c-priceCard.light .price .head {
    color: #FEA166; }
  .c-priceCard.basic .plan {
    background: #FF0076; }
  .c-priceCard.basic .price .head {
    color: #FF0076; }
  .c-priceCard.standard .plan {
    background: #9D446E; }
  .c-priceCard.standard .price .head {
    color: #9D446E; }
  .c-priceCard.extra .plan {
    background: #7C89EF; }
  .c-priceCard.extra .price .head {
    color: #7C89EF; }

@media screen and (max-width: 1000px) {
  .c-priceCard {
    display: block;
    border-radius: 0; }
    .c-priceCard .plan {
      padding: 16px 0;
      width: 100%; }
      .c-priceCard .plan .head {
        position: relative;
        top: auto;
        left: auto;
        font-size: 2rem;
        transform: translate(0); }
        .c-priceCard .plan .head .subHead {
          display: inline-block;
          margin-left: 8px; } }

@media screen and (max-width: 670px) {
  .c-priceCard .doubleBlock {
    display: block; }
  .c-priceCard .price {
    padding: 32px; }
  .c-priceCard .serviceContentsList {
    border-left: none;
    border-top: dashed 1px #D5D7DA;
    padding: 32px 16px; }
    .c-priceCard .serviceContentsList > .listItem .text {
      font-size: 1.4rem; 
	  line-height: 2;
	} }

.c-priceCard-2 {
  display: block;
  border-radius: 0;
  overflow: hidden;
  background: #FFF;
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }

.c-searchBtn {
  position: relative;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #191970; }
  .c-searchBtn span {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 16px;
    height: 16px;
    border: solid 2px #FFF;
    border-radius: 50%;
    transform: translate(-60%, -60%); }
    .c-searchBtn span::before {
      content: "";
      position: absolute;
      top: 100%;
      left: 100%;
      width: 7px;
      height: 2px;
      background: #FFF;
      transform: rotate(45deg) translate(10%, 50%); }

.c-serviceCard {
  display: flex;
  width: 80%;
  overflow: hidden;
  border-radius: 0 0 40px 0; }
  .c-serviceCard .textContents {
    flex-basis: 50%;
    position: relative; }
    .c-serviceCard .textContents .content {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 320px;
      transform: translate(-50%, -50%); }
    .c-serviceCard .textContents .subHead {
      display: flex;
      align-items: center; }
      .c-serviceCard .textContents .subHead .iconBox {
        width: 64px;
        margin-right: 32px; }
        .c-serviceCard .textContents .subHead .iconBox .icon {
          display: block;
          width: 100%;
          height: 100%; }
      .c-serviceCard .textContents .subHead .text {
        font-size: 2.4rem;
        color: #9172FE; }
    .c-serviceCard .textContents .head {
      padding: 32px 0;
      letter-spacing: .8px;
      font-size: 3.2rem;
      font-weight: bold; }
    .c-serviceCard .textContents .description {
      font-size: 1.4rem;
      line-height: 1.75;
      margin-bottom: 32px; }
    .c-serviceCard .textContents .cardBtn {
      margin-left: 0; }
  .c-serviceCard .imageContents {
    flex-basis: 50%;
    position: relative; }
    .c-serviceCard .imageContents .image {
      display: block; }
  .c-serviceCard.left {
    margin-right: auto;
    background: #FFF;
    box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1);
    padding-right: 48px; }
    .c-serviceCard.left .textContents {
      order: 1; }
    .c-serviceCard.left .imageContents {
      order: 0;
      padding-right: 32px; }
  .c-serviceCard.right {
    margin-left: auto; }
    .c-serviceCard.right .imageContents {
      padding-left: 32px; }
      .c-serviceCard.right .imageContents .image {
        margin-left: auto; }

@media screen and (max-width: 1250px) {
  .c-serviceCard {
    width: 90%; }
    .c-serviceCard.left {
      padding-right: 0; }
      .c-serviceCard.left .imageContents {
        padding-right: 0; }
    .c-serviceCard.right {
      padding-left: 0; } }

@media screen and (max-width: 1075px) {
  .c-serviceCard {
    width: 100%; } }

@media screen and (max-width: 1000px) {
  .c-serviceCard {
    display: block;
    position: relative;
    padding: 64px 32px !important;
    background: #FFF;
    box-shadow: 0 14px 14px rgba(0, 0, 0, 0.1);
    border-radius: 0;
    overflow: hidden; }
    .c-serviceCard .textContents {
      text-align: center; }
      .c-serviceCard .textContents .subHead {
        display: block; }
        .c-serviceCard .textContents .subHead .iconBox {
          margin: 0 auto 16px; }
      .c-serviceCard .textContents .content {
        position: relative;
        width: 100%;
        top: 0;
        left: 0;
        transform: translate(0, 0); }
      .c-serviceCard .textContents .cardBtn {
        margin: 0 auto; }
    .c-serviceCard .imageContents {
      display: none;
      position: absolute;
      top: 0;
      right: 0; } }

@media screen and (max-width: 670px) {
  .c-serviceCard {
    padding: 32px 16px !important; }
    .c-serviceCard .textContents .subHead .iconBox .icon {
      width: 70%;
      margin: 0 auto; }
    .c-serviceCard .textContents .subHead .text {
      font-size: 1.6rem; }
    .c-serviceCard .textContents .head {
      padding: 16px 0;
      font-size: 2rem; } }

.p-aboutSection .inner {
  display: flex;
  align-items: center;
  max-width: 1350px;
  margin: 0 auto;
  padding: 0 32px; }

.p-aboutSection .imageContents {
  order: 2;
  flex-basis: 70%; }
  .p-aboutSection .imageContents .image {
    display: block;
    width: 100%; }

.p-aboutSection .textContents {
  flex-basis: 50%; }
  .p-aboutSection .textContents .aboutSectionTitle {
    margin-bottom: 32px;
    font-size: 2.4rem;
    font-weight: bold;
    color: #AD059A; }
  .p-aboutSection .textContents .aboutSectionHead {
    margin-bottom: 32px;
    font-size: 3.2rem; }
  .p-aboutSection .textContents .aboutSectionDescription {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: .8px; }
    .p-aboutSection .textContents .aboutSectionDescription .br {
      display: block;
      margin-bottom: 24px; }

.p-aboutVision {
  margin-bottom: 192px; }
  .p-aboutVision .imageContents {
    padding-right: 120px; }
  .p-aboutVision .textContents {
    order: 3; }

.p-aboutMission {
  margin-bottom: 192px; }
  .p-aboutMission .imageContents {
    padding-left: 120px; }
  .p-aboutMission .textContents {
    order: 1; }

@media screen and (max-width: 1000px) {
  .p-aboutSection .inner {
    display: block;
    position: relative; }
  .p-aboutSection .imageContents {
    position: absolute;
    z-index: -1;
    width: 56%;
    overflow: hidden; }
    .p-aboutSection .imageContents::before {
      content: "";
      position: absolute;
      top: 0;
      z-index: 1;
      width: calc(100% - 16px);
      height: 100%;
      background: #FFF;
      opacity: .8; }
    .p-aboutSection .imageContents::after {
      content: "";
      position: absolute;
      top: 50%;
      z-index: -2;
      width: 100%;
      height: 80%;
      background: #F5F5F5;
      opacity: .8;
      transform: translate(0, -50%); }
  .p-aboutSection .textContents {
    padding-top: 88px; }
    .p-aboutSection .textContents .aboutSectionDescription {
      font-weight: bold; }
  .p-aboutVision {
    margin-bottom: 120px; }
    .p-aboutVision .imageContents {
      top: 0;
      left: 0;
      padding-right: 16px; }
      .p-aboutVision .imageContents::before {
        left: 0; }
      .p-aboutVision .imageContents::after {
        left: 0; }
    .p-aboutVision .textContents .aboutSectionTitle {
      text-align: left; }
    .p-aboutVision .textContents .aboutSectionHead {
      text-align: left; }
  .p-aboutMission {
    margin-bottom: 120px; }
    .p-aboutMission .imageContents {
      top: 0;
      right: 0;
      padding-left: 16px; }
      .p-aboutMission .imageContents::before {
        right: 0; }
      .p-aboutMission .imageContents::after {
        right: 0; } }

@media screen and (max-width: 670px) {
  .p-aboutSection .inner {
    padding: 0 24px; }
  .p-aboutSection .imageContents {
    width: 100%;
    overflow: hidden;
    padding-right: 0; }
    .p-aboutSection .imageContents::before {
      width: 100%; }
  .p-aboutSection .textContents {
    padding-top: 40px; }
    .p-aboutSection .textContents .aboutSectionTitle {
      font-size: 1.6rem; }
    .p-aboutSection .textContents .aboutSectionHead {
      margin-bottom: 48px;
      font-size: 2.4rem; }
    .p-aboutSection .textContents .aboutSectionDescription {
      font-size: 1.4rem;
      line-height: 1.75;
      letter-spacing: .8px; }
  .p-aboutMission .textContents .aboutSectionTitle {
    text-align: left; }
  .p-aboutMission .textContents .aboutSectionHead {
    text-align: left; } }

.p-aboutStrengthSlider {
  margin: 0 auto;
  max-width: 1350px;
  margin-bottom: 192px; }
  .p-aboutStrengthSlider .swiper-button-next {
    top: 100%;
    right: auto;
    left: 60%;
    width: 64px;
    height: 64px;
    background: #9172FE;
    transform: translate(-100%, -65%);
    color: #FFF; }
    .p-aboutStrengthSlider .swiper-button-next::after {
      transform: scale(0.5); }
  .p-aboutStrengthSlider .swiper-button-prev {
    top: 100%;
    right: auto;
    left: 60%;
    width: 64px;
    height: 64px;
    background: #9172FE;
    transform: translate(-200%, -65%);
    color: #FFF; }
    .p-aboutStrengthSlider .swiper-button-prev::after {
      transform: scale(0.5); }
  .p-aboutStrengthSlider .aboutStrength .inner {
    display: flex;
    align-items: center; }
  .p-aboutStrengthSlider .aboutStrength .imageContents {
    flex-basis: 60%; }
    .p-aboutStrengthSlider .aboutStrength .imageContents .image {
      display: block;
      width: 100%; }
  .p-aboutStrengthSlider .aboutStrength .textContents {
    flex-basis: 40%;
    padding-left: 48px; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthTitle {
      color: #B2B2B2; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthHead {
      display: flex;
      align-items: center;
      font-size: 2.4rem; }
      .p-aboutStrengthSlider .aboutStrength .textContents .strengthHead .iconBox {
        position: relative;
        margin-right: 16px;
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: #9172FE; }
        .p-aboutStrengthSlider .aboutStrength .textContents .strengthHead .iconBox .icon {
          position: absolute;
          top: 50%;
          left: 50%;
          color: #FFF;
          transform: translate(-50%, -50%); }
      .p-aboutStrengthSlider .aboutStrength .textContents .strengthHead .text {
        color: #9172FE; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthSubHead {
      padding: 32px 0;
      font-size: 2.4rem; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthDescription {
      font-size: 1.6rem;
      letter-spacing: .8px;
      line-height: 1.75; }

@media screen and (max-width: 1000px) {
  .p-aboutStrengthSlider {
    margin-bottom: 120px; }
    .p-aboutStrengthSlider .aboutStrength .inner {
      display: block;
      position: relative; }
    .p-aboutStrengthSlider .aboutStrength .imageContents {
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; }
      .p-aboutStrengthSlider .aboutStrength .imageContents::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #FFF;
        opacity: .8; }
    .p-aboutStrengthSlider .aboutStrength .textContents {
      padding: 88px 32px 0; }
      .p-aboutStrengthSlider .aboutStrength .textContents .strengthDescription {
        font-weight: bold; } }

@media screen and (max-width: 670px) {
  .p-aboutStrengthSlider .aboutStrength .textContents {
    padding: 40px 24px; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthHead {
      font-size: 2rem; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthSubHead {
      font-size: 2rem; }
    .p-aboutStrengthSlider .aboutStrength .textContents .strengthDescription {
      font-size: 1.4rem; } }

.p-acceleratorContents {
  margin-bottom: 128px; }
  .p-acceleratorContents .firstBlock {
    margin-bottom: 100px; }
    .p-acceleratorContents .firstBlock .inner {
      padding: 0 32px;
      margin: 0 auto;
      max-width: 1350px; }
  .p-acceleratorContents .secondBlock {
    padding: 100px;
    margin-bottom: 100px;
    background: linear-gradient(90deg, #a2f6d5, #600528); }
    .p-acceleratorContents .secondBlock .inner {
      display: flex;
      align-items: center;
      padding: 0 32px;
      margin: 0 auto;
      max-width: 1350px; }
    .p-acceleratorContents .secondBlock .left .leftHead {
      margin-bottom: 32px; }
    .p-acceleratorContents .secondBlock .right {
      flex-shrink: 0;
      margin-left: auto;
      padding-left: 48px; }

@media screen and (max-width: 1000px) {
  .p-acceleratorContents .firstBlock .c-acceleratorIcons .item {
    margin-bottom: 48px; }
  .p-acceleratorContents .secondBlock {
    padding: 56px 32px; }
    .p-acceleratorContents .secondBlock .inner {
      padding: 0;
      display: block; }
  .p-acceleratorContents .c-btn {
    font-size: 1.6rem;
    padding: 16px;
    width: auto;
    max-width: 280px; } }

.p-adBlock {
  position: relative;
  background: url("./images/addImage.png") center no-repeat;
  background-size: cover; }
  .p-adBlock::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #fff, #000);
    opacity: .6; }
  .p-adBlock .inner {
    position: relative;
    z-index: 1;
    padding: 160px 0; }
  .p-adBlock .addHead {
    margin-bottom: 48px;
    text-align: center;
    font-size: 4.4rem;
    color: #FFF; }
  .p-adBlock .addDescription {
    margin-bottom: 80px;
    text-align: center;
    font-size: 1.6rem;
    color: #FFF; }

@media screen and (max-width: 1000px) {
  .p-adBlock .inner {
    padding: 120px 32px; }
  .p-adBlock .addHead {
    font-size: 3.2rem; }
    .p-adBlock .addHead .br {
      display: block; } }

@media screen and (max-width: 670px) {
  .p-adBlock .inner {
    padding: 56px 24px; }
  .p-adBlock .addHead {
    font-size: 2.4rem; }
    .p-adBlock .addHead .br {
      display: block; }
  .p-adBlock .addDescription {
    margin-bottom: 48px; }
  .p-adBlock .c-btn {
    font-size: 1.4rem;
    padding: 16px;
    width: auto;
    max-width: 280px; } }

.p-articleContent {
  flex-grow: 2;
  flex-shrink: 1; }
  .p-articleContent .inside .singleHeader {
    margin-bottom: 32px; }
    .p-articleContent .inside .singleHeader .c-breadCrumbs {
      margin-bottom: 16px; }
    .p-articleContent .inside .singleHeader .info {
      display: flex; }
      .p-articleContent .inside .singleHeader .info .categoryName {
        background: #191970;
        padding: 4px 0;
        width: 180px;
        text-align: center;
        color: #FFF;
        margin-right: 32px; }
      .p-articleContent .inside .singleHeader .info .pv {
        display: flex;
        align-items: center;
        color: #191970;
        font-size: 1.6rem;
        font-weight: bold;
        margin-right: auto; }
        .p-articleContent .inside .singleHeader .info .pv .icon {
          display: block;
          width: 24px;
          margin: 0; }
        .p-articleContent .inside .singleHeader .info .pv .wpp-views {
          margin-left: 8px; }
    .p-articleContent .inside .singleHeader .timeStamp {
      margin-top: 16px;
      display: flex; }
      .p-articleContent .inside .singleHeader .timeStamp .date.first {
        margin-right: 16px; }
    .p-articleContent .inside .singleHeader .title {
      margin: 24px 0; }
    .p-articleContent .inside .singleHeader .thumbnail img {
      display: block;
      margin: 20px 0;
      width: 100%;
      height: auto; }
  .p-articleContent .content .at-above-post.addthis_tool {
    margin-top: 32px; }
    .p-articleContent .content .at-above-post.addthis_tool a {
      color: #FFF;
      text-decoration: none; }
  .p-articleContent .content .at-below-post.addthis_tool {
    margin-top: 32px; }
    .p-articleContent .content .at-below-post.addthis_tool a {
      color: #FFF;
      text-decoration: none; }
  .p-articleContent .content #toc_container {
    display: block;
    width: 100%;
    margin-top: 36px;
    padding: 32px 20px;
    border: none;
    border-top: solid 5px #191970;
    background: #F5F5F5;
    overflow: hidden;
    transition: all .3s; }
    .p-articleContent .content #toc_container.js-close {
      max-height: 0;
      padding: 20px 20px 40px; }
    .p-articleContent .content #toc_container .toc_title {
      text-align: left; }
    .p-articleContent .content #toc_container .toc_list li {
      margin-bottom: 16px; }
      .p-articleContent .content #toc_container .toc_list li::after {
        display: none; }
      .p-articleContent .content #toc_container .toc_list li > a {
        display: block;
        margin-bottom: 16px; }
      .p-articleContent .content #toc_container .toc_list li li {
        margin-bottom: 16px; }
  .p-articleContent .content h2 {
    position: relative;
    margin: 72px 0 24px;
    padding: 8px 16px 8px;
    background: #191970;
    font-size: 2.6rem;
    line-height: 2;
    color: #FFF; }
  .p-articleContent .content h3 {
    margin: 56px 0 24px;
    padding-left: 12px;
    border-left: solid 6px;
    line-height: 2;
    color: #191970;
    font-weight: bold;
    font-size: 1.6rem; }
  .p-articleContent .content h4 {
    margin: 40px 0 16px;
    padding: 8px 0;
    line-height: 2;
    color: #191970;
    font-weight: bold;
    font-size: 1.6rem; }
  .p-articleContent .content h5 {
    margin: 24px 0 12px;
    padding: 8px 0;
    line-height: 2;
    color: #191970;
    font-weight: bold;
    font-size: 1.6rem; }
  .p-articleContent .content a {
    color: #191970;
    text-decoration: underline; }
  .p-articleContent .content p {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: .8px;
    margin-top: 16px;
    margin-bottom: 16px; }
  .p-articleContent .content img {
    display: block;
    margin: 20px 0;
    width: 100%;
    height: auto; }
  .p-articleContent .content figure {
    max-width: 100%;
    margin-bottom: 0;
    margin-left: 0;
    display: block;
    margin-right: 0; }
  .p-articleContent .content ol {
    margin-top: 32px;
    padding: 40px 32px;
    border-radius: 40px 0 40px 0;
    background: #F5F5F5;
    counter-reset: ol; }
    .p-articleContent .content ol li {
      position: relative;
      padding-left: 32px;
      margin-bottom: 16px; }
      .p-articleContent .content ol li:last-child {
        margin-bottom: 0; }
      .p-articleContent .content ol li::before {
        counter-increment: ol;
        content: counter(ol);
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
        width: 20px;
        border-radius: 50%;
        text-align: center;
        line-height: 2.5rem;
        font-weight: bold;
        color: #191970; }
  .p-articleContent .content ul {
    margin-top: 32px;
    padding: 40px 32px;
    border-radius: 40px 0 40px 0;
    background: #F5F5F5;
    counter-reset: ol; }
    .p-articleContent .content ul li {
      position: relative;
      padding-left: 32px;
      margin-bottom: 16px; }
      .p-articleContent .content ul li:last-child {
        margin-bottom: 0; }
      .p-articleContent .content ul li::after {
        content: "";
        width: 10px;
        height: 10px;
        display: block;
        background: #191970;
        border-radius: 100%;
        position: absolute;
        left: 0;
        top: 6px;
        z-index: 1; }
  .p-articleContent .banner {
    margin-top: 56px;
    padding: 20px;
    position: relative;
    background: url("images/banner.png") center no-repeat; }
    .p-articleContent .banner .textBox {
      margin: 0 auto;
      width: calc(100% - 128px);
      height: calc(100% - 88px);
      background: rgba(255, 255, 255, 0.9);
      font-size: 1.6rem;
      text-align: center;
      padding: 32px; }
      .p-articleContent .banner .textBox .head {
        font-size: 2rem;
        color: #191970;
        margin-bottom: 16px;
        line-height: 1.75;
        letter-spacing: .8px; }
      .p-articleContent .banner .textBox .body {
        font-size: 1.4rem;
        line-height: 2;
        letter-spacing: .8px;
        margin-bottom: 32px; }
      .p-articleContent .banner .textBox .c-btn {
        color: #FFF;
        text-decoration: none; }
  .p-articleContent .nextPrevNavigation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 128px 0; }
    .p-articleContent .nextPrevNavigation .prev a {
      display: block;
      position: relative;
      width: 32px;
      height: 32px;
      overflow: hidden; }
      .p-articleContent .nextPrevNavigation .prev a::before {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: 75%;
        height: 75%;
        background: linear-gradient(90deg, #a2f6d5, #600528);
        transform: translate(50%, -50%) rotate(45deg); }
    .p-articleContent .nextPrevNavigation .next a {
      display: block;
      position: relative;
      width: 32px;
      height: 32px;
      overflow: hidden; }
      .p-articleContent .nextPrevNavigation .next a::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 75%;
        height: 75%;
        background: linear-gradient(90deg, #a2f6d5, #600528);
        transform: translate(-50%, -50%) rotate(45deg); }

@media screen and (max-width: 670px) {
  .p-articleContent .inside .singleHeader .info {
    flex-flow: row wrap; }
    .p-articleContent .inside .singleHeader .info .categoryName {
      margin-bottom: 16px; }
    .p-articleContent .inside .singleHeader .info .pv {
      margin-bottom: 16px; }
    .p-articleContent .inside .singleHeader .info .date {
      margin-left: 0; }
  .p-articleContent .banner {
    padding: 0;
    margin: 56px -24px 0; }
    .p-articleContent .banner .textBox {
      width: 100%;
      height: 100%;
      padding: 20px; }
      .p-articleContent .banner .textBox .head {
        font-size: 1.6rem;
        font-weight: bold; }
  .p-articleContent .nextPrevNavigation p {
    padding: 0 16px; }
  .p-articleContent .content h1 {
    font-size: 2.4rem; }
  .p-articleContent .content h2 {
    padding: 12px;
    font-size: 2rem; }
  .p-articleContent .content ul {
    padding: 32px 16px; }
  .p-articleContent .content ol {
    padding: 32px 16px; } }

.p-categoryList {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center; }
  .p-categoryList li {
    margin-right: 16px;
    margin-bottom: 32px; }
    .p-categoryList li:last-child {
      margin-right: 0; }
    .p-categoryList li a {
      display: block;
      padding: 8px 32px;
      background: #9172FE;
      border-radius: 20px;
      text-align: center;
      font-size: 1.6rem;
      color: #FFF;
      border: solid 1px transparent; }
      .p-categoryList li a:hover {
        background: #FFF;
        color: #191970;
        border: solid 1px #9172FE; }

@media screen and (max-width: 670px) {
  .p-categoryList li {
    margin-right: 8px;
    margin-bottom: 12px; }
    .p-categoryList li a {
      font-size: 1.2rem; } }

.p-contactSection .at-above-post-page,
.p-contactSection .at-below-post-page {
  display: none; }

.p-contactSection .inner {
  padding: 240px 32px;
  max-width: 1350px;
  margin: 0 auto; }
  .p-contactSection .inner .headContents {
    margin-bottom: 64px; }
    .p-contactSection .inner .headContents .br {
      display: block; }
  .p-contactSection .inner .sectionHead {
    font-size: 2.4rem; }
  .p-contactSection .inner .sectionTitle {
    font-size: 3.2rem;
    margin-bottom: 16px; }

.p-contactSection .form {
  max-width: 1000px;
  margin: 0 auto;
  padding: 64px 40px;
  background: #FFF;
  box-shadow: 0 14px 42; }
  .p-contactSection .form .checkBoxLabel label {
    margin-bottom: 0; }
  .p-contactSection .form .checkBoxLabel .wpcf7-list-item {
    display: flex;
    position: relative;
    margin-bottom: 16px; }
  .p-contactSection .form .checkBoxLabel input {
    display: block;
    margin-right: 12px;
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #FFF; }
    .p-contactSection .form .checkBoxLabel input:checked + .wpcf7-list-item-label::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 12px;
      width: 12px;
      height: 12px;
      border-radius: 50%;
      background: #9172FE;
      transform: translate(-50%, -50%); }
  .p-contactSection .form .checkBoxLabel,
  .p-contactSection .form label {
    display: flex;
    margin-bottom: 32px; }
    .p-contactSection .form .checkBoxLabel .labelName,
    .p-contactSection .form label .labelName {
      display: flex;
      align-itmes: center;
      min-width: 240px;
      font-size: 1.6rem; }
      .p-contactSection .form .checkBoxLabel .labelName br,
      .p-contactSection .form label .labelName br {
        display: none; }
      .p-contactSection .form .checkBoxLabel .labelName .required,
      .p-contactSection .form label .labelName .required {
        color: #ff7f7f;
        margin-left: 12px; }
    .p-contactSection .form .checkBoxLabel .wpcf7-form-control-wrap,
    .p-contactSection .form label .wpcf7-form-control-wrap {
      display: block;
      width: 100%; }
    .p-contactSection .form .checkBoxLabel .wpcf7-form-control,
    .p-contactSection .form label .wpcf7-form-control {
      display: block;
      padding: 16px 12px;
      width: 100%;
      background: #F5F5F5;
      font-size: 1.6rem; }
      .p-contactSection .form .checkBoxLabel .wpcf7-form-control option,
      .p-contactSection .form label .wpcf7-form-control option {
        margin-bottom: 12px; }
  .p-contactSection .form .wpcf7-submit {
    display: block;
    padding: 12px 36px;
    border-radius: 50px;
    margin: 0 auto;
    width: 200px;
    background: #191970;
    border: solid 1px transparent;
    text-align: center;
    font-size: 1.6rem;
    color: #FFF; }
  .p-contactSection .form .wpcf7-response-output.wpcf7-mail-sent-ok {
    border: none;
    background: #7EB46F;
    padding: 24px;
    line-height: 1.75;
    letter-spacing: .8px;
    font-size: 1.6rem;
    font-weight: bold; }

.c-tagList {
  display: flex;
  flex-flow: row wrap;
  align-items: center; }
  .c-tagList span {
    margin-right: 8px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    background: #F5F5F5;
    padding: 4px 12px;
    border-radius: 30px;
    color: #191970; }
    .c-tagList span a {
      display: block;
      color: #191970;
      font-size: 1.2rem; }

@media screen and (max-width: 1000px) {
  .p-contactSection .inner {
    padding: 120px 32px; } }

@media screen and (max-width: 670px) {
  .p-contactSection .inner {
    padding: 120px 24px; }
    .p-contactSection .inner .headContents .sectionHead {
      font-size: 1.6rem; }
    .p-contactSection .inner .headContents .sectionTitle {
      font-size: 2.4rem; }
    .p-contactSection .inner .headContents .description {
      font-size: 1.4rem; }
      .p-contactSection .inner .headContents .description .br {
        display: inline; }
  .p-contactSection .form {
    padding: 48px 24px;
    margin: 0 -24px; }
    .p-contactSection .form .checkBoxLabel,
    .p-contactSection .form label {
      display: block; } }

.p-features {
  margin-bottom: 192px; }
  .p-features .inner {
    max-width: 1350px;
    margin: 0 auto; }
  .p-features .featuresList {
    display: flex;
    justify-content: space-between; }
    .p-features .featuresList .featuresItem {
      flex-basis: 30%; }
      .p-features .featuresList .featuresItem:nth-child(1) .feature::before {
        background: rgba(145, 114, 254, 0.7); }
      .p-features .featuresList .featuresItem:nth-child(2) .feature {
        top: 120px; }
        .p-features .featuresList .featuresItem:nth-child(2) .feature::before {
          background: rgba(157, 68, 110, 0.7); }
      .p-features .featuresList .featuresItem:nth-child(3) .feature::before {
        background: rgba(44, 70, 184, 0.7); }
      .p-features .featuresList .featuresItem .feature {
        position: relative;
        z-index: 3;
        padding: 64px 32px;
        border-radius: 40px 0 40px 0;
        overflow: hidden;
        color: #FFF;
        height: 100%; }
        .p-features .featuresList .featuresItem .feature::before, .p-features .featuresList .featuresItem .feature::after {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; }
        .p-features .featuresList .featuresItem .feature::before {
          z-index: -1; }
        .p-features .featuresList .featuresItem .feature::after {
          z-index: -2;
          background: url("./images/featured_backimage.png") center no-repeat;
          background-size: cover; }
        .p-features .featuresList .featuresItem .feature .icon {
          display: block;
          width: 88px;
          margin-bottom: 32px; }
        .p-features .featuresList .featuresItem .feature .subHead {
          margin-bottom: 32px;
          font-size: 1.6rem; }
        .p-features .featuresList .featuresItem .feature .head {
          min-height: 72px;
          margin-bottom: 64px;
          font-size: 2.4rem; }
        .p-features .featuresList .featuresItem .feature .description {
          font-size: 1.6rem; }

@media screen and (max-width: 1000px) {
  .p-features .featuresList {
    display: block; }
    .p-features .featuresList .featuresItem {
      margin-bottom: 48px; }
      .p-features .featuresList .featuresItem:nth-child(2) .feature {
        top: 0; }
      .p-features .featuresList .featuresItem .feature .icon {
        width: 64px;
        margin-bottom: 24px; }
      .p-features .featuresList .featuresItem .feature .subHead {
        margin-bottom: 24px; }
      .p-features .featuresList .featuresItem .feature .head {
        min-height: auto;
        margin-bottom: 24px; } }

@media screen and (max-width: 670px) {
  .p-features {
    margin-bottom: 48px; }
    .p-features .featuresList {
      margin: 0 -24px; }
      .p-features .featuresList .featuresItem .feature {
        padding: 48px 24px;
        border-radius: 0; }
        .p-features .featuresList .featuresItem .feature .head {
          font-size: 2rem; }
        .p-features .featuresList .featuresItem .feature .description {
          font-size: 1.4rem; } }

.p-features_intro {
  margin-bottom: 24px; }
  .p-features_intro .inner {
    max-width: 900px;
    margin: 0 auto; }
  .p-features_intro .featuresList {
    display: flex;
    justify-content: space-between; }
    .p-features_intro .featuresList .featuresItem {
      flex-basis: 30%; }
      .p-features_intro .featuresList .featuresItem:nth-child(1) .feature::before {
        background: rgba(145, 114, 254, 0.7); }
      .p-features_intro .featuresList .featuresItem:nth-child(2) .feature {
        top: 120px; }
        .p-features_intro .featuresList .featuresItem:nth-child(2) .feature::before {
          background: rgba(157, 68, 110, 0.7); }
      .p-features_intro .featuresList .featuresItem:nth-child(3) .feature::before {
        background: rgba(44, 70, 184, 0.7); }
      .p-features_intro .featuresList .featuresItem .feature {
        position: relative;
        z-index: 3;
        padding: 64px 32px;
        border-radius: 40px 0 40px 0;
        overflow: hidden;
        color: #FFF;
        height: 100%; }
        .p-features_intro .featuresList .featuresItem .feature::before, .p-features_intro .featuresList .featuresItem .feature::after {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; }
        .p-features_intro .featuresList .featuresItem .feature::before {
          z-index: -1; }
        .p-features_intro .featuresList .featuresItem .feature::after {
          z-index: -2;
          background: url("./images/featured_backimage.png") center no-repeat;
          background-size: cover; }
        .p-features_intro .featuresList .featuresItem .feature .icon {
          display: block;
          width: 88px;
          margin-bottom: 32px; }
        .p-features_intro .featuresList .featuresItem .feature .subHead {
          margin-bottom: 32px;
          font-size: 1.6rem; }
        .p-features_intro .featuresList .featuresItem .feature .head {
          min-height: 72px;
          margin-bottom: 64px;
          font-size: 2.4rem; }
        .p-features_intro .featuresList .featuresItem .feature .description {
          font-size: 1.6rem; }

@media screen and (max-width: 1000px) {
  .p-features_intro .featuresList {
    display: block; }
    .p-features_intro .featuresList .featuresItem {
      margin-bottom: 48px; }
      .p-features_intro .featuresList .featuresItem:nth-child(2) .feature {
        top: 0; }
      .p-features_intro .featuresList .featuresItem .feature .icon {
        width: 64px;
        margin-bottom: 24px; }
      .p-features_intro .featuresList .featuresItem .feature .subHead {
        margin-bottom: 24px; }
      .p-features_intro .featuresList .featuresItem .feature .head {
        min-height: auto;
        margin-bottom: 24px; } }

@media screen and (max-width: 670px) {
  .p-features_intro {
    margin-bottom: 10% 0; }
    .p-features_intro .featuresList {
      margin: 0 -24px; }
      .p-features_intro .featuresList .featuresItem .feature {
        padding: 48px 24px;
        border-radius: 0; }
        .p-features_intro .featuresList .featuresItem .feature .head {
          font-size: 2rem; }
        .p-features_intro .featuresList .featuresItem .feature .description {
          font-size: 1.4rem; } }

.p-foundersBook .inner {
  max-width: 1350px;
  margin: 0 auto; }

.p-foundersBookList {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between; }
  .p-foundersBookList > .listItem {
    margin-bottom: 32px; }
  .p-foundersBookList.column {
    flex-flow: column wrap; }
  .p-foundersBookList.row2 > .listItem {
    flex-basis: 48%; }
  .p-foundersBookList.row3 > .listItem {
    flex-basis: 32%; }
  .p-foundersBookList.row4 > .listItem {
    flex-basis: 23%; }

@media screen and (max-width: 1000px) {
  .p-foundersBookList.row2 > .listItem {
    flex-basis: 48%; }
  .p-foundersBookList.row3 > .listItem {
    flex-basis: 48%; }
  .p-foundersBookList.row4 > .listItem {
    flex-basis: 49%; } }

@media screen and (max-width: 670px) {
  .p-foundersBookList {
    margin: 0 -24px; }
    .p-foundersBookList.row2 > .listItem {
      flex-basis: 100%; }
    .p-foundersBookList.row3 > .listItem {
      flex-basis: 100%; }
    .p-foundersBookList.row4 > .listItem {
      flex-basis: 100%; } }

.p-heroContents {
  position: relative;
  overflow: hidden; }
  .p-heroContents .backImage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh; }
    .p-heroContents .backImage::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(180deg, #fff, #000);
      opacity: .6; }
    .p-heroContents .backImage .skew {
      position: absolute;
      top: 0;
      left: 0;
      width: 20vw;
      height: 100vh;
      background: #FFF; }
      .p-heroContents .backImage .skew::after {
        content: "";
        position: absolute;
        top: 0;
        left: 100%;
        border-bottom: 100vh solid #FFF;
        border-left: 0 solid transparent;
        border-right: 25vw solid transparent;
        width: 25vw;
        height: 0; }
    .p-heroContents .backImage .image {
      width: 100%;
      height: 100%;
      background: url("http://topcourt-law.com/wp-content/uploads/2021/05/material_2.jpg") center no-repeat;
      background-size: cover; }
  .p-heroContents .inner {
    position: relative;
    height: 100vh; }
  .p-heroContents .centerContents {
    position: absolute;
    top: 70%;
    left: 5%;
    transform: translate(0, -50%);
    color: #000; }
  .p-heroContents .heroBtn {
    margin-left: 0; }
  .p-heroContents .heroHead {
    margin: 0 auto 40px;
    font-size: 4.4rem;
    font-weight: bold;
    text-align: left; }
    .p-heroContents .heroHead .primary {
      margin-left: 16px;
      color: #AD059A; }
  .p-heroContents .heroImageLeft {
    position: absolute;
    bottom: 0%;
    left: 0;
    transform: translate(-30%, 0); }
  .p-heroContents .heroImageRight {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(30%, 0); }
  .p-heroContents .heroDescription {
    margin-bottom: 48px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: .8px;
    text-align: left; }
    .p-heroContents .heroDescription .br {
      display: block; }
  .p-heroContents .news {
    position: absolute;
    bottom: 5%;
    right: 32px;
    width: 100%; }
    .p-heroContents .news .card {
      padding: 40px;
      background: #FFF;
      box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1);
      width: 100%;
      max-width: 400px;
      margin-left: auto; }
      .p-heroContents .news .card .flexBox {
        display: flex;
        align-items: center;
        margin-bottom: 20px; }
        .p-heroContents .news .card .flexBox .tag {
          font-weight: bold;
          color: #191970; }
        .p-heroContents .news .card .flexBox .date {
          margin-left: 12px;
          color: #D5D7DA; }
      .p-heroContents .news .card .description {
        margin-bottom: 16px;
        line-height: 1.75;
        letter-spacing: .8px; }

@media screen and (min-width: 1920px) {
  .p-heroContents .heroImageLeft {
    width: 20%; }
  .p-heroContents .heroImageRight {
    width: 20%; } }

@media screen and (max-width: 1000px) {
  .p-heroContents .backImage .skew {
    width: 0; }
    .p-heroContents .backImage .skew::after {
      border-bottom: 100vh solid #FFF;
      border-left: 0 solid transparent;
      border-right: 100vw solid transparent;
      width: 100vw; }
  .p-heroContents .centerContents {
    left: 0;
    padding: 0 32px; }
  .p-heroContents .heroHead {
    font-size: 3.2rem; }
  .p-heroContents .news {
    position: relative;
    bottom: auto;
    right: auto; }
    .p-heroContents .news .card {
      padding: 20px 32px;
      box-shadow: none; } }

@media screen and (max-width: 670px) {
  .p-heroContents .centerContents {
    top: 60%;
    padding: 0 24px; }
  .p-heroContents .heroHead {
    width: auto;
    font-size: 2.8rem; }
  .p-heroContents .heroDescription {
    font-size: 1.4rem; }
    .p-heroContents .heroDescription .br {
      display: inline; }
  .p-heroContents .heroImageLeft {
    width: 56%; }
  .p-heroContents .heroImageRight {
    width: 56%;
    top: 0; }
  .p-heroContents .news {
    display: none; } }

.p-layerHeroContents {
  position: relative;
  color: #000;
  overflow: hidden;
  margin: auto auto;
  margin-top: 0; }
  .p-layerHeroContents .backImage {
    position: absolute;
    bottom: 0;
    z-index: 0;
    right: -20%;
    width: 100%;
    height: 100%;
    transform: skewX(15deg);
    overflow: hidden; }
    .p-layerHeroContents .backImage .image {
      position: absolute;
      top: 50%;
      right: -20%;
      z-index: 2;
      width: 100%;
      height: 100%;
      overflow: hidden;
      transform: translate(0, -50%); }
      .p-layerHeroContents .backImage .image::before {
        position: relative;
        left: -20%;
        display: block;
        content: "";
        width: 100%;
        height: 100%;
        transform: skewX(-15deg) scale(1.1); }
      .p-layerHeroContents .backImage .image::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        opacity: .8;
        display: block;
        width: 100%;
        height: 100%;
        background: linear-gradient(180deg, #fff, #000); }
    .p-layerHeroContents .backImage .skew {
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      z-index: 1;
      width: 83%;
      height: 63%;
      background: #F5F5F5;
      transform: translate(0, -50%); }
  .p-layerHeroContents .inner {
    max-width: 1350px;
    margin: 7% auto 0;
    height: 85vh;
    min-height: 800px;
    max-height: 820px; }
  .p-layerHeroContents .centerContents {
    position: absolute;
    top: 60%;
    left: auto;
    z-index: 1;
    transform: translate(0, -50%);
    padding-left: 32px; }
    .p-layerHeroContents .centerContents .heroTitle {
      position: relative;
      margin-bottom: 16px;
      font-size: 2.4rem;
      font-weight: bold; }
      .p-layerHeroContents .centerContents .heroTitle::before {
        content: "";
        position: absolute;
        bottom: -8px;
        left: 0;
        width: 82px;
        height: 6px;
        background: linear-gradient(90deg, #191970, #fff); }
    .p-layerHeroContents .centerContents .heroHead {
      margin-bottom: 24px;
      font-size: 4.4rem;
      font-weight: bold; }
    .p-layerHeroContents .centerContents .heroDescription {
      max-width: 500px;
      line-height: 1.75;
      letter-spacing: .8px;
      font-size: 1.6rem; }
  .p-layerHeroContents.p-financingHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-financingHero .image::before {
      background: url("./images/service/financingHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-counselHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-counselHero .image::before {
      background: url("./images/service/counselHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-contractsHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-contractsHero .image::before {
      background: url("./images/service/contractsHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-aiHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-aiHero .image::before {
      background: url("./images/service/aiHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-icoHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-icoHero .image::before {
      background: url("./images/service/isoHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-exitHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-exitHero .image::before {
      background: url("./images/service/exitHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-scaleHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-scaleHero .image::before {
      background: url("./images/service/accelaratorHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-aboutHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-aboutHero .image::before {
      background: url("./images/aboutHero.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-serviceIndexHero .image::before {
    background: url("./images/service/serviceIndexHero.jpg") center no-repeat;
    background-size: cover; }
  .p-layerHeroContents.p-lawyerIndexHero .image::before {
    background: url("./images/service/lawyerIndexHero.jpg") center no-repeat;
    background-size: cover; }
  .p-layerHeroContents.p-teamHero {
    margin-bottom: 192px; }
    .p-layerHeroContents.p-teamHero .image::before {
      background: url("./images/ourTeam@2x.jpg") center no-repeat;
      background-size: cover; }
  .p-layerHeroContents.p-recruitHero {
    margin-bottom: 192px; }
  .p-layerHeroContents.p-bookHero .image::before {
    background: url("./images/bookHero.jpg") center no-repeat;
    background-size: cover; }

@media screen and (max-width: 1000px) {
  .p-layerHeroContents {
    height: 100vh; }
    .p-layerHeroContents.p-aboutHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-financingHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-counselHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-contractsHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-aiHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-icoHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-exitHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-scaleHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-teamHero {
      margin-bottom: 96px; }
    .p-layerHeroContents.p-recruitHero {
      margin-bottom: 96px; }
    .p-layerHeroContents .backImage {
      width: 140%;
      right: -55%;
      transform: skewX(10deg); }
    .p-layerHeroContents .centerContents {
      padding: 0 32px; } }

@media screen and (max-width: 670px) {
  .p-layerHeroContents.p-aboutHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-financingHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-counselHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-contractsHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-aiHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-icoHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-exitHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-scaleHero {
    margin-bottom: 40px; }
  .p-layerHeroContents.p-recruitHero {
    margin-bottom: 40px; }
  .p-layerHeroContents .centerContents {
    padding: 0 24px; }
    .p-layerHeroContents .centerContents .heroTitle {
      font-size: 1.6rem; }
    .p-layerHeroContents .centerContents .heroHead {
      font-size: 2.4rem; }
    .p-layerHeroContents .centerContents .heroDescription {
      font-size: 1.4rem; } }

.p-memberList {
  max-width: 1350px;
  margin: 0 auto 100px; }
  .p-memberList .memberList {
    display: flex;
    flex-flow: row wrap; }
    .p-memberList .memberList .memberItem {
      flex-basis: 25%; }

.c-memberCard {
  position: relative;
  overflow: hidden; }
  .c-memberCard::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1); }
  .c-memberCard .image {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%; }
  .c-memberCard .textContents {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 3;
    display: flex;
    flex-flow: column nowrap;
    padding: 16px;
    width: 100%; }
  .c-memberCard .name {
    order: 0;
    font-size: 2rem;
    font-weight: bold;
    color: #FFF; }
  .c-memberCard .position {
    order: 1;
    font-size: 1.6rem;
    color: #FFF; }
  .c-memberCard .description {
    display: none;
    color: #FFF; }

@media screen and (max-width: 1000px) {
  .p-memberList .memberList .memberItem {
    flex-basis: 33.333%; } }

@media screen and (max-width: 670px) {
  .p-memberList .memberList .memberItem {
    flex-basis: 50%; }
  .c-memberCard .name {
    font-size: 1.6rem; }
  .c-memberCard .position {
    font-size: 1.4rem; } }

.p-memberModal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all .3s;
  overflow-y: scroll;
  padding: 160px 120px;
  background: linear-gradient(135deg, #07071d, #a9a9ea); }
  .p-memberModal .closeBtn {
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: solid 1px #FFF; }
    .p-memberModal .closeBtn::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 50%;
      height: 2px;
      background: #FFF;
      transform: translate(-50%, -50%) rotate(45deg); }
    .p-memberModal .closeBtn::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 50%;
      height: 2px;
      background: #FFF;
      transform: translate(-50%, -50%) rotate(-45deg); }
  .p-memberModal.js-open {
    opacity: 1;
    visibility: visible; }
  .p-memberModal .inner {
    position: relative;
    max-width: 1350px;
    margin: 0 auto; }
  .p-memberModal .c-memberCard {
    max-width: 700px; }
    .p-memberModal .c-memberCard::before {
      display: none; }
    .p-memberModal .c-memberCard .textContents {
      position: relative;
      top: 0;
      left: 0;
      padding: 0;
      margin-bottom: 48px; }
    .p-memberModal .c-memberCard .name {
      order: 1;
      font-size: 3.2rem; }
    .p-memberModal .c-memberCard .position {
      order: 0;
      font-size: 2rem;
      color: #FFF; }
    .p-memberModal .c-memberCard .imageBox {
      margin-bottom: 64px; }
    .p-memberModal .c-memberCard .description {
      font-size: 1.6rem;
      display: block; }

@media screen and (max-width: 1000px) {
  .p-memberModal {
    padding: 80px 32px; } }

@media screen and (max-width: 670px) {
  .p-memberModal {
    padding: 40px 24px; }
    .p-memberModal .inner .closeBtn {
      width: 40px;
      height: 40px; } }

.p-newsWrapperContent {
  background: url("./images/backImage.svg") center;
  background-size: cover; }

.p-newsHero {
  margin-bottom: 100px;
  padding-top: 240px;
  text-align: center; }
  .p-newsHero .newsHead {
    font-size: 2.4rem;
    color: #9172FE; }
  .p-newsHero .newsTitle {
    font-size: 4.4rem; }

.p-newsList .inner {
  margin: 0 auto;
  padding: 0 32px;
  max-width: 1350px; }

.p-newsList .newsList .listItem {
  position: relative;
  margin-bottom: 80px; }
  .p-newsList .newsList .listItem:last-child {
    margin-bottom: 0; }
  .p-newsList .newsList .listItem .card {
    background: #FFF;
    padding: 100px;
    border-radius: 40px 0 40px 0;
    box-shadow: 0 14px 14px rgba(0, 0, 0, 0.1); }
    .p-newsList .newsList .listItem .card .date {
      line-height: 1.75;
      letter-spacing: .8px;
      font-size: 1.2rem;
      font-weight: bold;
      color: #B2B2B2;
      margin-bottom: 40px; }
    .p-newsList .newsList .listItem .card .title {
      line-height: 1.75;
      letter-spacing: .8px;
      font-size: 2.4rem;
      color: #9172FE;
      margin-bottom: 16px; }
    .p-newsList .newsList .listItem .card .description {
      line-height: 1.75;
      letter-spacing: .8px;
      font-size: 1.6rem;
      margin-bottom: 32px; }
      .p-newsList .newsList .listItem .card .description figure {
        margin: 40px 0; }
        .p-newsList .newsList .listItem .card .description figure img {
          display: block;
          width: 100%; }
    .p-newsList .newsList .listItem .card .contactLink {
      font-size: 1.4rem;
      color: #9172FE;
      text-decoration: underline; }

.p-newsList .c-pageNavi {
  padding: 80px 0; }

@media screen and (max-width: 670px) {
  .p-newsList .inner {
    margin: 0 -24px;
    padding: 0 24px; }
  .p-newsList .newsList .listItem {
    margin-bottom: 24px; }
    .p-newsList .newsList .listItem .card {
      border-radius: 0;
      padding: 48px 24px; } }

.p-otherService {
  margin-bottom: 192px; }
  .p-otherService .inner {
    max-width: 1350px;
    margin: 0 auto; }
  .p-otherService .serviceList {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding: 0 32px; }
    .p-otherService .serviceList .serviceItem {
      flex-basis: 32%;
      margin-bottom: 4.5%; }
      .p-otherService .serviceList .serviceItem .service {
        display: block;
        padding: 48px 32px;
        height: 100%;
        box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1);
        border-radius: 40px 0 40px 0;
        overflow: hidden;
        color: #000; }
        .p-otherService .serviceList .serviceItem .service .headBox {
          display: flex;
          align-items: center;
          min-height: 112px;
          margin-bottom: 16px; }
          .p-otherService .serviceList .serviceItem .service .headBox .icon {
            display: block;
            margin-right: 32px;
            width: 64px; }
          .p-otherService .serviceList .serviceItem .service .headBox .subHead {
            margin-bottom: 16px;
            font-size: 1.6rem;
            color: #D5D7DA; }
          .p-otherService .serviceList .serviceItem .service .headBox .head {
            font-size: 2.4rem;
            color: #9172FE; }
        .p-otherService .serviceList .serviceItem .service .description {
          line-height: 1.75;
          letter-spacing: .8px;
          font-size: 1.6rem; }

@media screen and (max-width: 1000px) {
  .p-otherService .serviceList .serviceItem {
    flex-basis: 48%;
    margin-bottom: 48px; }
    .p-otherService .serviceList .serviceItem .service .headBox .head {
      font-size: 2rem; } }

@media screen and (max-width: 670px) {
  .p-otherService {
    margin-bottom: 96px; }
    .p-otherService .serviceList {
      padding: 0; }
      .p-otherService .serviceList .serviceItem {
        flex-basis: 100%; }
        .p-otherService .serviceList .serviceItem .service {
          border-radius: 0; } }

.p-ourClient .inner {
  max-width: 1350px;
  margin: 0 auto; }

.p-ourClient .clientImage {
  margin-bottom: 96px; }
  .p-ourClient .clientImage .logoList {
    display: flex;
    flex-flow: row wrap; }
    .p-ourClient .clientImage .logoList .logoItem {
      flex-basis: 16.66%;
      margin-bottom: 32px; }
      .p-ourClient .clientImage .logoList .logoItem .image {
        display: block;
        width: 50%;
        margin: 0 auto; }

.p-ourClient .mediaImage {
  margin: 0 auto;
  padding: 32px 0;
  max-width: 1075px;
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }
  .p-ourClient .mediaImage .logoList {
    display: flex;
    flex-flow: row wrap;
    justify-content: center; }
    .p-ourClient .mediaImage .logoList .logoItem {
      flex-basis: 40%;
      margin-bottom: 32px; }
      .p-ourClient .mediaImage .logoList .logoItem .image {
        display: block;
        width: 50%;
        margin: 0 auto; }

@media screen and (max-width: 1000px) {
  .p-ourClient .clientImage .logoList .logoItem {
    flex-basis: 33.33%; }
  .p-ourClient .mediaImage .logoList .logoItem .image {
    width: 90%; } }

.p-ourService {
  position: relative; }
  .p-ourService .inner {
    max-width: 1350px;
    margin: 0 auto; }
  .p-ourService .ourServiceList {
    margin-bottom: 20px; }
    .p-ourService .ourServiceList .listItem {
      margin-bottom: 20px; }
      .p-ourService .ourServiceList .listItem:last-child {
        margin-bottom: 0; }

@media screen and (max-width: 670px) {
  .p-ourService .ourServiceList .listItem {
    margin-bottom: 48px; }
  .p-ourService .c-btn {
    font-size: 1.4rem;
    padding: 16px;
    width: auto;
    max-width: 280px; } }

.p-ourTeam {
  position: relative;
  overflow: hidden; }
  .p-ourTeam:after {
    content: "";
    position: absolute;
    top: 20%;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    background: url("./images/ourTeam@2x.jpg") center no-repeat;
    background-size: cover; }
  .p-ourTeam::before {
    content: "";
    position: absolute;
    top: 20%;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #a2f6d5, #600528);
    opacity: .5; }
  .p-ourTeam .ourTeamDescription {
    margin-bottom: 80px; }
  .p-ourTeam .inner {
    background: #FFF;
    box-shadow: 0 14px 14px rgba(0, 0, 0, 0.1);
    padding: 40px 32px;
    max-width: 1075px;
    margin: 0 auto; }
    .p-ourTeam .inner .teamList {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 80px;
      max-width: 800px; }
      .p-ourTeam .inner .teamList .listItem {
        flex-basis: 10%;
        text-align: center;
        margin-right: 32px;
        transition: all .3s; }
        .p-ourTeam .inner .teamList .listItem:hover {
          flex-basis: 15%; }
          .p-ourTeam .inner .teamList .listItem:hover .name {
            opacity: 1;
            visibility: visible; }
          .p-ourTeam .inner .teamList .listItem:hover .position {
            opacity: 1;
            visibility: visible; }
        .p-ourTeam .inner .teamList .listItem:last-child {
          margin-right: 0; }
        .p-ourTeam .inner .teamList .listItem.big {
          flex-basis: 15%; }
          .p-ourTeam .inner .teamList .listItem.big .name {
            opacity: 1;
            visibility: visible; }
          .p-ourTeam .inner .teamList .listItem.big .position {
            opacity: 1;
            visibility: visible; }
        .p-ourTeam .inner .teamList .listItem .imageBox {
          border-radius: 50%;
          overflow: hidden;
          margin-bottom: 16px; }
          .p-ourTeam .inner .teamList .listItem .imageBox .image {
            display: block;
            width: 100%; }
        .p-ourTeam .inner .teamList .listItem .name {
          opacity: 0;
          visibility: hidden;
          font-size: 1.4rem;
          color: #000; }
        .p-ourTeam .inner .teamList .listItem .position {
          opacity: 0;
          visibility: hidden;
          font-size: 1.2rem;
          color: #9172FE; }
  .p-ourTeam .achievement .inside {
    padding: 72px 0 0;
    max-width: 1075px;
    margin: 0 auto; }
    .p-ourTeam .achievement .inside .achievementHead {
      position: relative;
      margin-bottom: 40px; }
      .p-ourTeam .achievement .inside .achievementHead::before {
        content: "";
        position: absolute;
        bottom: -12px;
        left: 50%;
        width: 80px;
        height: 1px;
        background: #FFF;
        transform: translate(-50%, 0); }
    .p-ourTeam .achievement .inside .achievementList {
      display: flex;
      align-items: center;
      justify-content: space-between; }
      .p-ourTeam .achievement .inside .achievementList .listItem {
        display: flex;
        flex-flow: column wrap;
        color: #FFF; }
        .p-ourTeam .achievement .inside .achievementList .listItem .numberBox {
          display: flex;
          align-items: flex-end; }
          .p-ourTeam .achievement .inside .achievementList .listItem .numberBox .number {
            font-size: 10rem;
            font-weight: bold; }
            .p-ourTeam .achievement .inside .achievementList .listItem .numberBox .number .unit {
              font-size: 1.6rem;
              font-weight: normal; }
        .p-ourTeam .achievement .inside .achievementList .listItem .subText {
          order: 1;
          font-size: 1.6rem; }

@media screen and (max-width: 1000px) {
  .p-ourTeam .achievement .inside .achievementList {
    flex-flow: row wrap;
    align-items: stretch;
    text-align: center; }
    .p-ourTeam .achievement .inside .achievementList .listItem {
      flex-basis: 50%;
      margin-bottom: 32px; }
      .p-ourTeam .achievement .inside .achievementList .listItem .numberBox .number {
        width: 100%; } }

@media screen and (max-width: 670px) {
  .p-ourTeam .inner {
    margin: 0 -24px;
    padding: 32px 24px; }
  .p-ourTeam .achievement .inside .achievementList .listItem {
    flex-basis: 100%; }
    .p-ourTeam .achievement .inside .achievementList .listItem .numberBox .number {
      font-size: 10rem; }
    .p-ourTeam .achievement .inside .achievementList .listItem .subText {
      order: 0;
      font-size: 1.4rem; } }

.p-outLine {
  margin: 60px 25px 60px;
  padding: 0 32px; }
  .p-outLine .inner {
    display: flex;
    margin: 0 auto;
    max-width: 1350px;
    border-radius: 40px 0 40px 0;
    box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1);
    overflow: hidden; }
  .p-outLine .map {
    flex-basis: 50%;
    height: 600px;
    box-shadow: 14px 0 42px rgba(0, 0, 0, 0.1);
    }
  .p-outLine .textContents {
    display: flex;
    align-items: center;
    flex-basis: 50%;
    padding: 0 64px; }
    .p-outLine .textContents .outLineHead {
      margin-bottom: 48px;
      text-align: center;
      font-size: 2.4rem;
      font-weight: bold;
      color: #191970; }
    .p-outLine .textContents .outLineTable .tr {
      display: flex;
      align-items: center;
      margin-bottom: 16px;
      padding-bottom: 16px;
      border-bottom: dashed 1px #D5D7DA; }
      .p-outLine .textContents .outLineTable .tr:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none; }
      .p-outLine .textContents .outLineTable .tr .th {
        max-width: 150px;
        min-width: 150px;
        font-size: 1.6rem; }
      .p-outLine .textContents .outLineTable .tr .td {
        font-size: 1.6rem; }
        .p-outLine .textContents .outLineTable .tr .td .mapBtn {
          margin-top: 16px;
          margin-left: 0; }

@media screen and (max-width: 1000px) {
  .p-outLine .inner {
    justify-content: center;
    border-radius: 0; }
  .p-outLine .map {
    display: none; }
  .p-outLine .textContents {
    padding: 32px; } }

@media screen and (max-width: 670px) {
  .p-outLine {
    padding: 0; }
    .p-outLine .inner {
      display: block; }
    .p-outLine .textContents {
      display: block;
      padding: 32px; }
      .p-outLine .textContents .outLineTable .tr {
        display: block; }
        .p-outLine .textContents .outLineTable .tr .th {
          color: #D5D7DA;
          min-width: 100px; } }

.p-price .inner {
  margin: 0 auto;
  max-width: 1075px; }

.p-price .priceList > .listItem {
  margin: 0 20px 48px 20px; }
  .p-price .priceList > .listItem:last-child {
    margin-bottom: 0; }

.p-recruitContents {
  margin-bottom: 120px; }
  .p-recruitContents .inner {
    margin: 0 auto;
    max-width: 1350px; }
    .p-recruitContents .inner .recruitList {
      padding: 0 32px; }
      .p-recruitContents .inner .recruitList .listItem {
        margin-bottom: 32px; }
        .p-recruitContents .inner .recruitList .listItem .c-recruitCard {
          display: flex;
          align-items: center;
          padding: 48px 32px;
          border-radius: 32px 0 32px 0;
          box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }
          .p-recruitContents .inner .recruitList .listItem .c-recruitCard .headBlock {
            display: flex;
            align-items: center; }
          .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox {
            position: relative;
            margin-right: 32px;
            width: 80px;
            height: 80px;
            border-radius: 50%;
            background: #000; }
            .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox.primary {
              background: #9172FE; }
            .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox.purple {
              background: #9D446E; }
            .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox.subPrimary {
              background: #FF0076; }
            .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox.blue {
              background: #7C89EF; }
            .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox .image {
              position: absolute;
              top: 50%;
              left: 50%;
              width: 60%;
              transform: translate(-50%, -50%); }
          .p-recruitContents .inner .recruitList .listItem .c-recruitCard .textContents .title {
            font-size: 2rem;
            font-weight: bold; }
          .p-recruitContents .inner .recruitList .listItem .c-recruitCard .btnBox {
            margin-left: auto; }

@media screen and (max-width: 670px) {
  .p-recruitContents .inner .recruitList {
    padding: 0; }
    .p-recruitContents .inner .recruitList .listItem {
      margin-bottom: 48px; }
      .p-recruitContents .inner .recruitList .listItem .c-recruitCard {
        display: block;
        border-radius: 0;
        padding: 48px 24px; }
        .p-recruitContents .inner .recruitList .listItem .c-recruitCard .headBlock {
          margin-bottom: 32px; }
        .p-recruitContents .inner .recruitList .listItem .c-recruitCard .imageBox {
          width: 48px;
          height: 48px; } }

.p-sectionHead {
  padding: 64px 32px; }
  .p-sectionHead .sectionTitle {
    margin-bottom: 24px;
    font-weight: bold; }
  .p-sectionHead .sectionHead {
    margin-bottom: 32px; }
  .p-sectionHead .sectionDescription {
    margin-bottom: 10%;
    line-height: 2; }
  .p-sectionHead .br {
    display: block; }

@media screen and (max-width: 670px) {
  .p-sectionHead {
    padding: 56px 24px; }
    .p-sectionHead .sectionTitle {
      font-size: 2rem; }
    .p-sectionHead .sectionHead {
      font-size: 2.4rem; }
    .p-sectionHead .sectionDescription {
      margin-bottom: 20%;
      font-size: 1.4rem; }
    .p-sectionHead .br {
      display: inline; } }

.p-sectionHead_team {
  padding: 64px 32px; }
  .p-sectionHead_team .sectionTitle {
    margin-bottom: 24px;
    font-weight: bold; }
  .p-sectionHead_team .sectionHead {
    margin-bottom: 32px; }
  .p-sectionHead_team .sectionDescription {
    margin-bottom: 10%;
    line-height: 2; }
  .p-sectionHead_team .br {
    display: block; }

@media screen and (max-width: 670px) {
  .p-sectionHead_team {
    padding: 56px 24px; }
    .p-sectionHead_team .sectionTitle {
      font-size: 2rem; }
    .p-sectionHead_team .sectionHead {
      font-size: 2.4rem; }
    .p-sectionHead_team .sectionDescription {
      margin-bottom: 20%;
      font-size: 1.4rem; }
    .p-sectionHead_team .br {
      display: inline; } }

.p-serviceIndex {
  margin-bottom: 192px; }
  .p-serviceIndex .inner {
    margin: 0 auto;
    max-width: 1350px; }
  .p-serviceIndex .serviceList .serviceItem {
    display: flex;
    align-items: center; }
    .p-serviceIndex .serviceList .serviceItem:nth-child(odd) .imageContents {
      order: 0;
      border-radius: 0 0px 40px 0;
      overflow: hidden; }
    .p-serviceIndex .serviceList .serviceItem:nth-child(even) .imageContents {
      border-radius: 0px 0 0 40px;
      overflow: hidden; }
    .p-serviceIndex .serviceList .serviceItem .textContents {
      order: 1;
      flex-basis: 50%;
      max-width: 360px;
      margin: 0 auto; }
    .p-serviceIndex .serviceList .serviceItem .imageContents {
      order: 2;
      flex-basis: 50%; }
      .p-serviceIndex .serviceList .serviceItem .imageContents .img {
        display: block;
        width: 100%; }
    .p-serviceIndex .serviceList .serviceItem .serviceTitle {
      display: flex;
      align-items: center;
      font-size: 2.4rem; }
      .p-serviceIndex .serviceList .serviceItem .serviceTitle .icon {
        display: block;
        width: 64px;
        margin-right: 32px; }
    .p-serviceIndex .serviceList .serviceItem .serviceHead {
      padding: 32px 0;
      letter-spacing: .8px;
      font-size: 3.2rem;
      font-weight: bold; }
    .p-serviceIndex .serviceList .serviceItem .serviceDescription {
      font-size: 1.4rem;
      line-height: 1.75;
      margin-bottom: 32px; }
    .p-serviceIndex .serviceList .serviceItem .detailBtn {
      margin-left: 0; }

@media screen and (max-width: 1000px) {
  .p-serviceIndex .serviceList .serviceItem .textContents {
    padding: 32px; } }

@media screen and (max-width: 670px) {
  .p-serviceIndex .serviceList .serviceItem {
    display: block;
    margin-bottom: 48px; }
    .p-serviceIndex .serviceList .serviceItem:nth-child(odd) .imageContents {
      border-radius: 0; }
    .p-serviceIndex .serviceList .serviceItem:nth-child(even) .imageContents {
      border-radius: 0; }
    .p-serviceIndex .serviceList .serviceItem .imageContents {
      overflow: hidden;
      height: 240px; }
    .p-serviceIndex .serviceList .serviceItem .textContents {
      max-width: none; }
    .p-serviceIndex .serviceList .serviceItem .serviceTitle {
      font-size: 1.6rem; }
      .p-serviceIndex .serviceList .serviceItem .serviceTitle .icon {
        width: 40px; }
    .p-serviceIndex .serviceList .serviceItem .serviceHead {
      padding: 24px 0;
      font-size: 2.4rem; } }

.p-serviceIndex_intro {
  margin-bottom: 32px; }
  .p-serviceIndex_intro .inner {
    margin: 0 auto;
    max-width: 1350px; }
  .p-serviceIndex_intro .serviceList .serviceItem {
    display: flex;
    align-items: center; }
    .p-serviceIndex_intro .serviceList .serviceItem:nth-child(odd) .imageContents {
      order: 0;
      border-radius: 0 0px 40px 0;
      overflow: hidden; }
    .p-serviceIndex_intro .serviceList .serviceItem:nth-child(even) .imageContents {
      border-radius: 0px 0 0 40px;
      overflow: hidden; }
    .p-serviceIndex_intro .serviceList .serviceItem .textContents {
      order: 1;
      flex-basis: 50%;
      padding: 50px 20px;
      margin: 0 auto; }
    .p-serviceIndex_intro .serviceList .serviceItem .imageContents {
      order: 2;
      flex-basis: 50%; }
      .p-serviceIndex_intro .serviceList .serviceItem .imageContents .img {
        display: block;
        width: 100%; }
    .p-serviceIndex_intro .serviceList .serviceItem .serviceTitle {
      display: flex;
      align-items: center;
      font-size: 2.4rem; }
      .p-serviceIndex_intro .serviceList .serviceItem .serviceTitle .icon {
        display: block;
        width: 64px;
        margin-right: 32px; }
    .p-serviceIndex_intro .serviceList .serviceItem .serviceHead {
      padding: 32px 0;
      letter-spacing: .8px;
      font-size: 3.2rem;
      font-weight: bold; }
    .p-serviceIndex_intro .serviceList .serviceItem .serviceDescription {
      font-size: 1.4rem;
      line-height: 1.75;
      margin-bottom: 32px; }
    .p-serviceIndex_intro .serviceList .serviceItem .detailBtn {
      margin-left: 0; }

@media screen and (max-width: 1000px) {
  .p-serviceIndex_intro .serviceList .serviceItem .textContents {
    padding: 32px; } }

@media screen and (max-width: 670px) {
  .p-serviceIndex_intro .serviceList .serviceItem {
    display: block;
    margin-bottom: 48px; }
    .p-serviceIndex_intro .serviceList .serviceItem:nth-child(odd) .imageContents {
      border-radius: 0; }
    .p-serviceIndex_intro .serviceList .serviceItem:nth-child(even) .imageContents {
      border-radius: 0; }
    .p-serviceIndex_intro .serviceList .serviceItem .imageContents {
      overflow: hidden;
      height: 240px; }
    .p-serviceIndex_intro .serviceList .serviceItem .textContents {
      max-width: none; }
    .p-serviceIndex_intro .serviceList .serviceItem .serviceTitle {
      font-size: 1.6rem; }
      .p-serviceIndex_intro .serviceList .serviceItem .serviceTitle .icon {
        width: 40px; }
    .p-serviceIndex_intro .serviceList .serviceItem .serviceHead {
      padding: 24px 0;
      font-size: 2.4rem; } }

.p-servicePoint {
  margin-bottom: 192px; }
  .p-servicePoint .inner {
    max-width: 1920px;
    margin: 0 auto; }
  .p-servicePoint .pointList .pointItem {
    margin-bottom: 192px; }
    .p-servicePoint .pointList .pointItem:nth-child(odd) .point {
      justify-content: flex-end; }
      .p-servicePoint .pointList .pointItem:nth-child(odd) .point .textContents {
        left: 15%; }
    .p-servicePoint .pointList .pointItem:nth-child(even) .point .textContents {
      right: 15%; }
  .p-servicePoint .pointList .point {
    display: flex;
    position: relative; }
    .p-servicePoint .pointList .point .imageContents {
      flex-basis: 75%;
      max-height: 750px;
      border-radius: 40px 0 40px 0;
      overflow: hidden; }
      .p-servicePoint .pointList .point .imageContents .image {
        display: block;
        width: 100%; }
    .p-servicePoint .pointList .point .textContents {
      position: absolute;
      top: -80px;
      z-index: 3;
      max-width: 670px;
      padding: 64px;
      background: #FFF;
      border-radius: 40px 0 40px 0;
      box-shadow: 0 14px 42px rgba(0, 0, 0, 0.1); }
      .p-servicePoint .pointList .point .textContents .subHead {
        font-size: 1.6rem;
        font-weight: bold;
        color: #9172FE; }
      .p-servicePoint .pointList .point .textContents .head {
        padding: 32px 0;
        font-size: 3.2rem; }
        .p-servicePoint .pointList .point .textContents .head .breakPoint {
          display: block; }
      .p-servicePoint .pointList .point .textContents .description {
        line-height: 1.75;
        letter-spacing: .8px;
        font-size: 1.6rem; }

@media screen and (max-width: 1000px) {
  .p-servicePoint .pointList .pointItem {
    margin-bottom: 88px; }
    .p-servicePoint .pointList .pointItem:nth-child(odd) .point .textContents {
      left: 0; }
    .p-servicePoint .pointList .pointItem:nth-child(even) .point .textContents {
      right: 0; }
  .p-servicePoint .pointList .point {
    display: block; }
    .p-servicePoint .pointList .point .imageContents {
      max-height: 240px;
      border-radius: 0;
      overflow: hidden; }
      .p-servicePoint .pointList .point .imageContents .image {
        width: 130%; }
    .p-servicePoint .pointList .point .textContents {
      position: relative;
      top: 0;
      left: 0;
      right: 0;
      border-radius: 0;
      max-width: 100%;
      padding: 64px 32px; }
  .p-servicePoint .c-btn {
    font-size: 1.6rem;
    padding: 16px;
    width: auto;
    max-width: 280px; } }

@media screen and (max-width: 670px) {
  .p-servicePoint {
    margin-bottom: 96px; }
    .p-servicePoint .pointList .point .textContents {
      position: relative;
      top: 0;
      left: 0;
      right: 0;
      padding: 64px 24px;
      border-radius: 0; }
      .p-servicePoint .pointList .point .textContents .head {
        font-size: 2.4rem; } }

.p-whyPhenex {
  position: relative;
  background: #F5F5F5; }
  .p-whyPhenex .inner {
    max-width: 1350px;
    margin: 0 auto; }
  .p-whyPhenex .whyPhenexList {
    display: flex;
    justify-content: center;
    margin-bottom: 100px; }
    .p-whyPhenex .whyPhenexList .listItem {
      padding: 0 32px; }
  .p-whyPhenex .whyphenexImage {
    display: block;
    max-width: 800px;
    width: 100%;
    margin: 0 auto 100px; }
  .p-whyPhenex .subDescription {
    line-height: 2;
    margin-bottom: 100px; }

@media screen and (max-width: 1000px) {
  .p-whyPhenex .whyPhenexList {
    display: block; }
    .p-whyPhenex .whyPhenexList .listItem {
      padding: 0; }
  .p-whyPhenex .c-iconCard {
    max-width: 480px;
    margin-bottom: 128px; }
  .p-whyPhenex .subDescription {
    font-size: 1.6rem; } }

@media screen and (max-width: 670px) {
  .p-whyPhenex .subDescription {
    font-size: 1.4rem; }
  .p-whyPhenex .c-iconCard {
    margin-bottom: 64px; }
  .p-whyPhenex .c-btn {
    font-size: 1.4rem;
    padding: 16px;
    width: auto;
    max-width: 280px; }
  .p-whyPhenex .subDescription {
    margin-bottom: 56px; } }

.l-archiveIndex .inner {
  padding: 240px 32px;
  max-width: 1350px;
  margin: 0 auto; }

.l-archiveIndex .archiveTitle {
  margin-bottom: 56px; }

.l-archiveIndex .c-breadCrumbs {
  margin-bottom: 56px; }

.l-archiveIndex .doubleColumn {
  display: flex; }
  .l-archiveIndex .doubleColumn .p-mainContents {
    padding-right: 48px; }
    .l-archiveIndex .doubleColumn .p-mainContents .p-foundersBookList > .listItem {
      margin-bottom: 56px;
      padding-bottom: 36px;
      border-bottom: solid 1px #D5D7DA; }

@media screen and (max-width: 1000px) {
  .l-archiveIndex .inner {
    padding: 120px 32px; }
  .l-archiveIndex .doubleColumn {
    display: block; }
    .l-archiveIndex .doubleColumn .p-mainContents {
      padding-right: 0;
      margin-bottom: 88px; }
    .l-archiveIndex .doubleColumn .p-sideArticleList {
      width: 100%;
      position: relative;
      top: 0;
      overflow-y: visible;
      height: auto; }
      .l-archiveIndex .doubleColumn .p-sideArticleList .p-foundersBookList {
        margin: 0; } }

@media screen and (max-width: 670px) {
  .l-archiveIndex .inner {
    padding: 120px 24px; } }

.l-articleGrid .inner {
  padding: 240px 32px;
  max-width: 1350px;
  margin: 0 auto; }
  .l-articleGrid .inner .doubleColumn {
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start; }
  .l-articleGrid .inner .p-articleContent {
    max-width: 720px;
    margin: 0 auto 80px; }
  .l-articleGrid .inner .featuredPosts {
    margin-bottom: 96px; }
    .l-articleGrid .inner .featuredPosts .postsTitle {
      margin-bottom: 64px; }
  .l-articleGrid .inner .relatedPosts .postsTitle {
    margin-bottom: 64px; }

@media screen and (max-width: 670px) {
  .l-articleGrid .inner {
    padding: 120px 24px; } }

.l-bookIndex.paged {
  padding: 120px 0; }

.l-bookIndex .bookSection {
  margin-bottom: 80px; }
  .l-bookIndex .bookSection .inner {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
    padding: 80px 32px 48px; }
    .l-bookIndex .bookSection .inner .bookSectionTitle {
      position: relative;
      margin-bottom: 48px;
      font-size: 1.6rem;
      font-weight: normal;
      color: #404040; }
      .l-bookIndex .bookSection .inner .bookSectionTitle::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 5%;
        height: 4px;
        background: #191970;
        transform: translate(-50%, -50%); }
      .l-bookIndex .bookSection .inner .bookSectionTitle::before {
        content: attr(title);
        display: block;
        margin-bottom: 32px;
        font-size: 3.2rem;
        font-weight: bold;
        color: #191970; }
  .l-bookIndex .bookSection.featured .inner {
    max-width: 1200px; }
  .l-bookIndex .bookSection.categories {
    padding-right: 32px;
    padding-left: 32px;
    background: #F5F5F5; }

.l-bookIndex .bookLatest .inner {
  position: relative;
  max-width: 1350px;
  margin: 0 auto; }
  .l-bookIndex .bookLatest .inner .bookLatestTitle {
    margin-bottom: 48px; }

@media screen and (max-width: 670px) {
  .l-bookIndex .bookSection {
    margin-bottom: 32px; }
    .l-bookIndex .bookSection .inner {
      padding: 40px 24px; }
    .l-bookIndex .bookSection.categories {
      padding-right: 0;
      padding-left: 0; } }

.l-footer {
  background: #000; }
  .l-footer .inner {
    margin: 0 auto;
    padding: 32px;
    max-width: 1350px; }
  .l-footer .footerTopContents {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 48px 0; }
    .l-footer .footerTopContents .footerLogo {
      margin-right: 40px;
      width: 200px; }
      .l-footer .footerTopContents .footerLogo .logo {
        display: block;
        width: 120%; }
    .l-footer .footerTopContents .topNav {
      flex-basis: 50%;
      display: flex;
      justify-content: flex-end; }
      .l-footer .footerTopContents .topNav .navList .listItem {
        text-align: right;
        margin-right: 24px;
        margin-bottom: 16px; }
        .l-footer .footerTopContents .topNav .navList .listItem:last-child {
          margin-bottom: 0; }
        .l-footer .footerTopContents .topNav .navList .listItem .linkText {
          font-size: 1.6rem;
          color: #FFF; }
  .l-footer .footerBottomContents {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-top: solid 1px #D5D7DA;
    padding: 48px 0; }
    .l-footer .footerBottomContents .copy {
      color: #B2B2B2; }
    .l-footer .footerBottomContents .bottomNav .navList {
      display: flex;
      align-items: center; }
      .l-footer .footerBottomContents .bottomNav .navList .listItem {
        margin-right: 24px; }
        .l-footer .footerBottomContents .bottomNav .navList .listItem .linkText {
          font-size: 1.6rem;
          color: #B2B2B2; }

@media screen and (max-width: 670px) {
  .l-footer .inner {
    padding: 32px 24px; }
  .l-footer .footerTopContents {
    display: block; }
    .l-footer .footerTopContents .footerLogo {
      margin-bottom: 32px; }
    .l-footer .footerTopContents .topNav {
      display: block; }
      .l-footer .footerTopContents .topNav .navList .listItem {
        text-align: left; }
  .l-footer .footerBottomContents {
    display: block; }
    .l-footer .footerBottomContents .bottomNav .navList {
      display: block; }
      .l-footer .footerBottomContents .bottomNav .navList .listItem {
        margin-bottom: 16px; } }

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  padding: 20px 32px;
  background: none;
  transition: all .3s; }
  .l-header.js-scrolled {
    transform: translate(0, -100%); }
  .l-header.js-show {
    background: #FFF; }
    .l-header.js-show .c-headerNav .navList .navItem .link {
      color: #000; }
    .l-header.js-show .btnList .c-btn {
      display: block;
      background: #FF0076;
      color: #FFF; }
  .l-header .inner {
    display: flex;
    align-items: center; }
  .l-header .c-hamburgerMenu {
    display: none; }
  .l-header .searchFormModal {
    visibility: hidden;
    opacity: 0;
    transition: all .3s; }
    .l-header .searchFormModal.js-open {
      visibility: visible;
      opacity: 1; }
    .l-header .searchFormModal .backShadow {
      position: fixed;
      top: 0;
      left: 0;
      z-index: 1000;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6); }
    .l-header .searchFormModal .contents {
      position: fixed;
      top: 50%;
      left: 50%;
      z-index: 1001;
      max-width: 800px;
      width: 100%;
      margin: 0 auto;
      padding: 32px 16px;
      transform: translate(-50%, -50%);
      background: #FFF; }
  .l-header .headerLogo {
    margin-right: 40px;
    width: 200px; }
    .l-header .headerLogo .logo {
      display: block;
      width: 140%;
	  margin: 10px 5px; }
  .l-header .c-headerNav {
    flex-shrink: 0;
    margin-left: auto; }
    .l-header .c-headerNav .navList {
      display: flex;
      align-items: center; }
      .l-header .c-headerNav .navList .navItem {
        position: relative;
        margin-right: 24px; }
        .l-header .c-headerNav .navList .navItem.hidden {
          display: none; }
        .l-header .c-headerNav .navList .navItem:hover .menuContents {
          visibility: visible;
          opacity: 1; }
        .l-header .c-headerNav .navList .navItem .link {
          font-size: 1.4rem;
          font-weight: bold;
          color: #000; }
    .l-header .c-headerNav .menuContents {
      position: absolute;
      padding-top: 32px;
      visibility: hidden;
      opacity: 0;
      transition: all .3s; }
    .l-header .c-headerNav .menuList {
      padding: 24px;
      width: 240px;
      border: solid 1px #9172FE;
      background: #fff; }
      .l-header .c-headerNav .menuList .menuItem:last-child a {
        margin-bottom: 0;
        padding-bottom: 0;
        border: none; }
      .l-header .c-headerNav .menuList .menuItem a {
        display: block;
        margin-bottom: 16px;
        padding-bottom: 16px;
        border-bottom: dashed 1px #000;
        font-weight: bold;
        color: #000; }
  .l-header .btnList {
    display: flex;
    align-items: center; }
    .l-header .btnList .c-btn {
      display: none;
      margin-right: 16px;
      background: none;
      border: solid 1px #FF0076;
      color: #FF0076; }

@media screen and (max-width: 1133px) {
  .l-header {
    background: none; }
    .l-header .inner {
      justify-content: space-between; }
    .l-header .c-hamburgerMenu {
      display: flex; }
    .l-header .headerLogo {
      margin-right: 0;
      width: 160px; }
    .l-header .c-headerNav {
      position: fixed;
      top: 72px;
      left: 0;
      padding: 48px 32px 120px;
      width: 100%;
      height: 100vh;
      background: #FFF;
      overflow-y: scroll;
      opacity: 0;
      visibility: hidden;
      transition: all .3s;
      background: #FFF; }
      .l-header .c-headerNav.js-open {
        opacity: 1;
        visibility: visible; }
      .l-header .c-headerNav .navList {
        display: block; }
        .l-header .c-headerNav .navList .navItem {
          margin-bottom: 32px;
          margin-right: 0; }
          .l-header .c-headerNav .navList .navItem.linkLocked .link {
            pointer-events: none; }
          .l-header .c-headerNav .navList .navItem.hidden {
            display: block; }
          .l-header .c-headerNav .navList .navItem .link {
            color: #000;
            font-size: 2.8rem; }
      .l-header .c-headerNav .menuContents {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        opacity: 1;
        visibility: visible;
        padding: 0;
        max-height: 0;
        overflow: hidden; }
        .l-header .c-headerNav .menuContents.js-oepn {
          padding: 32px 0;
          max-height: 100vh; }
      .l-header .c-headerNav .menuList {
        border: none;
        width: 100%;
        padding: 0; }
        .l-header .c-headerNav .menuList .menuItem a {
          font-size: 1.6rem; }
    .l-header .btnList {
      display: none; } }

@media screen and (max-width: 670px) {
  .l-header {
    padding: 10px 16px; }
    .l-header .headerLogo {
      width: 120px; }
    .l-header .c-headerNav {
      top: 52px;
      padding: 48px 32px 176px; }
      .l-header .c-headerNav .navList .navItem .link {
        font-size: 2.4rem; }
      .l-header .c-headerNav .menuContents {
        padding: 0; }
      .l-header .c-headerNav .menuList {
        padding: 0; } }

.l-topcortIndex .pricing {
  padding: 0 0 80px;
  background: #F5F5F5; }

@media screen and (max-width: 1000px) {
  .l-topcortIndex .pricing .c-btn {
    font-size: 1.6rem;
    padding: 16px;
    width: auto;
    max-width: 280px; }
  .l-topcortIndex .blog .c-btn {
    font-size: 1.6rem;
    padding: 16px;
    width: auto;
    max-width: 280px; } }

.p-pricingContents {
  padding: 240px 32px; }
  .p-pricingContents .p-price {
    padding: 0; }
  .p-pricingContents .c-btn {
    margin-top: 56px; }

@media screen and (max-width: 1000px) {
  .p-pricingContents {
    padding: 120px 32px; } }

@media screen and (max-width: 670px) {
  .p-pricingContents {
    padding: 120px 24px; }
    .p-pricingContents .c-btn {
      font-size: 1.6rem;
      padding: 16px;
      width: auto;
      max-width: 280px; } }

.c-backImage {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%; }
  .c-backImage.left {
    border-radius: 0 1000px 0 1000px; }
  .c-backImage.right {
    border-radius: 1000px 0 1000px 0; }

.c-pageNavi .wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center; }

.c-pageNavi .last {
  display: none; }

.c-pageNavi .pages {
  display: none; }

.c-pageNavi .previouspostslink,
.c-pageNavi .nextpostslink {
  display: none;
  width: 32px;
  height: 32px;
  background: #EEE;
  border-radius: 50%;
  border: none;
  text-align: center;
  padding-top: 6px;
  color: #9172FE; }

.c-pageNavi .page {
  display: block;
  width: 32px;
  height: 32px;
  background: #EEE;
  border-radius: 50%;
  border: none;
  text-align: center;
  padding-top: 6px;
  color: #191970; }

.c-pageNavi .current {
  display: block;
  width: 32px;
  height: 32px;
  background: #191970;
  border-radius: 50%;
  border: none;
  text-align: center;
  padding-top: 6px;
  color: #FFF; }

.c-pageNavi .first,
.c-pageNavi .last {
  display: block;
  width: 32px;
  height: 32px;
  background: #EEE;
  border-radius: 50%;
  border: none;
  text-align: center;
  padding-top: 6px;
  color: #191970; }

.c-pageNavi .extend {
  display: block;
  width: 32px;
  height: 32px;
  background: #EEE;
  border-radius: 50%;
  border: none;
  text-align: center;
  padding-top: 6px;
  color: #000; }

.p-sideArticleList {
  flex-shrink: 0;
  width: 360px;
  position: -webkit-sticky;
  position: sticky;
  top: 130px;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  scroll-behavior: smooth;
  height: calc(100vh - 130px); }
  .p-sideArticleList::-webkit-scrollbar {
    display: none; }
  .p-sideArticleList .sideHead {
    padding-bottom: 12px;
    border-bottom: solid 4px #404040;
    font-size: 1.8rem;
    margin-bottom: 16px; }
  .p-sideArticleList li {
    margin-bottom: 32px;
    padding-bottom: 32px;
    border-bottom: solid 1px #D5D7DA; }
    .p-sideArticleList li:last-child {
      border-bottom: none; }
  .p-sideArticleList .c-searchForm {
    margin-bottom: 32px; }
  .p-sideArticleList .c-keywordList {
    margin-bottom: 64px; }

.c-keywordList {
  display: flex;
  flex-flow: row wrap; }
  .c-keywordList a {
    display: block;
    padding: 8px 16px;
    margin-right: 8px;
    margin-bottom: 8px;
    background: #F5F5F5;
    border-radius: 20px;
    font-size: 1.2rem !important;
    color: #9172FE; }

.c-margin.b56 {
  margin-bottom: 56px; }

.c-searchForm {
  display: flex;
  width: 100%; }
  .c-searchForm .searchInput {
    display: block;
    padding: 16px;
    margin-right: 16px;
    width: 100%;
    background: #F5F5F5;
    font-size: 1.6rem; }

.scrollButton {
  position: fixed;
  transition: all .3s;
  right: 4px;
  bottom: 0;
  width: 70px;
  height: 70px;
  z-index: 1;
  background: #191970;
  transform: translate(0, 100%);
  border-radius: 50%; }
  .scrollButton.js-scrollTopButton {
    transform: translate(0, -4px); }

.scrollButton::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 40px;
  color: #ffffff;
  position: absolute;
  height: 40px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center; }

.p-news {
  max-width: 800px;
  margin: 0 auto;
  padding: 48px 32px; }
  .p-news .newsHead {
    margin-bottom: 32px;
    text-align: center;
    font-size: 3.2rem;
    font-weight: bold;
    color: #9172FE; }
  .p-news .newsBody {
    letter-spacing: .8px;
    line-height: 1.75;
    font-size: 2rem; }

@media screen and (max-width: 670px) {
  .p-news .newsHead {
    font-size: 2.6rem; } }

.photo-area {
	margin:0px 0px 50px 0px;
}


*, *:before, *:after {
  box-sizing: inherit;
}

.background {
  padding: 0 25px 25px;
  position: relative;
  width: 100%;
}

.background::after {
  content: '';
  background: #191970;
  background: -moz-linear-gradient(top, #191970 0%, #4394f4 100%);
  background: -webkit-linear-gradient(top, #191970 0%,#4394f4 100%);
  background: linear-gradient(to bottom, #191970 0%,#4394f4 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#191970', endColorstr='#4394f4',GradientType=0 );
  height: 350px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}

@media (min-width: 900px) {
  .background {
    padding: 0 0 25px;
  }
}

.container {
  margin: 0 auto;
  padding: 50px 0 0;
  max-width: 960px;
  width: 100%;
}

.panel {
  background-color: #fff;
  border-radius: 10px;
  padding: 15px 25px;
  position: relative;
  width: 100%;
  z-index: 10;
}

.pricing-table {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 0px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
  display: flex;
  flex-direction: column;
}

@media (min-width: 900px) {
  .pricing-table {
    flex-direction: row;
  }
}

.pricing-table * {
  text-align: center;
  text-transform: uppercase;
}

.pricing-plan {
  border-bottom: 1px solid #e1f1ff;
  padding: 25px;
}

.pricing-plan:last-child {
  border-bottom: none;
}

@media (min-width: 900px) {
  .pricing-plan {
    border-bottom: none;
    border-right: 1px solid #e1f1ff;
    flex-basis: 100%;
    padding: 25px 50px;
  }

  .pricing-plan:last-child {
    border-right: none;
  }
}

.pricing-img {
  margin-bottom: 25px;
  max-width: 100%;
}

.pricing-header {
  color: #888;
  font-weight: 600;
  letter-spacing: 1px;
}

.pricing-features {
  color: #191970;
  font-weight: 600;
  letter-spacing: 1px;
  margin: 50px 0 25px;
}

.pricing-features-item {
  border-top: 1px solid #e1f1ff;
  font-size: 12px;
  line-height: 1.5;
  padding: 15px 0;
}

.pricing-features-item:last-child {
  border-bottom: 1px solid #e1f1ff;
}

.pricing-price {
  color: #191970;
  display: block;
  font-size: 32px;
  font-weight: 700;
}

.pricing-button {
  border: 1px solid #7C89EF;
  border-radius: 10px;
  color: #7C89EF;
  display: inline-block;
  margin: 25px 0;
  padding: 15px 35px;
  text-decoration: none;
  transition: all 150ms ease-in-out;
}

.pricing-button:hover,
.pricing-button:focus {
  background-color: #e1f1ff;
}

.pricing-button.is-featured {
  background-color: #48aaff;
  color: #fff;
}

.pricing-button.is-featured:hover,
.pricing-button.is-featured:active {
  background-color: #269aff;
}

/* about */

.popup_wrap input {
  display: none;
}
.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: #1919703d;
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}
.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}
.popup_content {
  position: relative;
  align-self: center;
  width: 75%;
  max-width: 800px;
  box-sizing: border-box;
  background: #fff;
  line-height: 1.4em;
  transition: 0.5s;
  border-radius: 12px;
  box-shadow: 0 0 5px rgba(94, 94, 94, 0.7);
}
.popup_content p{
    padding:20px 20px 5px 20px;
    text-align: center;
}
.close_btn {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 30px;
  cursor: pointer;
  color:#191970;
}
.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}
.open_btn {
    color: #191970;
    border-radius: 3px;
    cursor: pointer;
    transition: .3s ease;
    border:1px solid #191970;
    padding:5px 15px;
    font-weight: bold;
}
.open_btn:hover{
    background:#191970;
    color:#fff;
    transition: .3s ease;
}

/* accordion */

.accordion {
  width: 100%;
}

/* inputのチェックボックスを非表示 */
.accordion-hidden {
  display: none;
}

/* 見出しボタン部分 */

.accordion-open {
  background: #ddf404;
  font-size: 1.6rem;
  font-weight: 700;
  line-height:3em;
  position: relative;
  display: inline-block;
  padding: 1rem 7rem 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0 10px 10px 0;
}


/* .accordion-open {
  display: block;
  -webkit-transform: skew(-15deg);
  transform: skew(-15deg);
  color: #fff;
  border-radius: 0;
  background-image: -webkit-gradient(linear, left top, right top, from(#2af598), to(#009efd));
  background-image: -webkit-linear-gradient(left, #2af598 0%, #009efd 100%);
  background-image: linear-gradient(90deg, #2af598 0%, #009efd 100%);
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
  box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
  font-size:1.2em;
  text-align:center;
  line-height:3em;
  position: relative;
} */
/* .accordion-open {
  display: block;
  background: -moz-linear-gradient(top, #EB814B, transparent);
  background: -webkit-linear-gradient(top, #EB814B, transparent);
  background: linear-gradient(to bottom, #EB814B, transparent);
  padding: 10px 80px 10px 10px;
  cursor: pointer;
  font-size:1.2em;
  text-align:center;
  line-height:3em;
  margin: 15%;
  position: relative;
} */

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
  content: '';
  width: 20px;
  height: 3px;
  background: #000;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
  transform: translateY(-50%) rotate(90deg);
  transition: .5s;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked+.accordion-open:after {
  transform: translateY(-50%) rotate(0);
}

/* アコーディオン中身部分 */
.accordion-inner {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 0.5s;
  /* 表示速度の設定 */
  cursor: pointer;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked+.accordion-open+.accordion-inner {
  height: auto;
  opacity: 1;
  padding: 10px;
}
/* ↑ここまで共通 */


/* Q&A追加 */
.accordion_qa .Q,
.accordion_qa .A {
  position: relative;
}

.accordion_qa .Q::before,
.accordion_qa .A::before {
  font-size: 1.5em;
  display: block;
  position: absolute;
  top: -.6em;
  left: -1.3em;
}

.accordion_qa .Q::before {
  content: 'Q.';
}

.accordion_qa .A::before {
  content: 'A.';
}

.accordion_qa .accordion-open {
  padding-left: 2.5em;
}

.accordion_qa .accordion-hidden:checked+.accordion-open+.accordion-inner {
  height: auto;
  opacity: 1;
  padding: 10px 10px 10px 2.5em;
}
/* Q&A追加ここまで */


/* 中にいろいろ入れたいとき */
.accordion-box {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 1s;
}

.accordion-hidden:checked+.accordion-open+.accordion-box {
  height: auto;
  opacity: 1;
  padding: 10px;
}
