/*!**********************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./scss/style.scss ***!
  \**********************************************************************************************************/
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./scss/style.scss (1) ***!
  \**************************************************************************************************************/
@charset "UTF-8";
/*
Theme Name: SHaiN
Author: Warp Japan
Author URI: http://warpjapan.com/
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

html {
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  -moz-tab-size: 4;
  tab-size: 4;
  word-break: normal;
}

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

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  margin: 0;
  padding: 0;
}

hr {
  color: inherit;
  height: 0;
  overflow: visible;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

iframe {
  border-style: none;
}

input {
  border-radius: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
  appearance: button;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
  outline-width: 0;
}

select {
  appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

::-webkit-file-upload-button {
  appearance: button;
  color: inherit;
  font: inherit;
}

[disabled] {
  cursor: default;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}
html.fancybox-lock body {
  -webkit-overflow-scrolling: touch;
}

body {
  line-height: 1.6;
  font-size: 1.4rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
  -webkit-font-smoothing: subpixel-antialiased;
  overflow-x: hidden;
  color: #53257D;
}
body.lock {
  overflow: hidden;
}

* {
  box-sizing: border-box;
  outline: none;
}

#top_modal {
  display: none;
}

h1 {
  font-size: 3rem;
}

h2 {
  margin-bottom: 20px;
  font-size: 2.8rem;
  font-weight: 500;
}

h3 {
  line-height: 1.2;
  font-size: 32px;
  font-weight: normal;
}

p {
  font-size: 1.5rem;
  line-height: 1.6;
}

a {
  text-decoration: none;
  color: #53257D;
}

a.action.order {
  display: none;
}

a,
input,
textarea,
button {
  outline: none;
}

.pc {
  display: block;
}

.pc_tb {
  display: block;
}

.tb {
  display: none !important;
}

.sp {
  display: none !important;
}

.tb_sp {
  display: none !important;
}

.left {
  float: left;
}

.right {
  float: right;
}

.txtcenter {
  text-align: center;
}

#wrapper {
  padding-top: 65px;
}

#content {
  padding-top: 150px;
}
@media only screen and (max-width: 820px) {
  #content {
    padding-top: 50px;
  }
}

.table {
  display: table;
  height: 100%;
}
.table .cell {
  display: table-cell;
  vertical-align: middle;
}

.wrap {
  max-width: 1260px;
  padding: 0 20px;
  margin: 0 auto;
}

.menu-social-container {
  text-align: center;
}
.menu-social-container li {
  display: inline-block;
  margin: 0 10px;
}
.menu-social-container a {
  font-size: 0;
  color: transparent;
  display: inline-block;
  width: 36px;
  height: 36px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.menu-social-container a:hover {
  opacity: 0.6;
}
.menu-social-container .facebook a {
  background-image: url(images/facebook_icon.svg);
}
.menu-social-container .twitter a {
  background-image: url(images/twitter_icon.svg);
}
.menu-social-container .twitter a {
  background-image: url(images/x_icon.svg);
}

.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

button,
.button,
.buttonstyle,
input[type=button] {
  height: 37px;
  line-height: 37px;
  padding: 0 10px;
  border: none;
  font-size: 15px;
  border-radius: 0;
  color: #fff;
}
button:hover,
.button:hover,
.buttonstyle:hover,
input[type=button]:hover {
  color: #fff;
}

input[type=button] {
  background-color: #fff;
  color: #6A696C;
  border: solid 1px #6A696C;
  font-size: 14px;
  padding-top: 1px;
}

button,
input {
  appearance: none;
  -webkit-appearance: none;
}

.cols {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
}

.col-5 {
  width: 50%;
}

.btn_wrap a {
  display: inline-block;
  padding: 15px 40px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  border-radius: 4px;
  background: rgb(190, 8, 81); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  background-size: 200% 100%;
  background-position: 0% center;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#be0851", endColorstr="#3d2351",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.btn_wrap a.purple {
  background: none;
  border: 1px solid #53257D;
  color: #53257D;
}
.btn_wrap a.purple:hover {
  color: #fff;
  background: #53257D;
}
.btn_wrap a.wine {
  background: none;
  border: 1px solid #9D246E;
  color: #9D246E;
}
.btn_wrap a.wine:hover {
  color: #fff;
  background: #9D246E;
}
.btn_wrap a.pink {
  background: none;
  border: 1px solid #E7287C;
  color: #E7287C;
}
.btn_wrap a.pink:hover {
  color: #fff;
  background: #E7287C;
}
.btn_wrap a.orange {
  background: #ed9b6a;
  background: -moz-linear-gradient(-45deg, #e8616d 6%, #F1C868 53%);
  background: -webkit-linear-gradient(-45deg, #e8616d 6%, #F1C868 53%);
  background: linear-gradient(135deg, #e8616d 6%, #F1C868 53%);
  background-size: 200% 100%;
  background-position: 0% center;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ed9b6a", endColorstr="#e8616d",GradientType=1 );
}
.btn_wrap a.orange:hover {
  background-position: right center;
}
.btn_wrap a:hover {
  background-position: right center;
}

.page_top {
  text-align: center;
  padding: 0 20px;
}
.page_top .wrap {
  position: relative;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-align-content: center;
  align-content: center;
  max-width: none;
  min-height: 400px;
  padding: 20px;
  border-radius: 4px;
  padding-left: 52%;
  text-align: left;
}
.page_top .wrap:after {
  content: "";
  position: absolute;
  bottom: 30px;
  right: 30px;
  display: block;
  width: 155px;
  height: 20px;
  background: url(images/talent-and-assessment-logo_p.svg) no-repeat center;
  background-size: contain;
}
.page_top .page_title {
  margin-bottom: 40px;
  font-size: 40px;
  font-weight: bold;
}
.page_top .page_title:last-child {
  margin: 0;
}
.page_top .page_subtitle {
  font-size: 30px;
  font-weight: bold;
  color: #9D246E;
}
.page_top .page_description {
  margin-bottom: 40px;
  line-height: 1.8;
  font-size: 16px;
  font-weight: bold;
}
.page_top .page_description a {
  color: #E7287C;
}
.page_top .page_links a {
  color: #53257D;
  margin: 0 20px;
}

#content {
  background-position: center 65%, center;
  background-repeat: no-repeat;
  background-size: 100% auto, 100% 100%;
}

.popup {
  display: none;
  width: 100%;
  height: 100%;
}

.mfp-content .popup {
  display: block;
  background: #fff;
  text-align: center;
}
.mfp-content .popup img {
  max-width: 100%;
  margin: 0 auto;
}
.mfp-content .popup .video_wrap {
  position: relative;
  width: 80vw;
  height: 80vh;
  margin: 0 auto;
}
.mfp-content .popup .video_wrap video {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  max-height: 100%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.my-mfp-zoom-in .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.my-mfp-zoom-in.mfp-ready .mfp-content {
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.my-mfp-zoom-in.mfp-removing .mfp-content {
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
  opacity: 0;
}

.my-mfp-zoom-in.mfp-bg {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

.my-mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 1;
  background: #be0851;
  background: -moz-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
  background: -webkit-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
  background: linear-gradient(135deg, #be0851 0%, #3d2351 50%);
}

.mfp-container {
  padding: 40px;
  overflow: auto;
}

.my-mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

.mfp-close-btn-in .mfp-close {
  font-size: 0;
  opacity: 1;
}
.mfp-close-btn-in .mfp-close:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26px;
  height: 2px;
  background: #53257D;
  -moz-transform: translate(-50%, -50%) rotate(-45deg);
  -o-transform: translate(-50%, -50%) rotate(-45deg);
  -ms-transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.mfp-close-btn-in .mfp-close:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26px;
  height: 2px;
  background: #53257D;
  -moz-transform: translate(-50%, -50%) rotate(45deg);
  -o-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.icon_kome {
  font-size: 10px;
  vertical-align: top;
}

.gradient_btn {
  background: #b50c50;
  background: linear-gradient(90deg, #b50c50 0%, #452150 100%);
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.16);
  color: #fff;
  text-align: center;
  padding: 20px;
  width: 356px;
  display: block;
  margin: auto;
  border-radius: 5px;
  position: relative;
}
.gradient_btn span {
  position: relative;
  z-index: 1;
}
.gradient_btn:after {
  content: "";
  background: rgb(69, 33, 80);
  transition: all 0.5s ease;
  opacity: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 5px;
}
.gradient_btn:hover:after {
  opacity: 1;
}
@media only screen and (max-width: 768px) {
  .gradient_btn {
    padding: 15px;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  html {
    height: auto;
  }
  body {
    height: auto;
  }
  .pc {
    display: none !important;
  }
  .pc_tb {
    display: block !important;
  }
  .tb {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
  .tb_sp {
    display: block !important;
  }
  img.pc {
    display: block !important;
  }
  img.sp {
    display: none !important;
  }
}
.error-404 {
  padding: 200px 20px;
  text-align: center;
}
.error-404 .page-title {
  margin-bottom: 50px;
}
.error-404 .search-form {
  margin-top: 50px;
}
.error-404 .search-field {
  outline: none;
  border: 1px solid #53257D;
  border-radius: 4px;
  height: 50px;
  line-height: 50px;
  padding-left: 20px;
  max-width: 280px;
  width: 80%;
}
.error-404 .search-submit {
  border: 1px solid #53257D;
  background-color: #53257D;
  color: #fff;
  height: 50px;
  line-height: 50px;
  margin-left: 10px;
  border-radius: 4px;
  transition: all 0.4s ease;
  vertical-align: top;
}
.error-404 .search-submit .screen-reader-text {
  height: auto;
  width: auto;
  clip: auto;
  margin: auto;
  position: relative;
  clip-path: none;
  transition: all 0.4s ease;
  font-size: 14px;
  font-weight: 700;
}
.error-404 .search-submit:hover {
  background-color: #fff;
}
.error-404 .search-submit:hover .screen-reader-text {
  color: #53257D;
}

@media only screen and (max-width: 736px) {
  h1 {
    font-size: 2rem;
  }
  h2 {
    margin-bottom: 20px;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.6;
  }
  h3 {
    font-size: 15px;
  }
  p {
    font-size: 1.2rem;
    line-height: 1.8;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  .pc {
    display: none !important;
  }
  .pc_tb {
    display: none !important;
  }
  .tb {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .tb_sp {
    display: block !important;
  }
  .wrapper {
    width: auto;
    padding: 0 20px;
  }
  #content {
    padding-top: 66px;
  }
  body,
  html {
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
  .btn_wrap a {
    font-size: 16px;
    padding: 10px 20px;
  }
  .page_top .wrap {
    min-height: 390px;
    padding: 60px 20px 80px;
    text-align: center;
    -webkit-align-items: center;
    align-items: center;
    justify-content: flex-start;
  }
  .page_top .page_title {
    font-size: 24px;
  }
  .page_top .page_subtitle {
    font-size: 24px;
  }
  .page_top .page_description {
    font-size: 12px;
  }
  .page_top .page_links {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .page_top .page_links a {
    margin-bottom: 10px;
  }
  .mfp-container {
    padding: 10px;
  }
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  padding: 25px 20px;
  z-index: 999;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 5px;
  background: rgb(61, 35, 81); /* Old browsers */
  background: -moz-linear-gradient(left, rgb(61, 35, 81) 0%, rgb(223, 2, 81) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgb(61, 35, 81) 0%, rgb(223, 2, 81) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgb(61, 35, 81) 0%, rgb(223, 2, 81) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3d2351", endColorstr="#df0251",GradientType=1 ); /* IE6-9 */
}
.header__janame {
  position: absolute;
  top: 15px;
  left: 20px;
  font-size: 12px;
  font-weight: bold;
}
.header__logo {
  position: relative;
  margin-left: 0;
  margin-top: 10px;
  margin-right: 10px;
  float: left;
  clear: both;
  line-height: 50px;
  height: 50px;
  z-index: 99;
}
.header__logo__text {
  display: inline-block;
  vertical-align: middle;
  width: 120px;
  height: 28px;
  font-size: 0;
  text-indent: -9999px;
  overflow: hidden;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
.header__gnav {
  margin-left: 10px;
  float: left;
}
.header__gnav__full-name {
  position: relative;
  display: inline-block;
  vertical-align: baseline;
  height: 12px;
  width: 240px;
  font-size: 0;
  text-indent: -9999px;
  overflow: hidden;
}
.header__gnav__full-name:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(images/logo-full-name.svg) no-repeat center;
  background-size: contain;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header__gnav__full-name:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(images/logo-full-name-w.svg) no-repeat center;
  background-size: contain;
  opacity: 0;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header__gnav .award_badge {
  display: inline-block;
  width: 140px;
}
.header__gnav .award_badge img {
  width: 100%;
}
.header__gnav .main-navigation {
  margin-top: 10px;
  display: none;
}
.header__gnav .global_nav:after {
  content: "";
  display: block;
  clear: both;
}
.header__gnav .global_nav li {
  float: left;
  margin-right: 20px;
}
.header__gnav .global_nav li a {
  font-size: 15px;
  color: #53257D;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header__gnav .global_nav li a:hover {
  color: #E7287C;
}
.header__gnav .global_nav li.current-menu-item a {
  color: #E7287C;
}
.header__info-box {
  position: relative;
  float: right;
  line-height: 50px;
  height: 50px;
  z-index: 99;
}
.header__info-box__contact {
  display: flex;
  align-items: center;
  line-height: 1;
}
.header__info-box__contact__a {
  display: inline-block;
  width: 178px;
  height: 46px;
  line-height: 42px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  background: #53257D;
  color: #fff;
  border: 2px solid #53257D;
  border-radius: 4px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header__info-box__contact__a:hover {
  background-color: #fff;
  color: #53257D;
}
.header__info-box__tel {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  font-weight: bold;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  display: none;
}
.header__info-box__tel__text {
  display: block;
  font-size: 14px;
}
.header__info-box__tel__number {
  display: block;
  vertical-align: middle;
  font-size: 22px;
  font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
}
.header__info-box__link {
  display: inline-block;
  margin-left: 20px;
  vertical-align: middle;
  line-height: 1;
}
.header__info-box__link a {
  display: inline-block;
  width: 178px;
  height: 46px;
  line-height: 42px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #B50C50;
  border: 2px solid #B50C50;
  border-radius: 4px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header__info-box__link a:hover {
  color: #B50C50;
  background-color: #fff;
}
.header__info-box__link__contact {
  display: inline-block;
  margin-left: 20px;
  vertical-align: middle;
  line-height: 1;
}
.header__info-box__link__contact a {
  display: inline-block;
  width: 178px;
  height: 46px;
  line-height: 42px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  background: #53257D;
  color: #fff;
  border: 2px solid #53257D;
  border-radius: 4px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header__info-box__link__contact a:hover {
  background-color: #fff;
  color: #53257D;
}
.header__info-box__links {
  display: inline-block;
  margin-left: 20px;
  vertical-align: middle;
  line-height: 1;
}
.header__info-box__links__inner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 178px;
  height: 46px;
  line-height: 42px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #B50C50;
  border-radius: 4px;
}
.header__info-box__links__btn {
  position: relative;
  z-index: 2;
}
.header__info-box__links__btn:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  vertical-align: middle;
  transform: translateY(-40%) rotate(45deg);
}
.header__info-box__links__wrap {
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 46px;
  width: 100%;
  background: #B50C50;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1;
}
.header__info-box__links__wrap a {
  display: block;
  color: #fff;
}
.header__info-box__links:hover .header__info-box__links__wrap {
  opacity: 1;
  visibility: visible;
}
.header #menu_btn {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 18px;
  margin-left: 25px;
  margin-right: 10px;
  cursor: pointer;
}
.header #menu_btn:before {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: -10px;
}
.header #menu_btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #53257D;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu_btn span:nth-of-type(1) {
  top: 0;
}
.header #menu_btn span:nth-of-type(2) {
  top: 8px;
}
.header #menu_btn span:nth-of-type(3) {
  bottom: 0;
  width: 65%;
}
.header #menu_btn:hover span {
  background: #E7287C;
}
.header #menu {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  visibility: hidden;
  opacity: 0;
}
.header #menu .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  max-width: 1280px;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.header #menu .menu-head {
  display: inline-block;
  padding: 2vh 5vw 2vh 2vw;
  vertical-align: top;
}
.header #menu .menu-head .title {
  margin-bottom: 30px;
}
.header #menu .menu-head .title .logo {
  display: block;
  width: 155px;
  height: 40px;
  margin-bottom: 20px;
  font-size: 0;
  text-indent: -9999px;
  overflow: hidden;
  background: url(images/logo.svg) no-repeat left center;
  background-size: contain;
}
.header #menu .menu-head .title .full-name {
  position: relative;
  display: block;
  vertical-align: baseline;
  height: 12px;
  width: 255px;
  font-size: 0;
  text-indent: -9999px;
  overflow: hidden;
}
.header #menu .menu-head .title .full-name:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(images/logo-full-name-pink.svg) no-repeat left center;
  background-size: contain;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header #menu .menu-head .company {
  margin-bottom: 20px;
}
.header #menu .menu-head .company .company_name {
  font-size: 18px;
  font-weight: bold;
  color: #E7287C;
}
.header #menu .menu-head .company .link a.faq_gen {
  margin-top: 15px;
  color: #E7287C;
  border: 2px solid #E7287C;
  line-height: 42px;
  background: none;
}
.header #menu .menu-head .company .link a.faq_gen:before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 19px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  content: "";
  width: 19px;
  height: 19px;
  background-image: url(images/contact_icon_pink.svg);
  background-size: 19px 19px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .menu-head .company .link a.faq_gen:hover {
  background: #E7287C;
  color: #fff;
}
.header #menu .menu-head .company .link a.faq_gen:hover:before {
  background-image: url(images/contact_icon_white.svg);
}
.header #menu .menu-head .company .link a.faq {
  margin-top: 15px;
  color: #E7287C;
  border: 2px solid #E7287C;
  line-height: 42px;
  background: none;
}
.header #menu .menu-head .company .link a.faq:before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 19px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  content: "";
  width: 19px;
  height: 19px;
  background-image: url(images/question_icon_pink.svg);
  background-size: 19px 19px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .menu-head .company .link a.faq:hover {
  background: #E7287C;
  color: #fff;
}
.header #menu .menu-head .company .link a.faq:hover:before {
  background-image: url(images/question_icon_white.svg);
}
.header #menu .menu-head .examinee .examinee_name {
  font-size: 18px;
  font-weight: bold;
  color: #E8666C;
}
.header #menu .menu-head .examinee .link a.faq_gen {
  margin-top: 15px;
  color: #E8666C;
  border: 2px solid #E8666C;
  line-height: 42px;
  background: none;
}
.header #menu .menu-head .examinee .link a.faq_gen:before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 19px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  content: "";
  width: 19px;
  height: 19px;
  background-image: url(images/contact_icon_orange.svg);
  background-size: 19px 19px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .menu-head .examinee .link a.faq_gen:hover {
  background: #E8666C;
  color: #fff;
}
.header #menu .menu-head .examinee .link a.faq_gen:hover:before {
  background-image: url(images/contact_icon_white.svg);
}
.header #menu .menu-head .examinee .link a.faq {
  margin-top: 15px;
  color: #E8666C;
  border: 2px solid #E8666C;
  line-height: 42px;
  background: none;
}
.header #menu .menu-head .examinee .link a.faq:before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 19px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  content: "";
  width: 19px;
  height: 19px;
  background-image: url(images/question_icon_orange.svg);
  background-size: 19px 19px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .menu-head .examinee .link a.faq:hover {
  background: #E8666C;
  color: #fff;
}
.header #menu .menu-head .examinee .link a.faq:hover:before {
  background-image: url(images/question_icon_white.svg);
}
.header #menu .menu-head .contact .tel {
  margin-bottom: 50px;
  line-height: 1;
  font-weight: bold;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.header #menu .menu-head .contact .tel .text {
  display: block;
  font-size: 12px;
  line-height: 1.6;
  color: #fff;
}
.header #menu .menu-head .contact .tel .number {
  display: block;
  line-height: 1.6;
  font-size: 28px;
  font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
  color: #fff;
}
.header #menu .menu-head .contact .link {
  vertical-align: middle;
  line-height: 1;
}
.header #menu .menu-head .contact .link span {
  font-size: 1.2rem;
}
.header #menu .menu-head .contact .link a {
  position: relative;
  display: inline-block;
  width: 250px;
  height: 46px;
  line-height: 46px;
  text-align: center;
  font-size: 17px;
  border-radius: 4px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .menu-head .contact .link a:hover {
  background-position: right center;
}
.header #menu .talent_and_assessment {
  margin-top: 5vh;
}
.header #menu .talent_and_assessment .ta_logo {
  width: 160px;
  height: 30px;
  margin-bottom: 20px;
  background: url(images/talent-and-assessment-logo_w.svg) no-repeat center;
  background-size: contain;
}
.header #menu .talent_and_assessment a {
  display: inline-block;
  width: 250px;
  height: 46px;
  line-height: 42px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .talent_and_assessment a:hover {
  background: #fff;
  color: #E7287C;
}
.header #menu .main-navigation {
  display: inline-block;
  min-width: 50vw;
  width: 1000px;
  max-width: 70%;
  font-size: 0;
}
.header #menu .main-navigation .menu-primary-left-container,
.header #menu .main-navigation .menu-primary-right-container {
  display: inline-block;
  vertical-align: top;
  width: 50%;
}
.header #menu .main-navigation li {
  vertical-align: top;
  padding: 1vh 2vw;
  opacity: 0.8;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header #menu .main-navigation li a {
  display: block;
  min-height: 72px;
  line-height: 1.4;
  font-size: 32px;
  color: #fff;
}
.header #menu .main-navigation li:hover {
  opacity: 1;
}
.header #menu .main-navigation li .big {
  line-height: 1.4;
  font-size: 32px;
  color: #fff;
}
.header #menu .main-navigation li .small {
  display: block;
  line-height: 1.6;
  font-size: 18px;
  color: #9D246E;
}
.header #menu .main-navigation li .red {
  color: #E2335C;
}
.header #menu .main-navigation li .navy {
  color: #4F7DA1;
}
.header #menu .main-navigation li .green {
  color: #4AB1AF;
}
.header #menu .main-navigation li .yellow {
  color: #F0C568;
}
.header #menu .main-navigation li .orange {
  color: #EC986A;
}
.header.nav_open {
  background: #452151;
  height: 100vh;
}
.header.nav_open #menu_btn span {
  background: #fff;
}
.header.nav_open #menu_btn span:nth-of-type(1) {
  top: 8px;
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.header.nav_open #menu_btn span:nth-of-type(2) {
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.header.nav_open #menu_btn span:nth-of-type(3) {
  opacity: 0;
}
.header.nav_open #menu {
  visibility: visible;
  opacity: 1;
  -moz-transition: all 0.5s ease 0.5s;
  -o-transition: all 0.5s ease 0.5s;
  -webkit-transition: all 0.5s ease 0.5s;
  transition: all 0.5s ease 0.5s;
}
.header.nav_open .header__gnav, .header.nav_open .header__logo {
  opacity: 0;
  visibility: hidden;
}
.header.nav_open .header__info-box__contact {
  opacity: 0;
  visibility: hidden;
}
.header__hvnav {
  width: 100%;
  clear: both;
  padding-top: 10px;
}
@media only screen and (max-width: 820px) {
  .header__hvnav {
    display: none;
  }
}
.header__hvnav ul {
  font-size: 0;
}
.header__hvnav ul li {
  font-size: 15px;
  font-weight: 600;
  position: relative;
  padding-right: 20px;
  margin-left: 20px;
  display: inline-block;
  color: #663366;
  cursor: pointer;
}
.header__hvnav ul li:after {
  content: "";
  width: 12px;
  height: 7px;
  background-image: url(images/header_icon_down.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.4s ease;
}
.header__hvnav ul li:first-child {
  margin-left: 0;
}
.header__hvnav ul li.on {
  color: #E6297C;
}
.header__hvnav ul li.on:before {
  content: "";
  height: 5px;
  width: calc(100% - 22px);
  background-color: #E6297C;
  position: absolute;
  bottom: -15px;
  left: 0;
}
.header__hvnav ul li.on:after {
  transform: translateY(-50%) rotate(-180deg);
}
@media only screen and (max-width: 860px) {
  .header__hvnav ul li {
    font-size: 16px;
  }
}

.hvnav {
  position: fixed;
  top: 144px;
  width: 100%;
  background-color: #fff;
  z-index: 2;
  padding-top: 10px;
  display: none;
}
.hvnav:after {
  content: "";
  width: 100%;
  height: 8px;
  background: #b50c50;
  background: linear-gradient(270deg, #b50c50 0%, #452150 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.hvnav ul {
  padding: 0 30px 55px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: flex-start;
  max-height: 180px;
}
.hvnav ul li {
  max-width: 400px;
  width: 40%;
}
.hvnav ul li a {
  font-size: 15px;
  color: #663366;
  transition: all 0.4s ease;
  padding-left: 30px;
  position: relative;
}
.hvnav ul li a:before {
  content: "";
  height: 2px;
  width: 10px;
  background-color: #663366;
  transition: all 0.4s ease;
  position: absolute;
  left: 0;
  top: 10px;
}
.hvnav ul li a:hover {
  color: #E6297C;
}
.hvnav ul li a:hover:before {
  background-color: #E6297C;
}
@media only screen and (max-width: 860px) {
  .hvnav ul li a {
    font-size: 20px;
  }
}
@media only screen and (max-width: 860px) {
  .hvnav {
    top: 125px;
  }
}
@media only screen and (max-width: 768px) {
  .hvnav {
    display: none;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 980px) {
  .header #menu .menu-head {
    width: 30vw;
    padding: 1vh 5vw;
  }
  .header #menu .talent_and_assessment {
    margin-top: 10vh;
  }
  .header #menu li {
    padding: 3vh 1.5vw;
  }
  .header #menu li .big {
    font-size: 2vw;
    margin-bottom: 5px;
  }
  .header #menu li .small {
    font-size: 16px;
  }
}
@media only screen and (max-width: 980px) and (min-width: 736px) {
  .header #menu .menu-head {
    width: 40vw;
    padding: 1vh 5vw;
  }
  .header #menu ul {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
  }
  .header #menu ul li {
    padding: 1.2vh 1vw;
  }
  .header #menu ul li .big {
    font-size: 26px;
  }
  .header #menu ul li .small {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1281px) {
  .header__gnav__full-name {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 1023px) and (min-width: 736px) {
  .header__gnav__full-name {
    width: 105px;
    height: 22px;
    vertical-align: middle;
  }
  .header__gnav__full-name:before {
    background: url(images/logo-full-name_sp.svg) no-repeat center;
  }
  .header__gnav__full-name:after {
    background: url(images/logo-full-name_sp-w.svg) no-repeat center;
  }
  .header__gnav .main-navigation {
    display: none;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .header__info-box__tel__text {
    display: block;
  }
  .header__info-box__tel__number {
    margin: 10px auto 0;
    display: block;
  }
  .header__logo {
    margin-left: 0;
  }
  .header #menu .menu-head {
    min-width: 50%;
  }
  .header #menu .main-navigation {
    min-width: 50%;
  }
  .header #menu .main-navigation li a {
    min-height: 0;
    font-size: 1.5vw;
    font-size: calc(1vh + 1vw);
  }
  .header #menu .main-navigation li a .big {
    font-size: 2.5vw;
    font-size: calc(1.25vh + 1.25vw);
  }
  .header #menu .main-navigation li .big {
    font-size: 2.5vw;
    font-size: calc(1.25vh + 1.25vw);
  }
  .header #menu .main-navigation .inner {
    padding: 20px;
  }
  .header #menu .main-navigation .menu-primary-left-container,
  .header #menu .main-navigation .menu-primary-right-container {
    display: block;
    width: auto;
  }
}
@media only screen and (max-width: 1345px) and (min-width: 737px) {
  .header #menu_btn {
    margin-left: 15px;
    margin-top: 20px;
  }
}
@media only screen and (min-width: 821px) {
  .header #menu_btn {
    display: none;
  }
}
@media only screen and (max-width: 1345px) {
  .header__info-box {
    display: flex;
    justify-content: flex-end;
  }
  .header__info-box__tel {
    width: 120px;
    text-align: left;
  }
  .header__info-box__tel__text {
    white-space: nowrap;
    font-size: 10px;
  }
  .header__info-box__tel__number {
    font-size: 16px;
    margin-top: 12px;
  }
  .header__info-box__link {
    width: 33%;
    max-width: 135px;
    margin-left: 10px;
  }
  .header__info-box__link > a {
    padding: 12px 15px;
    font-size: 14px;
    height: auto;
    width: 100%;
    line-height: 1;
  }
  .header__info-box__link__contact {
    width: 50%;
    max-width: 135px;
    margin-left: 10px;
    text-align: right;
    display: flex;
  }
  .header__info-box__link__contact > a {
    padding: 12px 15px;
    font-size: 14px;
    height: auto;
    width: 100%;
    line-height: 1;
  }
  .header__info-box__link__contact__a {
    width: 100%;
    font-size: 14px;
    padding: 0 15px;
  }
  .header__info-box__links {
    margin-left: 10px;
  }
  .header__info-box__links__inner {
    max-width: px;
    height: auto;
    padding: 13px 0;
    font-size: 14px;
    height: auto;
  }
  .header__info-box__links__btn {
    line-height: 1;
  }
}
@media only screen and (max-width: 890px) {
  .header__info-box__tel {
    width: 130px;
  }
  .header__info-box__link__contact > a {
    font-size: 12px;
    padding: 12px 5px;
  }
  .header__info-box__link > a {
    font-size: 12px;
    padding: 12px 5px;
  }
}
@media only screen and (max-width: 762px) {
  .header__info-box__contact {
    display: none;
  }
}
@media only screen and (max-width: 736px) {
  .header {
    height: 66px;
    padding: 20px;
  }
  .header .link_data {
    margin: 0 20px;
    letter-spacing: 0;
  }
  .header .link_data .header__info-box__links {
    margin: 0;
    width: 48%;
  }
  .header .link_data .header__info-box__links__inner {
    width: 100%;
  }
  .header .link_data .header__info-box__link__contact {
    display: inline-flex;
    padding: 0;
    margin-left: 2%;
    width: 48%;
    max-width: 48%;
  }
  .header .link_data .header__info-box__link__contact > a {
    width: 100%;
  }
  .header__janame {
    top: 5px;
    font-size: 10px;
  }
  .header__logo {
    margin: 0 5px 0 0;
    line-height: 24px;
    height: 24px;
  }
  .header__logo__text {
    width: 92px;
    height: 22px;
  }
  .header__gnav {
    width: 105px;
  }
  .header__gnav__full-name {
    width: 105px;
    height: 22px;
    vertical-align: middle;
  }
  .header__gnav__full-name:before {
    background: url(images/logo-full-name_sp.svg) no-repeat center;
  }
  .header__gnav__full-name:after {
    background: url(images/logo-full-name_sp-w.svg) no-repeat center;
  }
  .header__gnav .main-navigation {
    display: none;
  }
  .header__info-box {
    line-height: 24px;
    height: 24px;
  }
  .header__info-box__tel__number {
    background-color: transparent;
    color: #53257D;
    text-align: left;
    padding: 0;
  }
  .header__info-box__contact {
    display: none;
  }
  .header #menu {
    top: 0;
    display: block;
    overflow: auto;
  }
  .header #menu .inner {
    display: block;
    padding: 20px 0 0;
    width: 100%;
    max-height: 100%;
    overflow-y: scroll;
  }
  .header #menu .menu-head {
    display: block;
    padding: 0 0 15px;
    margin-bottom: 20px;
    border-bottom: 1px solid #fff;
    width: calc(100% - 40px);
    margin-left: 20px;
  }
  .header #menu .menu-head .contact .tel {
    margin-bottom: 0;
  }
  .header #menu .main-navigation {
    max-width: 100%;
    width: calc(100% - 40px);
    margin-left: 20px;
  }
  .header #menu .main-navigation .menu-primary-left-container {
    padding-right: 10px;
  }
  .header #menu .main-navigation .menu-primary-right-container {
    padding-left: 10px;
  }
  .header #menu .main-navigation li {
    margin-bottom: 20px;
    padding: 0;
    opacity: 1;
  }
  .header #menu .main-navigation li a {
    display: inline-block;
    font-size: 16px;
    min-height: 0;
  }
  .header #menu .main-navigation li .big {
    font-size: 16px;
  }
  .header #menu .main-navigation li > .big:after {
    content: "";
    margin-left: 10px;
    display: inline-block;
    width: 10px;
    height: 10px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: translateY(-20%) rotate(45deg);
    transition: all 0.3s ease;
  }
  .header #menu .main-navigation li .small {
    line-height: 1.4;
    font-size: 11px;
  }
  .header #menu .main-navigation li .small .red,
  .header #menu .main-navigation li .small .navy,
  .header #menu .main-navigation li .small .green,
  .header #menu .main-navigation li .small .yellow,
  .header #menu .main-navigation li .small .orange {
    color: #fff;
  }
  .header #menu .main-navigation li .small.for-sp {
    display: block;
  }
  .header #menu .main-navigation li.tel {
    margin-bottom: 30px;
  }
  .header #menu .main-navigation li.tel span {
    display: block;
    line-height: 1.6;
  }
  .header #menu .main-navigation li.tel .text {
    font-size: 10px;
    color: #fff;
  }
  .header #menu .main-navigation li.tel .number {
    font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
    font-size: 26px;
    font-weight: bold;
    color: #fff !important;
  }
  .header #menu .main-navigation li .submenu {
    display: none;
    padding-top: 10px;
    padding-left: 20px;
  }
  .header #menu .main-navigation li .submenu li {
    line-height: 1.4;
    margin: 0 auto 5px;
  }
  .header #menu .main-navigation li .submenu li:before {
    content: "-";
    margin-right: 5px;
    font-size: 14px;
    color: #fff;
  }
  .header #menu .main-navigation li .submenu li a {
    font-size: 14px;
  }
  .header #menu .main-navigation li.on > .big:after {
    transform: translateY(20%) rotate(-135deg);
  }
  .header #menu .main-navigation.sp {
    border-bottom: 1px solid #fff;
    padding: 0 20px;
  }
  .header #menu .main-navigation.sp .main-navigation__bottom {
    margin-top: 70px;
  }
  .header #menu .btns {
    margin-top: 40px;
    width: calc(100% - 40px);
    margin-left: 20px;
  }
  .header #menu .btns span {
    font-size: 1.2rem;
  }
  .header #menu .btns a {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 46px;
    line-height: 46px;
    text-align: center;
    font-size: 17px;
    border-radius: 4px;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .header #menu .btns a:hover {
    background-position: right center;
  }
  .header #menu .btns .company {
    margin-bottom: 20px;
  }
  .header #menu .btns .company .company_name {
    font-size: 14px;
    font-weight: bold;
    color: #E7287C;
  }
  .header #menu .btns .company .link {
    width: 45%;
    display: inline-block;
  }
  .header #menu .btns .company .link:last-of-type {
    margin-left: 8%;
  }
  .header #menu .btns .company .link a.faq_gen {
    margin-top: 0;
    color: #E7287C;
    border: 2px solid #E7287C;
    line-height: 33px;
    height: 36px;
    background: none;
    font-size: 11px;
  }
  .header #menu .btns .company .link a.faq_gen:before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 19px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: "";
    width: 19px;
    height: 19px;
    background-image: url(images/contact_icon_pink.svg);
    background-size: 19px 19px;
  }
  .header #menu .btns .company .link a.faq_gen:hover {
    background: #fff;
  }
  .header #menu .btns .company .link a.faq {
    margin-top: 15px;
    color: #E7287C;
    border: 2px solid #E7287C;
    line-height: 33px;
    height: 36px;
    background: none;
    font-size: 11px;
  }
  .header #menu .btns .company .link a.faq:before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 19px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: "";
    width: 19px;
    height: 19px;
    background-image: url(images/question_icon_pink.svg);
    background-size: 19px 19px;
  }
  .header #menu .btns .company .link a.faq:hover {
    background: #fff;
  }
  .header #menu .btns .examinee .examinee_name {
    font-size: 14px;
    font-weight: bold;
    color: #E8666C;
  }
  .header #menu .btns .examinee .link {
    width: 45%;
    display: inline-block;
  }
  .header #menu .btns .examinee .link:last-of-type {
    margin-left: 8%;
  }
  .header #menu .btns .examinee .link a.faq_gen {
    margin-top: 0;
    color: #E8666C;
    border: 2px solid #E8666C;
    line-height: 33px;
    height: 36px;
    background: none;
    font-size: 11px;
  }
  .header #menu .btns .examinee .link a.faq_gen:before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 19px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: "";
    width: 19px;
    height: 19px;
    background-image: url(images/contact_icon_orange.svg);
    background-size: 19px 19px;
  }
  .header #menu .btns .examinee .link a.faq_gen:hover {
    background: #fff;
  }
  .header #menu .btns .examinee .link a.faq {
    margin-top: 15px;
    color: #E8666C;
    border: 2px solid #E8666C;
    line-height: 33px;
    height: 36px;
    background: none;
    font-size: 11px;
  }
  .header #menu .btns .examinee .link a.faq:before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 19px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: "";
    width: 19px;
    height: 19px;
    background-image: url(images/question_icon_orange.svg);
    background-size: 19px 19px;
  }
  .header #menu .btns .examinee .link a.faq:hover {
    background: #fff;
  }
  .header #menu .talent_and_assessment {
    margin-bottom: 20px;
  }
  .header #menu .talent_and_assessment .ta_logo {
    margin: 0 auto 10px;
  }
  .header #menu .talent_and_assessment a {
    width: 100%;
    border-color: #fff;
  }
  .header #menu .menu_footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0;
    background: #be0851;
    background: -moz-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
    background: -webkit-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
    background: linear-gradient(135deg, #be0851 0%, #3d2351 50%);
    padding-bottom: 0;
    padding-top: 20px;
  }
  .header #menu .menu_footer a {
    text-decoration: none;
    color: #fff;
    height: auto;
    border: none;
    line-height: normal;
  }
  .header #menu .menu_footer__top {
    text-align: center;
    font-size: 11px;
    color: #fff;
    margin-bottom: 10px;
    position: relative;
  }
  .header #menu .menu_footer__top a {
    font-size: 11px;
  }
  .header #menu .menu_footer__top a:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 12px;
    height: 12px;
    background: url(images/link-icon_sp.svg) no-repeat center;
    background-size: contain;
  }
  .header #menu .menu_footer__bottom {
    text-align: center;
    color: #fff;
  }
  .header #menu .menu_footer__bottom span {
    display: block;
  }
  .header #menu .menu_footer__bottom__txt {
    font-size: 10px;
    line-height: 1;
    transform: scale(0.86);
  }
  .header #menu .menu_footer__bottom__number {
    font-size: 15px;
  }
  .header #menu .menu_footer__bottom__number a {
    font-size: 15px;
  }
  .header #menu_btn {
    margin-left: 0;
  }
  .header.nav_open h1 .full-name:after {
    opacity: 0;
  }
}
@media only screen and (max-width: 428px) {
  .header #menu .menu_footer__bottom {
    padding-bottom: 20px;
  }
}
.footer {
  /*
  &__banner {
    position: relative;
    height: 480px;
    background: url(../images/bg_footer_banner.jpg) no-repeat center;
    background-size: cover;
    margin: 0 auto 100px;
    max-width: 1530px;
    width: 100%;
    &__read{
      position: absolute;
      font-size: 22px;
      text-align: center;
      top: 90px;
      left: 50%;
      transform: translateX(-50%);
      color: #fff;
      width: 100%;
    }
    &__btns {
      position: absolute;
      top: 52%;
      left: 0;
      display: flex;
      width: 100%;
      justify-content: center;
      align-items: center;
      align-content: center;
      transform: translateY(-50%);
      a {
        display: block;
        width: 45%;
        max-width: 460px;;
        margin: 0 50px;
        padding: 15px;
        color: $purple;
        font-size: 30px;
        font-weight: bold;
        text-align: center;
        border-radius: 40px;
        background-color: #fff;
        @include transition((all .3s ease));
        &:hover {
          color: #fff;
          background-color: $purple;
        }
      }
    }
  }
  */
}
.footer__banner {
  position: relative;
  margin-top: 100px;
  margin-bottom: 100px;
  padding: 0 20px;
}
.footer__banner:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 116px;
  height: 116px;
  margin-top: -58px;
  margin-left: -58px;
  background: url(images/icon.svg) no-repeat center;
}
.footer__banner__col {
  padding: 10px;
  width: 50%;
  min-height: 550px;
}
.footer__banner__col--txt {
  text-align: center;
}
.footer__banner__col--txt .footer__banner__col__inner {
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  padding: 60px 20px;
  background: #fff;
  border-radius: 4px;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 100%;
}
.footer__banner__col--img img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.footer__banner__col--img video {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.footer__banner__col--img .footer__banner__col__inner {
  height: 100%;
  width: 100%;
  overflow: hidden;
  border-radius: 4px;
  background: url(images/bg_footer_banner.jpg) no-repeat center;
}
.footer__banner__tel {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.2;
  font-weight: bold;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.footer__banner__tel__text {
  display: block;
  font-size: 24px;
}
.footer__banner__tel__number {
  display: block;
  vertical-align: middle;
  font-size: 40px;
  font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
}
.footer__banner__tel__number:before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  vertical-align: baseline;
  margin-right: 0px;
  background: url(images/phone_icon.svg) no-repeat center;
  background-size: contain;
}
.footer__banner__btns {
  width: 100%;
  margin-top: 40px;
}
.footer__banner__data {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 460px;
  max-width: 100%;
  height: 78px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #B50C50;
  border-radius: 40px;
  margin: 0 auto;
}
.footer__banner__data__btn {
  position: relative;
  z-index: 1;
  font-size: 30px;
  font-weight: bold;
}
.footer__banner__data__btn:after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 15px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  vertical-align: middle;
  transform: translateY(-40%) rotate(45deg);
}
.footer__banner__data__wrap {
  position: absolute;
  top: 50%;
  left: 0;
  padding-top: 46px;
  width: 100%;
  background: #B50C50;
  border-radius: 0 0 40px 40px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.footer__banner__data__wrap a {
  display: block;
  padding: 10px;
  font-size: 20px;
  color: #fff;
}
.footer__banner__data:hover .footer__banner__data__wrap {
  opacity: 1;
  visibility: visible;
}
.footer__banner__contact {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 460px;
  max-width: 100%;
  height: 78px;
  margin: 40px auto 0;
  text-align: center;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  background: #53257D;
  border-radius: 40px;
}
.footer__top {
  padding: 60px 0;
  background: #F8F8F8;
}
.footer__top ul {
  display: flex;
  padding: 12px;
}
.footer__top ul li {
  width: 20%;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  padding: 8px;
}
.footer__top ul li.footer_about {
  overflow: visible;
}
.footer__top ul li.footer_about a::before {
  background-image: url(images/footer_col_about.jpg);
}
.footer__top ul li.footer_service a::before {
  background-image: url(images/footer_col_service.jpg);
}
.footer__top ul li.footer_fee a::before {
  background-image: url(images/footer_col_fee.jpg);
}
.footer__top ul li.footer_casestudy a::before {
  background-image: url(images/footer_col_casestudy.jpg);
}
.footer__top ul li.footer_faq a::before {
  background-image: url(images/footer_col_faq.jpg);
}
.footer__top a {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  padding-top: 80%;
  padding-left: 30px;
  padding-bottom: 10%;
  color: #53257D;
  font-size: 16px;
  font-weight: bold;
  border-radius: 3px;
  box-shadow: 0 0 20px 0 rgba(83, 37, 125, 0.2);
}
.footer__top a span {
  position: relative;
  z-index: 1;
}
.footer__top a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  -moz-transition: all 2s ease;
  -o-transition: all 2s ease;
  -webkit-transition: all 2s ease;
  transition: all 2s ease;
}
.footer__middle {
  padding: 40px 20px 100px;
  background-color: #3D2251;
  color: #fff;
  position: relative;
}
.footer__middle:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 190px;
  height: 100%;
  background: #3d2251;
  background: linear-gradient(297deg, #3d2251 49%, #a01451 93%);
  z-index: 0;
}
@media only screen and (max-width: 736px) {
  .footer__middle:before {
    width: 80vw;
    height: 106vw;
    background: linear-gradient(317deg, #3d2251 71%, #a01451 93%);
  }
}
.footer__middle__wrap {
  max-width: 1530px;
  width: 100%;
  margin: auto;
  z-index: 1;
  position: relative;
}
.footer__middle__logo {
  height: 46px;
  width: 196px;
  font-size: 0;
  color: transparent;
  background: url(images/logo_wh.svg) no-repeat left;
  background-size: contain;
  margin-right: 25px;
}
.footer__middle__logo-wrap {
  display: flex;
  align-items: flex-end;
  text-align: center;
}
@media only screen and (max-width: 736px) {
  .footer__middle__logo-wrap {
    display: block;
  }
  .footer__middle__logo-wrap .menu-social-container a {
    vertical-align: top;
  }
  .footer__middle__logo-wrap .footer__middle__logo {
    margin: 0 auto 15px;
    width: 128px;
    height: 33px;
  }
  .footer__middle__logo-wrap .footer__middle__logo__text {
    margin: 0 auto 25px;
  }
}
.footer__middle__logo__text {
  margin-right: 75px;
  width: 300px;
}
.footer__middle__logo__text img {
  vertical-align: bottom;
}
.footer__middle__text {
  margin-bottom: 10px;
}
.footer__middle__talelogo {
  margin-bottom: 20px;
}
.footer__middle__nav {
  width: 100%;
  max-width: 1340px;
  display: flex;
  justify-content: center;
  margin: 70px auto 0;
}
@media only screen and (max-width: 736px) {
  .footer__middle__nav {
    display: block;
  }
}
.footer__middle__nav__col {
  margin-left: 55px;
  width: 19%;
}
.footer__middle__nav__col:first-child {
  margin-left: 0;
}
.footer__middle__nav__col h3 {
  font-size: 15px;
  text-align: center;
  border-bottom: 1px solid #fff;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.footer__middle__nav__col .mt40 {
  margin-top: 40px;
}
.footer__middle__nav__col ul li {
  margin-top: 5px;
}
.footer__middle__nav__col ul li.footer__link_last {
  margin-top: 32px;
}
.footer__middle__nav__col ul li:first-child {
  margin-top: 0;
}
.footer__middle__nav__col ul li a {
  display: block;
  font-size: 13px;
  color: #fff;
  position: relative;
  padding-left: 10px;
}
.footer__middle__nav__col ul li a:before {
  content: "";
  width: 3px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
@media only screen and (max-width: 736px) {
  .footer__middle__nav__col {
    margin-left: 0;
    width: 100%;
    margin-top: 50px;
  }
  .footer__middle__nav__col:first-child {
    margin-top: 0;
  }
  .footer__middle__nav__col h3 {
    border-bottom: none;
    font-size: 13px;
    padding-bottom: 0;
    margin-bottom: 20px;
  }
  .footer__middle__nav__col ul li a {
    font-size: 19px;
    text-align: center;
    padding: 0;
  }
  .footer__middle__nav__col ul li a:before {
    display: none;
  }
}
.footer__middle__nav .menu-footer-middle-container {
  grid-row-end: 100%;
}
.footer__middle__nav__link {
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-align-content: flex-start;
  align-content: flex-start;
}
.footer__middle__nav__link li {
  height: 20%;
  margin-right: 100px;
}
.footer__middle__nav__link li a {
  color: #fff;
}
.footer__middle__nav__link li a:hover {
  opacity: 0.6;
}
.footer__bottom {
  padding: 20px 0 0;
}
.footer__info {
  padding: 20px 75px;
}
.footer__info__link {
  display: inline-block;
  margin-right: 30px;
}
.footer__info__link__text {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
  color: #53257D;
  font-size: 22px;
  font-weight: bold;
}
.footer__info__link__img {
  width: 135px;
  height: 145px;
  vertical-align: middle;
}
.footer__info__link__btn {
  display: inline-block;
  width: 390px;
  height: 52px;
  line-height: 52px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  border-radius: 4px;
  box-shadow: 0 3px 0 0 #9D246E;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#df0251+0,3d2351+99 */
  background: rgb(223, 2, 81); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgb(223, 2, 81) 0%, rgb(61, 35, 81) 99%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgb(223, 2, 81) 0%, rgb(61, 35, 81) 99%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgb(223, 2, 81) 0%, rgb(61, 35, 81) 99%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#df0251", endColorstr="#3d2351",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  -moz-transition: all 0.1s ease;
  -o-transition: all 0.1s ease;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
.footer__info__link__btn:hover {
  box-shadow: none;
  opacity: 0.7;
  -moz-transform: translateY(3px);
  -o-transform: translateY(3px);
  -ms-transform: translateY(3px);
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
}
.footer__info__tel {
  display: inline-block;
}
.footer__info__tel__text {
  font-size: 10px;
  color: #53257D;
}
.footer__info__tel__number {
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
  color: #53257D;
  font-size: 22px;
  font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
}
.footer__info__tel__number:before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(images/phone-icon.svg) no-repeat center;
  background-size: contain;
}
.footer__info__title {
  display: inline-block;
  vertical-align: text-top;
}
.footer__info__title p {
  font-size: 12px;
  font-weight: 500;
}
.footer__info__company {
  display: inline-block;
  vertical-align: text-top;
  margin-left: 30px;
}
.footer__info__company a {
  display: block;
  font-size: 12px;
  font-weight: 500;
}
.footer__info__company a:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 12px;
  background: url(images/link-icon.svg) no-repeat center;
  background-size: contain;
}
@media only screen and (max-width: 736px) {
  .footer__info__company a:after {
    background-image: url(images/link-icon_sp.svg);
  }
}
.footer__info__company p {
  font-size: 12px;
  font-weight: 500;
}
.footer__info__company p span {
  margin-left: 10px;
}
.footer__info__company .number {
  position: relative;
  display: inline-block;
  padding-left: 15px;
}
.footer__info__company .number a:after {
  display: none !important;
}
.footer__info__company .number:before {
  position: absolute;
  top: 4px;
  left: 0;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  vertical-align: sub;
  margin-right: 5px;
  margin-bottom: 2px;
  background: url(images/phone_icon.svg?220622) no-repeat center;
  background-size: contain;
}
@media only screen and (max-width: 736px) {
  .footer__info__company .number:before {
    background-image: url(images/phone_icon_sp.svg);
  }
}
.footer__newfoot {
  display: none;
  padding: 20px 0;
}
.page-template-page-faq .footer {
  margin-top: 50px;
}
.page-template-page-faq .footer__banner {
  display: none;
}

@media only screen and (min-width: 737px) {
  .footer__top ul li a:hover:before {
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .footer__info__link__text {
    display: none;
  }
  .footer__info__tel {
    text-align: right;
  }
  .footer__info__tel span {
    display: block;
  }
}
@media only screen and (max-width: 1000px) and (min-width: 736px) {
  .footer__middle__wrap {
    display: block;
  }
  .footer__middle__logo-wrap {
    margin: 0 auto 20px;
  }
  .footer__middle__nav {
    width: auto;
  }
  .footer__middle__nav__link {
    -webkit-align-content: center;
    align-content: center;
  }
}
@media only screen and (max-width: 1110px) and (min-width: 737px) {
  .footer__middle__nav__col {
    margin-left: 20px;
  }
}
@media only screen and (max-width: 736px) {
  .footer {
    position: static;
    overflow: hidden;
  }
  .footer__banner:after {
    top: 67vw;
    width: 70px;
    height: 70px;
    margin-top: -35px;
    margin-left: -35px;
  }
  .footer__banner__cols {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .footer__banner__col {
    width: 100%;
    min-height: 0;
    margin-bottom: 10px;
    padding: 0;
  }
  .footer__banner__col--img {
    order: 0;
    height: 67vw;
  }
  .footer__banner__col--text {
    order: 1;
  }
  .footer__banner__title {
    font-size: 24px;
  }
  .footer__banner__description {
    font-size: 13px;
  }
  .footer__banner__tel__number {
    font-size: 34px;
  }
  .footer__banner__data {
    height: 58px;
  }
  .footer__banner__data__btn {
    font-size: 16px;
  }
  .footer__banner__data__btn:after {
    width: 10px;
    height: 10px;
    margin-left: 10px;
  }
  .footer__banner__data__wrap a {
    font-size: 14px;
  }
  .footer__banner__contact {
    margin-top: 20px;
    height: 58px;
    font-size: 16px;
  }
  .footer__top {
    padding: 30px 0;
  }
  .footer__top a {
    padding-top: 50%;
  }
  .footer__top ul {
    display: block;
  }
  .footer__top ul li {
    width: 100%;
  }
  .footer__top ul li.footer_about {
    overflow: visible;
  }
  .footer__top ul li.footer_about a:before {
    background-image: url(images/footer_col_about_sp.png);
  }
  .footer__top ul li.footer_service a:before {
    background-image: url(images/footer_col_service_sp.png);
  }
  .footer__top ul li.footer_fee a:before {
    background-image: url(images/footer_col_fee_sp.png);
  }
  .footer__top ul li.footer_casestudy a:before {
    background-image: url(images/footer_col_casestudy_sp.png);
  }
  .footer__top ul li.footer_faq a:before {
    background-image: url(images/footer_col_faq_sp.png);
  }
  .footer__middle {
    padding: 40px 0;
  }
  .footer__middle__wrap {
    display: block;
  }
  .footer__middle__logo-wrap {
    margin-bottom: 40px;
    width: auto;
  }
  .footer__middle__talelogo {
    width: 80%;
    margin: 0 auto 20px;
  }
  .footer__middle__nav {
    width: auto;
  }
  .footer__middle__nav__link {
    display: block;
    width: auto;
    height: auto;
    text-align: center;
  }
  .footer__middle__nav__link li {
    height: auto;
    width: auto;
    margin: 0 auto 20px;
  }
  .footer__bottom {
    background-color: #3d2250;
    padding-top: 0;
    margin-top: -1px;
  }
  .footer__bottom p {
    color: #fff;
  }
  .footer__info {
    position: relative;
    padding: 20px 0 80px;
    text-align: center;
  }
  .footer__info:after {
    content: "";
    display: block;
    clear: both;
  }
  .footer__info__link {
    display: block;
    margin: 0;
  }
  .footer__info__link__text {
    margin-bottom: 10px;
  }
  .footer__info__link__img {
    position: absolute;
    left: 20px;
    bottom: 0;
    width: 100px;
  }
  .footer__info__link__btn {
    width: auto;
    font-size: 16px;
    display: block;
  }
  .footer__info__tel {
    margin: 20px auto 20px;
    width: 100%;
    text-align: right;
  }
  .footer__info__tel__number {
    white-space: nowrap;
    display: block;
  }
  .footer__info__company {
    margin: 10px auto 0;
  }
  .footer__info__company a {
    color: #fff;
  }
  .footer__info__company a:after {
    background-image: url(images/link-icon-white.png);
  }
  .footer__info__company p span {
    display: block;
  }
  .footer__info__company p span:before {
    background-image: url(images/phone-icon-white.svg);
  }
  .footer__info__title {
    width: 100%;
  }
  .footer__newfoot {
    text-align: center;
    padding: 26px 0;
    color: #FFFFFF;
    background: #53257D;
  }
  .footer__newfoot__copy {
    margin-top: 10px;
  }
  .footer__newfoot__copy p {
    font-size: 1.1rem;
    font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans Japanese", Quicksand, "メイリオ", Meiryo, Osaka, sans-serif;
    opacity: 0.5;
  }
}
.form {
  margin-top: 60px;
  padding: 10px 10px 40px;
}
.form__wrap {
  max-width: 660px;
}
.form__text {
  margin-top: 80px;
  margin-bottom: 40px;
  font-size: 20px;
  font-weight: bold;
}
.form__text span {
  display: block;
  font-size: 12px;
  font-weight: normal;
}
.form__text span.form__required {
  display: inline-block;
}
.form__text-required {
  margin-bottom: 40px;
  text-align: right;
  font-size: 13px;
  color: #E7287C;
}
.form__text a {
  color: #E7287C;
}
.form__required {
  color: #E7287C;
}
.form-row {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: flex-start;
  align-content: flex-start;
  margin-bottom: 40px;
}
.form-row label {
  width: 30%;
  min-width: 200px;
  font-size: 16px;
  font-weight: bold;
}
.form-row label a {
  color: #E7287C;
}
.form-row > .input_wrap,
.form-row > select,
.form-row > input,
.form-row > .wpcf7-form-control-wrap,
.form-row > .address_wrap,
.form-row > .radio_wrap {
  width: 70%;
}
.form-row > .input_wrap.half,
.form-row > select.half,
.form-row > input.half,
.form-row > .wpcf7-form-control-wrap.half,
.form-row > .address_wrap.half,
.form-row > .radio_wrap.half {
  width: 35%;
}
.form-row > .wpcf7-form-control-wrap input,
.form-row > .wpcf7-form-control-wrap select {
  width: 100%;
}
.form-row > .address_wrap {
  font-size: 0;
}
.form-row > .address_wrap .wpcf7-form-control-wrap {
  display: inline-block;
  vertical-align: top;
}
.form-row > .address_wrap .wpcf7-form-control-wrap input,
.form-row > .address_wrap .wpcf7-form-control-wrap select {
  width: 100%;
}
.form-row > .address_wrap .address_line2,
.form-row > .address_wrap #address_line1 {
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 5%;
}
.form-row > .address_wrap .address_line3,
.form-row > .address_wrap #address_line2 {
  width: 47.5%;
  margin-bottom: 5%;
}
.form-row > .address_wrap .address-state,
.form-row > .address_wrap #address_state {
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 5%;
}
.form-row > .address_wrap .address_line1,
.form-row > .address_wrap #address_city {
  width: 47.5%;
  margin-bottom: 5%;
}
.form-row > .address_wrap span.error {
  margin-bottom: 10px;
  text-align: left;
  display: block;
  font-size: 12px;
}
.form-row > .radio_wrap .radio {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px;
}
.form-row > .radio_wrap .radio label {
  font-weight: normal;
  white-space: nowrap;
  cursor: pointer;
}
.form-row > .input_wrap select,
.form-row > .input_wrap input {
  margin-bottom: 0;
  width: 100%;
}
.form-row select {
  appearance: none;
  -webkit-appearance: none;
  height: 40px;
  line-height: 18px;
  padding: 10px;
  background: #fff;
  border-radius: 4px;
  border: 1px solid #53257D;
  background: url(images/arrow-down-purple-2.svg) no-repeat right 20px center;
  background-size: 8px;
  color: #53257D;
}
.form-row select.wpcf7-not-valid, .form-row select.error {
  border-width: 2px;
  border-color: #E7287C;
  background: url(images/error_icon.svg) no-repeat right 20px center;
  background-size: 16px;
}
.form-row input {
  background: none;
  padding: 10px;
  line-height: 1.8;
  border-radius: 4px;
  border: 1px solid #53257D;
  color: #53257D;
}
.form-row input::placeholder {
  color: #B7A2C9;
}
.form-row input.wpcf7-not-valid, .form-row input.error {
  border-width: 2px;
  border-color: #E7287C;
  background: url(images/error_icon.svg) no-repeat right 20px center;
  background-size: 16px;
}
.form-row input[type=radio] {
  width: 0;
  padding: 0;
  height: 0;
  border: none;
  opacity: 0;
  margin: 0;
}
.form-row input[type=radio]:checked + label:before {
  border-color: #E7287C;
}
.form-row input[type=radio]:checked + label:after {
  opacity: 1;
}
.form-row input[type=radio] + label {
  position: relative;
  padding-left: 25px;
}
.form-row input[type=radio] + label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  width: 14px;
  height: 14px;
  margin-left: -8px;
  margin-top: -8px;
  border-radius: 100%;
  border: 1px solid #53257D;
}
.form-row input[type=radio] + label:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  width: 8px;
  height: 8px;
  margin-left: -4px;
  margin-top: -4px;
  border-radius: 100%;
  background: #E7287C;
  opacity: 0;
}
.form-row #card-element {
  padding: 13px 10px;
  line-height: 1.8;
  border-radius: 4px;
  border: 1px solid #53257D;
}
.form-row #card-element.error {
  border: 2px solid #E7287C;
  margin: 0;
}
.form-row.agree {
  display: block;
  padding-top: 40px;
  border-top: 1px solid #F1E9F8;
  text-align: center;
}
.form-row.agree .scroll-box {
  margin-bottom: 20px;
  padding: 20px;
  text-align: left;
  border-radius: 4px;
  border: 1px solid #53257D;
  background: #fff;
  max-height: 400px;
  overflow: auto;
}
.form-row.agree .scroll-box h4 {
  margin-bottom: 30px;
}
.form-row.agree .scroll-box p {
  margin-bottom: 20px;
}
.form-row.agree .scroll-box p.sign, .form-row.agree .scroll-box p.contact, .form-row.agree .scroll-box p.date {
  margin-top: 40px;
}
.form-row.agree .scroll-box p b {
  font-weight: bold;
}
.form-row.agree input[type=checkbox] {
  display: none;
  width: 0;
  padding: 0;
  height: 0;
  border: none;
  opacity: 0;
  margin: 0;
}
.form-row.agree input[type=checkbox]:checked + span:before {
  border-color: #E7287C;
}
.form-row.agree input[type=checkbox]:checked + span:after {
  opacity: 1;
}
.form-row.agree input[type=checkbox] + span {
  position: relative;
  padding-left: 25px;
}
.form-row.agree input[type=checkbox] + span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  width: 14px;
  height: 14px;
  margin-left: -8px;
  margin-top: -8px;
  border-radius: 100%;
  border: 1px solid #53257D;
}
.form-row.agree input[type=checkbox] + span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  width: 8px;
  height: 8px;
  margin-left: -4px;
  margin-top: -4px;
  border-radius: 100%;
  background: #E7287C;
  opacity: 0;
}
.form-row.agree > label {
  display: block;
  width: auto;
  margin: 0 auto 40px;
}
.form-row.agree span.error {
  display: block;
}
.form-row.agree .input_wrap {
  width: auto;
  margin-top: 40px;
}
.form__btn {
  cursor: pointer;
  display: block;
  height: auto;
  min-width: 210px;
  line-height: 1;
  margin-left: 200px;
  padding: 15px 40px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  border-radius: 4px;
  background: rgb(190, 8, 81); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  background-size: 200% 100%;
  background-position: 0% center;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#be0851", endColorstr="#3d2351",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  -moz-transition: background 0.6s ease;
  -o-transition: background 0.6s ease;
  -webkit-transition: background 0.6s ease;
  transition: background 0.6s ease;
}
.form__btn:hover {
  background-position: right center;
}
.form__btn.loading {
  font-size: 0;
  position: relative;
  height: 48px;
}
.form__btn.loading:after {
  content: "";
  height: 24px;
  width: 24px;
  background: url(images/loading.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 12px;
  left: 50%;
  margin-left: -12px;
}
.form .wpcf7-not-valid-tip {
  color: #E7287C;
  font-size: 12px;
  margin-top: 10px;
}
.form .card-error,
.form span.error,
.form div.error {
  text-align: center;
  margin-bottom: 40px;
  color: #E7287C;
  font-size: 12px;
}
.form .thanks {
  text-align: center;
  font-weight: bold;
  margin: 80px auto;
  padding: 40px;
  background: #fff;
  max-width: 660px;
  border-radius: 4px;
  font-size: 18px;
}

div.wpcf7 .wpcf7-form > p {
  position: relative;
}

div.wpcf7 .wpcf7-submit.loading {
  display: none;
}

div.wpcf7 .ajax-loader {
  display: block;
  height: auto;
  min-width: 210px;
  line-height: 1;
  margin-left: 200px;
  padding: 15px 40px;
  height: 48px;
  color: #fff;
  border-radius: 4px;
  background: rgb(190, 8, 81); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgb(190, 8, 81) 0%, rgb(61, 35, 81) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  background-size: 200% 100%;
  background-position: 0% center;
  z-index: 100;
}
div.wpcf7 .ajax-loader:after {
  content: "";
  display: inline-block;
  height: 24px;
  width: 24px;
  background: url(images/loading.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 12px;
  left: 50%;
  margin-left: -12px;
}

@media only screen and (max-width: 736px) {
  .form {
    padding: 10px 0;
    overflow: hidden;
  }
  .form-row {
    display: block;
  }
  .form-row label {
    display: block;
    width: 100%;
  }
  .form-row .radio_wrap .radio label {
    white-space: normal;
  }
  .form-row > .input_wrap,
  .form-row > select,
  .form-row > input,
  .form-row > .wpcf7-form-control-wrap,
  .form-row > .address_wrap {
    display: block;
    width: 100%;
  }
  .form-row > .input_wrap.half,
  .form-row > select.half,
  .form-row > input.half,
  .form-row > .wpcf7-form-control-wrap.half,
  .form-row > .address_wrap.half {
    width: 100%;
  }
  .form-row #card-element {
    display: block;
    width: 100%;
  }
  .form__text:first-child {
    margin-top: 0px;
  }
  .form__btn {
    margin: 0 auto;
  }
}
.top__mv {
  padding: 20px;
}
.top__mv__img {
  position: relative;
  width: 100%;
  height: calc(100vh - 140px);
  overflow: hidden;
  border-radius: 4px;
}
.top__mv__img iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  min-width: 100%;
  min-height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.top__mv__img video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
}
.top__mv__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.top__mv__text {
  position: absolute;
  top: 50%;
  left: 50%;
  text-align: center;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.top__mv__text__logo {
  margin: 0 auto 40px;
}
.top__mv__text__logo #lottie {
  max-width: 150px;
  margin: 0 auto;
}
.top__mv__text__logo:after {
  content: "";
  display: block;
  width: 98px;
  height: 24px;
  margin: 0 auto;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
.top__mv__text__title {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.top__mv__text__description {
  margin-bottom: 0;
  font-size: 20px;
  font-weight: bold;
  color: #9D246E;
}
.top__mv__text__description1 {
  margin-bottom: 40px;
}
.top__mvpre {
  padding: 10px;
  position: relative;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
}
.top__mvpre #lottie {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  display: block;
  width: 152px;
  height: 152px;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.top__mvpre:after {
  content: "";
  background: url(images/icon.svg) no-repeat center;
  background-size: contain;
}
.top__mvpre__left {
  width: 50%;
  padding: 10px;
}
.top__mvpre__left__img {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 4px;
}
.top__mvpre__left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.top__mvpre__left .swiper-container {
  height: 100%;
}
.top__mvpre__right {
  width: 50%;
  padding: 10px;
  text-align: center;
  position: relative;
}
.top__mvpre__right .award_badge {
  position: absolute;
  top: 40px;
  left: 40px;
  width: 50%;
  max-width: 290px;
  z-index: 1;
}
.top__mvpre__right .award_badge img {
  width: 100%;
}
.top__mvpre__right__inner {
  padding: 200px 40px 100px;
  position: relative;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 100%;
  width: 100%;
  overflow: hidden;
  border-radius: 4px;
  background: #be0851;
  background: -moz-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
  background: -webkit-linear-gradient(-45deg, #be0851 0%, #3d2351 50%);
  background: linear-gradient(135deg, #be0851 0%, #3d2351 50%);
}
.top__mvpre__right__inner:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 155px;
  height: 20px;
  background: url(images/talent-and-assessment-logo_w.svg) no-repeat center;
  background-size: contain;
}
.top__mvpre__right__inner .annotation {
  color: white;
  font-size: 12px;
  position: absolute;
  bottom: 20px;
  left: 20px;
}
.top__mvpre__right__logo {
  margin-bottom: 20px;
  width: 160px;
  height: 38px;
  font-size: 0;
  background: url(images/logo_wh.svg) no-repeat center;
  background-size: contain;
}
.top__mvpre__right__logo2 {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 141px;
}
.top__mvpre__right__logo2 img {
  width: 100%;
}
.top__mvpre__right__logo3 {
  position: absolute;
  top: 20px;
  left: 170px;
  width: 127px;
}
.top__mvpre__right__logo3 img {
  width: 100%;
}
.top__mvpre__right__title {
  margin-bottom: 20px;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
}
.top__mvpre__right__subtitle {
  margin-top: 60px;
  color: #E2335C;
  font-size: 24px;
  font-weight: bold;
}
.top__mvpre__right__description {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
.top__mvpre__right__description sup {
  font-size: 12px;
  vertical-align: super;
}
.top__mvpre__right__description__bottom {
  font-size: 12px;
  text-align: right;
  display: block;
  margin-top: 20px;
}
.top__mvpre__right__pstxt {
  margin-top: 40px;
  font-size: 16px;
  font-weight: 500;
  color: #fff;
}
.top__mvpre__right__btn {
  margin-top: 20px;
}
.top__mvpre__right__img {
  max-width: 70%;
}
.top__mvpre__right__img img {
  max-width: 100%;
  height: auto;
}
.top__mvpre__right .gradient_btn {
  background: linear-gradient(90deg, #F1C868 0%, #E8616D 100%);
}
.top__mvpre__right .gradient_btn:after {
  content: "";
  background: rgb(230, 97, 104);
}
.top__company {
  margin: 140px auto;
}
.top__company__title {
  text-align: center;
  font-size: 40px;
  font-weight: bold;
}
.top__company__description {
  margin-bottom: 60px;
  text-align: center;
  line-height: 1.8;
  font-size: 16px;
}
.top__company__list {
  max-width: 100%;
  overflow: hidden;
}
.top__company__list__wrap {
  padding-bottom: 0;
  width: 7100px;
  -webkit-animation: company_logo 29s linear infinite normal;
  -moz-animation: company_logo 29s linear infinite normal;
  -ms-animation: company_logo 29s linear infinite normal;
  -o-animation: company_logo 29s linear infinite normal;
  animation: company_logo 29s linear infinite normal;
}
.top__company__list__wrap:after {
  content: "";
  display: block;
  clear: both;
}
.top__company__list__wrap__inner {
  width: 3550px;
  float: left;
}
.top__company__logo_wrap {
  margin: 25px;
  display: inline-block;
  vertical-align: middle;
}
.top__company__logo_wrap img {
  max-width: 300px;
  max-height: 80%;
}
.top__company__btn {
  margin: 40px auto;
  text-align: center;
  position: relative;
}
.top__company .top {
  display: flex;
  align-items: center;
}
.top__company .top .top__company__logo_wrap {
  margin: 25px 19px;
}
.top__company .bottom {
  display: flex;
  align-items: center;
}
.top__comment {
  padding-top: 60px;
  padding-bottom: 40px;
  margin-bottom: 140px;
  overflow: hidden;
  position: relative;
}
.top__comment:before {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #F6E3EA;
  background: -moz-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: -webkit-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
}
.top__comment__wrap {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 20px;
}
.top__comment__title {
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  position: relative;
}
.top__comment__swiper {
  padding-bottom: 80px;
}
@media only screen and (max-width: 736px) {
  .top__comment__swiper {
    padding-bottom: 30px;
  }
}
.top__comment__swiper .swiper-button-prev {
  left: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_left.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
@media only screen and (max-width: 736px) {
  .top__comment__swiper .swiper-button-prev {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.5);
    background-size: 28px;
  }
}
.top__comment__swiper .swiper-button-next {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_right.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
@media only screen and (max-width: 736px) {
  .top__comment__swiper .swiper-button-next {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.8);
    background-size: 28px;
  }
}
.top__comment__swiper .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  background-color: #fff;
  opacity: 1;
  margin: 0 6px !important;
}
.top__comment__swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #A11451;
  box-shadow: 0 0 0 6px #D3CDD5;
}
.top__comment__swiper .swiper-slide {
  width: 33%;
  max-width: 500px;
}
.top__comment__item {
  padding: 20px;
  height: 100%;
}
.top__comment__item > a {
  display: block;
  height: 100%;
}
.top__comment__item__inner {
  position: relative;
  height: 100%;
  padding: 25px 25px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.16);
}
.top__comment__item__img {
  position: relative;
  height: 0;
  padding-bottom: 57%;
  border-radius: 4px;
  overflow: hidden;
}
.top__comment__item__img img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.top__comment__item__text__top {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  padding: 20px 0;
  margin-bottom: 20px;
  border-bottom: 1px solid #E4D6F0;
}
.top__comment__item__text__logo {
  width: 50%;
}
.top__comment__item__text__logo img {
  max-width: 100%;
  max-height: 60px;
}
.top__comment__item__text__name {
  font-size: 14px;
  color: #E7287C;
}
.top__comment__item__title {
  line-height: 1.6;
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
}
.top__comment__item__description {
  font-size: 14px;
  line-height: 2.2;
}
.top__comment__item__btn {
  position: absolute;
  bottom: 25px;
  left: 0;
  width: 100%;
  padding: 0 25px;
  text-align: center;
}
.top__comment__btn {
  position: relative;
  margin: 40px auto 0;
  text-align: center;
}
.top__feature {
  position: relative;
  margin-top: 120px;
}
.top__feature__wrap {
  position: relative;
  max-width: 1320px;
  padding: 40px;
}
.top__feature__wrap:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 30%;
  box-shadow: 30px 30px 80px 0 rgba(83, 37, 125, 0.16);
}
.top__feature__wrap:after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f8f8f8+0,ffffff+0 */
  background: rgb(248, 248, 248); /* Old browsers */
  background: -moz-linear-gradient(top, rgb(248, 248, 248) 0%, rgb(255, 255, 255) 0%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgb(248, 248, 248) 0%, rgb(255, 255, 255) 0%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgb(248, 248, 248) 0%, rgb(255, 255, 255) 0%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8f8f8", endColorstr="#ffffff",GradientType=0 ); /* IE6-9 */
}
.top__feature__title {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
}
.top__feature__cols {
  position: relative;
  z-index: 1;
}
.top__feature__col {
  width: 25%;
  padding: 0 10px;
  text-align: center;
}
.top__feature__icon {
  height: 120px;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
}
.top__feature__icon img {
  vertical-align: bottom;
}
.top__feature h3 {
  margin: 40px auto 20px;
  line-height: 1.6;
  font-size: 20px;
  font-weight: bold;
  min-height: 64px;
}
.top__feature p {
  font-size: 16px;
}
.top__feature__btn {
  margin-top: 60px;
  position: relative;
  text-align: center;
  z-index: 1;
}
.top__introduction {
  position: relative;
  padding-top: 60px;
  margin-top: 100px;
  text-align: center;
}
.top__introduction:after {
  content: "";
  width: 100%;
  height: 648px;
  background-image: url(images/bg_top_1.png);
  background-size: cover;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.top__introduction__wrap {
  position: relative;
  z-index: 1;
}
.top__introduction__title {
  margin-bottom: 40px;
  font-size: 40px;
  font-weight: bold;
}
.top__introduction__description {
  font-size: 16px;
  font-weight: 500;
}
.top__introduction__description span {
  font-weight: bold;
  color: #E2335C;
}
.top__introduction__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
  gap: 15px 25px;
}
.top__introduction__block {
  width: 48%;
  width: calc(50% - 13px);
  padding: 40px;
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 25px 25px 60px 0 rgba(83, 37, 125, 0.2);
}
.top__introduction__block__title {
  font-size: 24px;
  font-weight: bold;
  color: #E2335C;
}
.top__introduction__block__logos {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  min-height: 100px;
}
.top__introduction__block--private-enterprises {
  width: 100%;
}
.top__introduction__more p {
  margin: 55px auto;
  font-size: 20px;
  font-weight: 500;
}
.top__introduction__btn {
  margin: 0 auto 20px;
}
.top__introduction__btn a {
  width: 320px;
  max-width: 100%;
}
.top__solution {
  margin-top: 160px;
  background: url(images/bg_top_2.png) no-repeat center;
  background-size: contain;
}
.top__solution__title {
  margin-bottom: 40px;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  color: #E2335C;
}
.top__solution__description {
  margin-bottom: 100px;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
}
.top__solution__beforeafter {
  margin-bottom: 50px;
  display: flex;
  width: 100%;
}
.top__solution__beforeafter h3 {
  width: 50%;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
}
.top__solution__type {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 50px;
}
.top__solution__type__title {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 70px;
  font-size: 24px;
  gap: 10px;
  font-weight: bold;
  color: #E2335C;
}
.top__solution__type__title:before {
  content: "";
  display: block;
  width: 74px;
  height: 74px;
}
.top__solution__type__arrow {
  width: 10%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top__solution__type__arrow:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 24px solid transparent;
  border-bottom: 24px solid transparent;
  border-left: 28px solid #663366;
}
.top__solution__type__before {
  position: relative;
  width: 45%;
  padding: 50px 20px;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #663366;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
}
.top__solution__type__before:before {
  content: "SHaiN 導入前";
  position: absolute;
  top: 0;
  left: 50%;
  padding: 10px;
  background-color: #EAE5EA;
  border-radius: 4px;
  font-weight: bold;
  transform: translate(-50%, -50%);
}
.top__solution__type__before h3 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 18px;
}
.top__solution__type__before p {
  font-size: 16px;
}
.top__solution__type__before p span {
  font-size: 10px;
}
.top__solution__type__after {
  position: relative;
  width: 45%;
  padding: 50px 20px;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #663366;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
}
.top__solution__type__after:before {
  content: "SHaiN 導入後の効果";
  position: absolute;
  top: 0;
  left: 50%;
  padding: 10px;
  color: #fff;
  background: linear-gradient(90deg, #b50c50 0%, #452150 100%);
  border-radius: 4px;
  font-weight: bold;
  transform: translate(-50%, -50%);
}
.top__solution__type__after h3 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 18px;
}
.top__solution__type__after p {
  font-size: 16px;
}
.top__solution__type__after p span {
  font-size: 10px;
}
.top__solution__type--newgraduate-midway-through .top__solution__type__title:before {
  background: url(images/newgraduate-midway-through.svg) no-repeat center;
  background-size: contain;
}
.top__solution__type--part-time .top__solution__type__title:before {
  background: url(images/part-time.svg) no-repeat center;
  background-size: contain;
}
.top__solution__type--hr .top__solution__type__title:before {
  background: url(images/hr.svg) no-repeat center;
  background-size: contain;
}
.top__solution__btns {
  margin-top: 60px;
  text-align: center;
}
.top__solution__btn {
  margin: 0 auto 30px;
}
.top__solution__btn a {
  padding: 20px 40px;
}
.top__examples {
  margin-top: 300px;
  text-align: center;
}
.top__examples__wrap {
  max-width: 1380px;
}
.top__examples__title {
  margin-bottom: 80px;
  font-size: 40px;
  font-weight: bold;
}
.top__examples__cols {
  gap: 20px;
}
.top__examples__col {
  width: 22%;
  width: calc(25% - 15px);
  padding: 30px;
  background-color: #fff;
  border: 1px solid #E1D0F0;
  border-radius: 4px;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
}
.top__examples__col__img {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 80px;
}
.top__examples__col__name {
  font-size: 24px;
  font-weight: bold;
}
.top__examples__col__type {
  font-size: 16px;
  font-weight: bold;
  color: #9D246E;
}
.top__examples__col__bottom {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E2D6EE;
}
.top__examples__col__rate {
  font-size: 16px;
  font-weight: bold;
}
.top__examples__col__up {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.top__examples__col__before {
  text-align: left;
  line-height: 1;
  font-size: 24px;
}
.top__examples__col__before span {
  line-height: 1;
  font-size: 16px;
}
.top__examples__col__arrow {
  width: 18px;
  height: 18px;
  border-right: 2px solid #663366;
  border-bottom: 2px solid #663366;
  transform: translateX(-40%) rotate(-45deg);
}
.top__examples__col__after {
  text-align: left;
  line-height: 1.2;
  font-size: 22px;
  font-weight: bold;
  color: #E2335C;
}
.top__examples__col__after span {
  font-size: 40px;
}
.top__process {
  margin-bottom: 140px;
}
.top__process__title {
  margin-bottom: 40px;
  text-align: center;
  border: none;
  font-size: 40px;
  font-weight: bold;
}
.top__process__title:before {
  margin: 0 auto 15px;
}
.top__process__text {
  text-align: center;
  margin-bottom: 60px;
}
.top__process__ps_text {
  text-align: right;
  font-size: 12px;
}
.top__process__info {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}
.top__process__graph__wrapper {
  position: relative;
}
.top__process__date {
  position: absolute;
  top: 0;
  left: 210px;
  right: 25px;
  height: 100%;
}
.top__process__date:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -210px;
  right: -60px;
  height: 1px;
  background: #EAEAEA;
}
.top__process__date p {
  white-space: nowrap;
}
.top__process__date p span {
  position: absolute;
  bottom: 50%;
  left: 50%;
  font-size: 16px;
  color: #B4B4B4;
  -moz-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.top__process__date p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background: #BCBCBC;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.top__process__date__0 {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 1px;
  background: #EAEAEA;
}
.top__process__date__7 {
  position: absolute;
  left: 43%;
  top: 0;
  height: 100%;
  width: 1px;
  background: #EAEAEA;
}
.top__process__date__14 {
  position: absolute;
  left: 86%;
  top: 0;
  height: 100%;
  width: 1px;
  background: #EAEAEA;
}
.top__process__date__17 {
  position: absolute;
  right: 0px;
  top: 0;
  height: 100%;
  width: 1px;
}
.top__process__row {
  position: relative;
  padding-top: 20px;
  z-index: 1;
  width: 100%;
}
.top__process__row__title {
  width: 165px;
  float: left;
  margin-top: 60px;
  font-size: 26px;
  font-weight: bold;
}
.top__process__row__graph {
  margin-left: 165px;
  padding-left: 45px;
  padding-right: 25px;
}
.top__process__row__graph:after {
  content: "";
  display: block;
  clear: both;
}
.top__process__row p {
  width: 0;
  margin: 0;
  line-height: 3;
  overflow: hidden;
  white-space: nowrap;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  opacity: 1;
  font-size: 17px;
}
.top__process__row.normal {
  margin-bottom: 0px;
  padding-bottom: 90px;
}
.top__process__row.normal .top__process__row__title span {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 80px;
  width: 80px;
  padding: 10px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #3EA8DE;
  border-radius: 100%;
  margin: 0 auto;
}
.top__process__row.normal .all_date {
  position: relative;
  text-align: center;
}
.top__process__row.normal .all_date:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 5px;
  width: 0;
  height: 18px;
  border-top: 1px solid #50AFFF;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  box-sizing: border-box;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .all_date p {
  position: relative;
  z-index: 1;
  padding: 0 30px 28px;
  width: auto;
  text-align: center;
  color: #50AFFF;
  font-size: 20px;
  line-height: 1;
  opacity: 0;
}
.top__process__row.normal .all_date p span {
  font-size: 30px;
}
.top__process__row.normal .first {
  position: relative;
  float: left;
  width: 60%;
  text-align: center;
}
.top__process__row.normal .first p {
  height: 60px;
  line-height: 60px;
  font-size: 20px;
  color: #fff;
  background: #76C0FF;
  border-radius: 4px 0 0 4px;
}
.top__process__row.normal .first:after {
  position: absolute;
  top: 100%;
  left: 0;
  content: "";
  display: block;
  width: 60px;
  height: 52px;
  background: url(images/process_normal_fukidashi_1.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .second {
  position: relative;
  float: left;
  width: 26%;
  text-align: center;
}
.top__process__row.normal .second p {
  height: 60px;
  line-height: 60px;
  font-size: 20px;
  color: #fff;
  background: #50AFFF;
}
.top__process__row.normal .second:before {
  position: absolute;
  top: 100%;
  left: 0;
  content: "";
  display: block;
  width: 90px;
  height: 52px;
  background: url(images/process_normal_fukidashi_2.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .second:after {
  position: absolute;
  top: 100%;
  right: 0;
  content: "";
  display: block;
  width: 90px;
  height: 52px;
  background: url(images/process_normal_fukidashi_3.svg?20180921) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .third {
  position: relative;
  float: left;
  width: 12%;
  text-align: center;
}
.top__process__row.normal .third:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  height: 0;
  width: 0;
  border: 30px solid #2699FB;
  border-right: 0;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-left-width: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .third:after {
  position: absolute;
  top: 100%;
  right: 0;
  content: "";
  display: block;
  width: 90px;
  height: 52px;
  background: url(images/process_normal_fukidashi_4.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.normal .third p {
  position: relative;
  height: 60px;
  line-height: 60px;
  font-size: 20px;
  color: #fff;
  background: #2699FB;
  border-radius: 0 1px 1px 0;
}
.top__process__row.shain {
  padding-bottom: 40px;
}
.top__process__row.shain .top__process__row__title {
  font-size: 0;
}
.top__process__row.shain .top__process__row__title:before {
  content: "";
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto 10px;
  background: url(images/icon.svg) no-repeat center;
}
.top__process__row.shain .top__process__row__title:after {
  content: "";
  display: block;
  width: 90px;
  height: 22px;
  margin: 0 auto 10px;
  background: url(images/logo.svg) no-repeat center;
}
.top__process__row.shain .all_date {
  position: relative;
  width: 43%;
  text-align: center;
}
.top__process__row.shain .all_date:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 5px;
  width: 0;
  height: 18px;
  border-top: 1px solid #9D246E;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  box-sizing: border-box;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.shain .all_date p {
  position: relative;
  z-index: 1;
  padding: 0 30px 28px;
  width: auto;
  text-align: center;
  color: #9D246E;
  font-size: 20px;
  line-height: 1;
  opacity: 0;
}
.top__process__row.shain .all_date p span {
  font-size: 30px;
}
.top__process__row.shain .first {
  position: relative;
  float: left;
  width: 43%;
  text-align: center;
}
.top__process__row.shain .first .inner {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  width: 0;
  height: 60px;
  line-height: 60px;
  font-size: 20px;
  font-weight: bold;
  border-radius: 4px 0 0 4px;
  overflow: hidden;
}
.top__process__row.shain .first P {
  height: 60px;
  display: inline-block;
  color: #fff;
  font-size: 20px;
  font-weight: normal;
  width: 33.33333%;
}
.top__process__row.shain .first P:nth-of-type(1) {
  background: #E56784;
}
.top__process__row.shain .first P:nth-of-type(1):after {
  position: absolute;
  top: 100%;
  left: 0;
  content: "";
  display: block;
  width: 60px;
  height: 52px;
  background: url(images/process_shainex_fukidashi_1.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.shain .first P:nth-of-type(2) {
  background: #E2335C;
}
.top__process__row.shain .first P:nth-of-type(2):after {
  position: absolute;
  top: 100%;
  left: 33.3333%;
  content: "";
  display: block;
  width: 90px;
  height: 52px;
  background: url(images/process_shainex_fukidashi_2.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.shain .first P:nth-of-type(3) {
  background: #D02459;
}
.top__process__row.shain .first P:nth-of-type(3):after {
  position: absolute;
  top: 100%;
  left: 66.66666%;
  content: "";
  display: block;
  width: 140px;
  height: 52px;
  margin-left: -30px;
  background: url(images/process_shainex_fukidashi_3.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process__row.shain .free_date {
  position: relative;
  float: left;
  width: 57%;
  box-sizing: border-box;
  text-align: center;
}
.top__process__row.shain .free_date p {
  height: 60px;
  line-height: 60px;
  font-size: 21px;
  font-weight: bold;
  color: #53257D;
  border: 1px dashed transparent;
}
.top__process__row.shain .free_date:after {
  position: absolute;
  top: 100%;
  left: 0;
  content: "";
  display: block;
  width: 90px;
  height: 52px;
  background: url(images/process_shainex_fukidashi_4.svg) no-repeat center;
  opacity: 0;
  -moz-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.top__process.on .top__process__row.normal .all_date:before {
  width: 100%;
  border-left-color: #50AFFF;
  border-right-color: #50AFFF;
  -moz-transition: all 0.6s 0.8s ease;
  -o-transition: all 0.6s 0.8s ease;
  -webkit-transition: all 0.6s 0.8s ease;
  transition: all 0.6s 0.8s ease;
}
.top__process.on .top__process__row.normal .all_date p {
  opacity: 1;
  -moz-transition: all 0.6s 0.8s ease;
  -o-transition: all 0.6s 0.8s ease;
  -webkit-transition: all 0.6s 0.8s ease;
  transition: all 0.6s 0.8s ease;
}
.top__process.on .top__process__row.normal .first:after {
  opacity: 1;
  -moz-transition: all 0.6s 1.2s ease;
  -o-transition: all 0.6s 1.2s ease;
  -webkit-transition: all 0.6s 1.2s ease;
  transition: all 0.6s 1.2s ease;
}
.top__process.on .top__process__row.normal .first p {
  width: 100%;
  -moz-transition: all 0.6s 1.2s ease;
  -o-transition: all 0.6s 1.2s ease;
  -webkit-transition: all 0.6s 1.2s ease;
  transition: all 0.6s 1.2s ease;
}
.top__process.on .top__process__row.normal .second:before {
  opacity: 1;
  -moz-transition: all 0.6s 1.8s ease;
  -o-transition: all 0.6s 1.8s ease;
  -webkit-transition: all 0.6s 1.8s ease;
  transition: all 0.6s 1.8s ease;
}
.top__process.on .top__process__row.normal .second:after {
  opacity: 1;
  -moz-transition: all 0.6s 2.4s ease;
  -o-transition: all 0.6s 2.4s ease;
  -webkit-transition: all 0.6s 2.4s ease;
  transition: all 0.6s 2.4s ease;
}
.top__process.on .top__process__row.normal .second p {
  width: 100%;
  -moz-transition: all 0.6s 1.8s ease;
  -o-transition: all 0.6s 1.8s ease;
  -webkit-transition: all 0.6s 1.8s ease;
  transition: all 0.6s 1.8s ease;
}
.top__process.on .top__process__row.normal .third:before {
  left: 100%;
  border-left-width: 35px;
  -moz-transition: all 0.6s 2.4s ease;
  -o-transition: all 0.6s 2.4s ease;
  -webkit-transition: all 0.6s 2.4s ease;
  transition: all 0.6s 2.4s ease;
}
.top__process.on .top__process__row.normal .third:after {
  opacity: 1;
  -moz-transition: all 0.6s 3s ease;
  -o-transition: all 0.6s 3s ease;
  -webkit-transition: all 0.6s 3s ease;
  transition: all 0.6s 3s ease;
}
.top__process.on .top__process__row.normal .third p {
  width: 100%;
  -moz-transition: all 0.6s 2.4s ease;
  -o-transition: all 0.6s 2.4s ease;
  -webkit-transition: all 0.6s 2.4s ease;
  transition: all 0.6s 2.4s ease;
}
.top__process.on .top__process__row.shain .all_date:before {
  width: 100%;
  border-left-color: #9D246E;
  border-right-color: #9D246E;
  -moz-transition: all 0.6s 3.4s ease;
  -o-transition: all 0.6s 3.4s ease;
  -webkit-transition: all 0.6s 3.4s ease;
  transition: all 0.6s 3.4s ease;
}
.top__process.on .top__process__row.shain .all_date p {
  opacity: 1;
  -moz-transition: all 0.6s 3s ease;
  -o-transition: all 0.6s 3s ease;
  -webkit-transition: all 0.6s 3s ease;
  transition: all 0.6s 3s ease;
}
.top__process.on .top__process__row.shain .first p:nth-of-type(1):after {
  opacity: 1;
  -moz-transition: all 0.6s 3.8s ease;
  -o-transition: all 0.6s 3.8s ease;
  -webkit-transition: all 0.6s 3.8s ease;
  transition: all 0.6s 3.8s ease;
}
.top__process.on .top__process__row.shain .first p:nth-of-type(2):after {
  opacity: 1;
  -moz-transition: all 0.6s 4s ease;
  -o-transition: all 0.6s 4s ease;
  -webkit-transition: all 0.6s 4s ease;
  transition: all 0.6s 4s ease;
}
.top__process.on .top__process__row.shain .first p:nth-of-type(3):after {
  opacity: 1;
  -moz-transition: all 0.6s 4.2s ease;
  -o-transition: all 0.6s 4.2s ease;
  -webkit-transition: all 0.6s 4.2s ease;
  transition: all 0.6s 4.2s ease;
}
.top__process.on .top__process__row.shain .first .inner {
  width: 100%;
  -moz-transition: all 0.6s 3.8s ease;
  -o-transition: all 0.6s 3.8s ease;
  -webkit-transition: all 0.6s 3.8s ease;
  transition: all 0.6s 3.8s ease;
}
.top__process.on .top__process__row.shain .free_date:before {
  left: 100%;
  border-left-width: 60px;
  -moz-transition: all 0.6s 4.4s ease;
  -o-transition: all 0.6s 4.4s ease;
  -webkit-transition: all 0.6s 4.4s ease;
  transition: all 0.6s 4.4s ease;
}
.top__process.on .top__process__row.shain .free_date:after {
  opacity: 1;
  -moz-transition: all 0.6s 5s ease;
  -o-transition: all 0.6s 5s ease;
  -webkit-transition: all 0.6s 5s ease;
  transition: all 0.6s 5s ease;
}
.top__process.on .top__process__row.shain .free_date p {
  width: 100%;
  border-color: #9D246E;
  -moz-transition: all 0.6s 4.4s ease;
  -o-transition: all 0.6s 4.4s ease;
  -webkit-transition: all 0.6s 4.4s ease;
  transition: all 0.6s 4.4s ease;
}
.top__change {
  margin-bottom: 140px;
}
.top__change__title {
  position: relative;
  margin-bottom: 40px;
  z-index: 1;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
}
.top__change__description {
  margin-bottom: 60px;
  text-align: center;
  line-height: 1.8;
  font-size: 16px;
}
.top__change__cols {
  max-width: 800px;
  margin: 0 auto;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
}
.top__change__col {
  width: 50%;
  padding: 8px 8px 60px;
}
.top__change__col__inner {
  position: relative;
  height: 100%;
  padding: 50px 30px 40px;
  border: 1px solid #53257D;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.16);
  border-radius: 4px;
}
.top__change__col__inner:before {
  content: "";
  position: absolute;
  display: block;
  width: 40px;
  height: 40px;
  top: -20px;
  left: 50%;
  margin-left: -20px;
  background: url(images/icon.svg) no-repeat center;
}
.top__change__col__title {
  margin-bottom: 30px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #E2335C;
}
.top__change__col__description {
  text-align: center;
}
.top__application {
  position: relative;
  margin-top: 100px;
  padding: 0 20px;
}
.top__application:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 116px;
  height: 116px;
  margin-top: -58px;
  margin-left: -58px;
  background: url(images/icon.svg) no-repeat center;
}
.top__application__col {
  padding: 10px;
}
.top__application__col--text {
  text-align: center;
}
.top__application__col--text .top__application__col__inner {
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  padding: 60px 20px;
  background: #fff;
  border-radius: 4px;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 100%;
}
.top__application__col--img img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.top__application__col--img video {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.top__application__col--img .top__application__col__inner {
  height: 100%;
  width: 100%;
  overflow: hidden;
  border-radius: 4px;
}
.top__application__title {
  margin-bottom: 30px;
  font-size: 36px;
  font-weight: bold;
  color: #E7287C;
}
.top__application__title a {
  color: #E7287C;
}
.top__application__title span {
  color: #53257D;
}
.top__application__description {
  margin-bottom: 30px;
  line-height: 2;
  font-size: 16px;
}
.top__application__btn {
  margin-bottom: 30px;
}
.top__application__link a {
  font-size: 16px;
  font-weight: bold;
}
.top__application__link a:after {
  content: "";
  display: block;
  width: 80%;
  height: 1px;
  margin: 10px auto;
  background: #53257D;
}
.top__modal {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 9;
  /*
  position: fixed;
  right: 20px;
  bottom: 20px;
  padding: 40px;
  text-align: center;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 0 40px 0 rgba(83,37,125,0.16);
  z-index: 1;
  &__title {
    font-size: 20px;
    font-weight: bold;
  }
  */
}
.top__modal img {
  max-width: 126px;
  transform: translateX(20%);
}
.top__news {
  padding: 80px 20px 190px;
}
.top__news .gradient_btn {
  max-width: 100%;
  width: auto;
  display: table;
  padding: 0;
  margin: auto;
}
.top__news .gradient_btn span {
  padding: 15px 40px;
  font-size: 18px;
  font-weight: bold;
  display: block;
}
.top__news__title {
  text-align: center;
  font-size: 40px;
  margin-bottom: 50px;
  font-weight: bold;
}
.top__news__wrap {
  max-width: 900px;
  width: 100%;
  margin: 0 auto 50px;
}
.top__news__list {
  margin-top: 25px;
}
.top__news__list a {
  display: flex;
  align-items: center;
}
.top__news__list:first-child {
  margin-top: 0;
}
.top__news__list__date {
  font-size: 20px;
  font-weight: 200;
  margin-right: 35px;
}
@media only screen and (min-width: 429px) {
  .top__news__list__date {
    min-width: 120px;
  }
}
@media only screen and (max-width: 428px) {
  .top__news__list__date {
    min-width: 100px;
  }
}
.top__news__list__tag {
  background-color: #EAE5EA;
  border-radius: 5px;
  font-size: 20px;
  font-weight: 600;
  margin-right: 35px;
  line-height: 1;
  padding: 14px 30px;
}
@media only screen and (min-width: 737px) {
  .top__news__list__tag {
    min-width: 140px;
  }
}
@media only screen and (max-width: 736px) {
  .top__news__list__tag {
    margin-top: 5px;
  }
}
.top__news__list__title {
  font-size: 19px;
  font-weight: 600;
}

@media only screen and (min-width: 737px) {
  .top__comment__item {
    -moz-transform: scale(0.8);
    -o-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
  }
  .top__comment__item__inner {
    box-shadow: 0 0 0px 0 rgba(83, 37, 125, 0.16);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
  }
  .top__comment.on .swiper-slide-active .top__comment__item {
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  .top__comment.on .swiper-slide-active .top__comment__item__inner {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.16);
  }
  .top__change__col__inner {
    -moz-transform: scale(0.95);
    -o-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    box-shadow: 0 0 0px 0 rgba(83, 37, 125, 0.16);
    opacity: 0;
    -moz-transition: all 1.5s ease;
    -o-transition: all 1.5s ease;
    -webkit-transition: all 1.5s ease;
    transition: all 1.5s ease;
  }
  .top__change__col:nth-of-type(2) .top__change__col__inner {
    -moz-transition: all 1.5s 1s ease;
    -o-transition: all 1.5s 1s ease;
    -webkit-transition: all 1.5s 1s ease;
    transition: all 1.5s 1s ease;
  }
  .top__change__col:nth-of-type(3) .top__change__col__inner {
    -moz-transition: all 1.5s 2s ease;
    -o-transition: all 1.5s 2s ease;
    -webkit-transition: all 1.5s 2s ease;
    transition: all 1.5s 2s ease;
  }
  .top__change__col:nth-of-type(4) .top__change__col__inner {
    -moz-transition: all 1.5s 3s ease;
    -o-transition: all 1.5s 3s ease;
    -webkit-transition: all 1.5s 3s ease;
    transition: all 1.5s 3s ease;
  }
  .top__change.on .top__change__col__inner {
    opacity: 1;
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.16);
  }
  .top__application__col--text .top__application__col__inner {
    -moz-transform: scale(0.95);
    -o-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    box-shadow: 0 0 0px 0 rgba(83, 37, 125, 0.16);
  }
  .top__application__col--img img {
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  .top__application.on .top__application__col--text .top__application__col__inner {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.16);
  }
  .top__application.on .top__application__col--img img {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes company_logo {
  0% {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@-moz-keyframes company_logo {
  0% {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@-webkit-keyframes company_logo {
  0% {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@-o-keyframes company_logo {
  0% {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@-ms-keyframes company_logo {
  0% {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@media only screen and (min-width: 737px) and (max-width: 1360px) {
  .top__mvpre__right__title {
    font-size: 2.5vw;
  }
  .top__mvpre__right__description {
    font-size: 1.4vw;
  }
}
@media only screen and (min-width: 737px) and (max-width: 1060px) {
  .top__introduction__title {
    font-size: 38px;
  }
  .top__introduction__block__logos img {
    max-width: 40%;
  }
  .top__introduction__block--private-enterprises .top__introduction__block__logos img {
    max-width: 15%;
  }
  .top__process__date {
    left: 120px;
  }
  .top__process__row__graph {
    margin-left: 100px;
    padding-left: 20px;
  }
  .top__process__row__title {
    width: 100px;
  }
  .top__process__row.normal .first:after {
    width: 5.5vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.normal .second:before, .top__process__row.normal .second:after {
    width: 8vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.normal .third:after {
    width: 8vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.shain .first p {
    font-size: 14px;
    line-height: 60px;
  }
  .top__process__row.shain .first p:nth-of-type(1):after {
    width: 5vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.shain .first p:nth-of-type(2):after {
    width: 8vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.shain .first p:nth-of-type(3):after {
    margin-left: -2.5vw;
    width: 13vw;
    height: 5vw;
    background-size: contain;
  }
  .top__process__row.shain .free_date:after {
    width: 8vw;
    height: 5vw;
    background-size: contain;
  }
  .top__examples__cols {
    gap: 10px;
  }
  .top__examples__col {
    padding: 15px;
    width: calc(25% - 5px);
  }
  .top__examples__col__up {
    flex-direction: column;
    gap: 10px;
  }
  .top__examples__col__before {
    font-size: 14px;
  }
  .top__examples__col__before span {
    font-size: 14px;
  }
  .top__examples__col__arrow {
    width: 12px;
    height: 12px;
    transform: translateX(-40%) rotate(45deg);
  }
  .top__examples__col__after {
    font-size: 18px;
  }
  .top__examples__col__after span {
    font-size: 20px;
  }
}
@media only screen and (max-width: 736px) {
  .top__mv__img {
    position: relative;
    width: 100%;
    height: 57vw;
    margin-bottom: 20px;
  }
  .top__mv__img iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 235vh;
    min-width: 100%;
    height: 43vw;
    min-height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .top__mv__text {
    position: relative;
    top: auto;
    left: auto;
    padding-top: 40px;
    height: 67vw;
    background: #F1C868;
    background: -moz-linear-gradient(-45deg, #F1C868 0%, #E8616D 100%);
    background: -webkit-linear-gradient(-45deg, #F1C868 0%, #E8616D 100%);
    background: linear-gradient(135deg, #F1C868 0%, #E8616D 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#be0851", endColorstr="#3d2351",GradientType=1 );
    -moz-transform: none;
    -o-transform: none;
    -ms-transform: none;
    -webkit-transform: none;
    transform: none;
    border-radius: 4px;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .top__mv__text__logo {
    position: absolute;
    top: -10px;
    left: 50%;
    margin: 0;
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .top__mv__text__logo:after {
    display: none;
  }
  .top__mv__text__title {
    font-size: 20px;
  }
  .top__mv__text__description {
    margin: 20px 20px 10px;
    text-align: left;
    font-size: 13px;
    font-weight: bold;
    color: #fff;
  }
  .top__mv__text__description1 {
    color: #fff;
    margin: 0;
  }
  .top__mv .top__mvpre__right {
    padding: 0;
    margin-bottom: 20px;
  }
  .top__mvpre {
    height: auto;
  }
  .top__mvpre #lottie {
    top: auto;
    bottom: 80vw;
    width: 70px;
    height: 70px;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    margin-bottom: -10px;
  }
  .top__mvpre__left {
    position: relative;
    width: 100%;
    order: 1;
  }
  .top__mvpre__left__img {
    height: 80vw;
  }
  .top__mvpre__left__img img {
    object-position: 50% 100%;
  }
  .top__mvpre__right {
    width: 100%;
    order: 0;
  }
  .top__mvpre__right .award_badge {
    width: 18%;
    left: auto;
    right: 20px;
    top: 28px;
  }
  .top__mvpre__right__inner {
    padding: 40px 20px;
    display: block;
    text-align: left;
  }
  .top__mvpre__right__inner .annotation {
    left: 10px;
    bottom: 10px;
    font-size: 10px;
  }
  .top__mvpre__right__inner:after {
    display: none;
  }
  .top__mvpre__right__logo {
    margin-top: 13vw;
    width: 20vw;
    height: 5vw;
  }
  .top__mvpre__right__title {
    text-align: center;
    font-size: 24px;
    line-height: 1.3;
  }
  .top__mvpre__right__description {
    text-align: center;
    margin-bottom: 40px;
    font-size: 11px;
    clear: both;
  }
  .top__mvpre__right__description sup {
    font-size: 8px;
  }
  .top__mvpre__right__description__bottom {
    font-size: 11px;
    text-align: left;
    margin-top: 10px;
    font-weight: 200;
  }
  .top__mvpre__right__subtitle {
    margin-top: 40px;
    text-align: center;
    font-size: 18px;
  }
  .top__mvpre__right__pstxt {
    margin-top: 20px;
    text-align: center;
    font-size: 14px;
  }
  .top__mvpre__right__img2 {
    margin-top: 4vw;
    width: 92%;
    margin-left: -4%;
    height: auto;
  }
  .top__mvpre__right__logo2 {
    left: 75%;
    width: 20%;
  }
  .top__mvpre__right__logo3 {
    top: 26vw;
    left: 75%;
    width: 20%;
  }
  .top__mvpre__right .gradient_btn {
    margin-top: 40px;
    width: 100%;
  }
  .top__company {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .top__company__btn {
    margin-top: 0;
    margin-bottom: 0;
  }
  .top__company__list__wrap {
    width: 3900px;
    padding-bottom: 0;
  }
  .top__company__list__wrap__inner {
    width: 1950px;
  }
  .top__company__logo_wrap {
    max-width: 200px;
    margin: 0;
  }
  .top__company__logo_wrap--long {
    max-width: 280px;
  }
  .top__company__logo_wrap img {
    -moz-transform: scale(0.85);
    -o-transform: scale(0.85);
    -ms-transform: scale(0.85);
    -webkit-transform: scale(0.85);
    transform: scale(0.85);
    max-width: 100%;
  }
  .top__company__title {
    font-size: 24px;
  }
  .top__company .top {
    display: inline;
  }
  .top__company .top .top__company__logo_wrap {
    margin: 0;
    margin-right: 15px;
  }
  .top__company .bottom {
    display: inline;
  }
  .top__company .bottom .top__company__logo_wrap {
    margin-right: 10px;
  }
  .top__company .bottom .top__company__logo_wrap:first-child {
    margin-right: 25px;
  }
  .top__company .bottom .top__company__logo_wrap:nth-of-type(2), .top__company .bottom .top__company__logo_wrap:nth-of-type(3) {
    margin-right: 15px;
  }
  .top__comment {
    padding-top: 40px;
    padding-bottom: 60px;
    margin-bottom: 60px;
  }
  .top__comment .swiper-pagination {
    display: none !important;
  }
  .top__comment__title {
    font-size: 24px;
  }
  .top__comment__swiper {
    max-width: none;
  }
  .top__feature {
    padding: 0 20px;
    margin-bottom: 60px;
  }
  .top__feature__wrap {
    padding: 40px 20px 0px;
  }
  .top__feature__wrap:after {
    background: #F8F8F8;
    bottom: 60px;
  }
  .top__feature__title {
    font-size: 24px;
  }
  .top__feature__cols {
    display: block;
  }
  .top__feature__col {
    width: 100%;
    padding: 0;
    margin-bottom: 40px;
  }
  .top__feature__btn {
    position: relative;
    bottom: -20px;
  }
  .top__feature h3 {
    min-height: 0;
  }
  .top__process__title {
    font-size: 24px;
  }
  .top__process__text {
    font-size: 16px;
  }
  .top__process__date {
    display: none;
  }
  .top__process__row__title {
    float: none;
    width: auto;
    margin: 0 auto;
  }
  .top__process__row__graph {
    position: relative;
    height: 400px;
    margin: 0 auto;
    padding: 0 50px 0 120px;
  }
  .top__process__row.normal {
    padding: 0;
    margin-bottom: 90px;
  }
  .top__process__row.normal .top__process__row__title {
    margin-bottom: 40px;
  }
  .top__process__row.normal .top__process__row__title span {
    width: 100px;
    height: 100px;
    background: #2699FB;
    line-height: 1.4;
    font-size: 21px;
  }
  .top__process__row.normal .all_date {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50px;
  }
  .top__process__row.normal .all_date p {
    top: 50%;
    left: 50%;
    padding: 10px;
    width: 80px;
    background: #fff;
    -moz-transform: translate(-50%, -50%) rotate(90deg);
    -o-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .top__process__row.normal .all_date:before {
    width: auto !important;
    height: 100%;
    left: 5px;
    right: 50%;
    top: 0;
    bottom: 0;
    border-left: none !important;
    border-top: 1px solid #3EA8DE !important;
    border-bottom: 1px solid #3EA8DE !important;
    border-right: 1px solid #3EA8DE !important;
  }
  .top__process__row.normal .first {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    float: none;
    width: auto;
    height: 43%;
    background: #76C0FF;
    border-radius: 4px 4px 0 0;
  }
  .top__process__row.normal .first p {
    width: 100% !important;
    background: none;
    border-radius: 0;
    font-size: 16px;
  }
  .top__process__row.normal .first:after {
    top: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_normal_fukidashi_1_sp.svg) no-repeat center;
  }
  .top__process__row.normal .second {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    float: none;
    width: auto;
    height: 43%;
    background: #50AFFF;
    border-radius: 0;
  }
  .top__process__row.normal .second p {
    width: 100% !important;
    background: none;
    border-radius: 0;
    font-size: 16px;
  }
  .top__process__row.normal .second:before {
    top: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_normal_fukidashi_2_sp.svg) no-repeat center;
  }
  .top__process__row.normal .second:after {
    top: auto;
    bottom: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_normal_fukidashi_3_sp.svg) no-repeat center;
  }
  .top__process__row.normal .third {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    float: none;
    width: auto;
    height: 14%;
    background: #2699FB;
    border-radius: 0;
  }
  .top__process__row.normal .third p {
    width: 100% !important;
    background: none;
    border-radius: 0;
    font-size: 16px;
  }
  .top__process__row.normal .third:before {
    top: 100%;
    left: 0 !important;
    right: 0;
    border: calc((100vw - 210px) / 2) solid #2699FB !important;
    border-top-width: 20px !important;
    border-bottom-color: transparent !important;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
  }
  .top__process__row.normal .third:after {
    top: auto;
    bottom: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_normal_fukidashi_4_sp.svg) no-repeat center;
  }
  .top__process__row.shain {
    padding: 0;
    margin-bottom: 90px;
  }
  .top__process__row.shain .top__process__row__title {
    padding-top: 60px;
    margin-bottom: 40px;
    border-top: 1px solid #B7A2C9;
  }
  .top__process__row.shain .top__process__row__title:before {
    display: none;
  }
  .top__process__row.shain .top__process__row__title:after {
    width: 130px;
    height: 32px;
  }
  .top__process__row.shain .all_date {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 50%;
    width: 50px;
  }
  .top__process__row.shain .all_date p {
    top: 50%;
    left: 50%;
    padding: 10px;
    width: 140px;
    background: #fff;
    -moz-transform: translate(-50%, -50%) rotate(90deg);
    -o-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .top__process__row.shain .all_date:before {
    width: auto !important;
    height: 100%;
    left: 5px;
    right: 50%;
    top: 0;
    bottom: 0;
    border-left: none !important;
    border-top: 1px solid #9D246E !important;
    border-bottom: 1px solid #9D246E !important;
    border-right: 1px solid #9D246E !important;
  }
  .top__process__row.shain .first {
    display: block;
    float: none;
    width: auto;
    height: 50%;
    border-radius: 4px 4px 0 0;
  }
  .top__process__row.shain .first .inner {
    display: block;
    width: 100% !important;
    height: 100% !important;
    background: none;
    padding: 0 !important;
  }
  .top__process__row.shain .first .inner p {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    width: 100%;
    border: none;
    height: 33.333%;
  }
  .top__process__row.shain .first .inner p:nth-of-type(1):after {
    position: absolute;
    top: 0;
    left: auto;
    right: 100%;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_shainex_fukidashi_1_sp.svg) no-repeat center;
  }
  .top__process__row.shain .first .inner p:nth-of-type(2):after {
    position: absolute;
    top: 33.3333%;
    left: auto;
    right: 100%;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_shainex_fukidashi_2_sp.svg) no-repeat center;
  }
  .top__process__row.shain .first .inner p:nth-of-type(3):after {
    position: absolute;
    top: 66.66666%;
    left: auto;
    right: 100%;
    width: 105px;
    height: 52px;
    margin-right: 10px;
    background: url(images/process_shainex_fukidashi_3_sp.svg) no-repeat center;
  }
  .top__process__row.shain .first:after {
    top: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_normal_fukidashi_1_sp.svg) no-repeat center;
  }
  .top__process__row.shain .free_date {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    float: none;
    width: auto;
    height: 50%;
    border-radius: 0;
    border: 1px dashed #9D246E;
  }
  .top__process__row.shain .free_date p {
    border: none;
    width: 100% !important;
    background: none;
    border-radius: 0;
  }
  .top__process__row.shain .free_date:after {
    top: 0;
    right: 100%;
    left: auto;
    width: 105px;
    height: 30px;
    margin-right: 10px;
    background: url(images/process_shainex_fukidashi_4_sp.svg) no-repeat center;
  }
  .top__change {
    margin-bottom: 60px;
  }
  .top__change__title {
    font-size: 24px;
  }
  .top__change__cols {
    display: block;
  }
  .top__change__col {
    width: 100%;
    margin-bottom: 40px;
  }
  .top__application:after {
    top: 67vw;
    width: 70px;
    height: 70px;
    margin-top: -35px;
    margin-left: -35px;
  }
  .top__application__cols {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .top__application__col {
    width: 100%;
    margin-bottom: 10px;
    padding: 0;
  }
  .top__application__col--img {
    order: 0;
    height: 67vw;
  }
  .top__application__col--text {
    order: 1;
  }
  .top__application__title {
    font-size: 24px;
  }
  .top__application__description {
    font-size: 13px;
  }
  .top__news {
    padding-bottom: 80px;
  }
  .top__news__title {
    margin-bottom: 40px;
    font-size: 30px;
  }
  .top__news__list a {
    display: block;
  }
  .top__news__list__date {
    display: inline-block;
    margin-right: 18px;
    vertical-align: top;
  }
  .top__news__list__tag {
    font-size: 10px;
    display: inline-block;
    vertical-align: top;
    padding: 7px 18px;
  }
  .top__news__list__title {
    display: block;
    margin-top: 10px;
  }
  .top__introduction {
    margin-top: 20px;
  }
  .top__introduction__title {
    font-size: 24px;
  }
  .top__introduction__description {
    margin: 0 20px;
  }
  .top__introduction__block {
    width: 100%;
  }
  .top__introduction__block__logos img {
    max-width: 50%;
  }
  .top__introduction__block--private-enterprises .top__introduction__block__logos {
    display: block;
  }
  .top__introduction__block--private-enterprises .top__introduction__block__logos img {
    float: left;
    width: 40%;
    margin: 0 5% 10%;
    height: 15vw;
    object-fit: contain;
  }
  .top__solution__title {
    font-size: 30px;
  }
  .top__solution__description {
    font-size: 16px;
  }
  .top__solution__type {
    display: block;
  }
  .top__solution__type__before {
    width: 100%;
    padding: 40px;
  }
  .top__solution__type__after {
    width: 100%;
    padding: 40px;
  }
  .top__solution__type__arrow {
    margin: 20px auto 40px;
  }
  .top__solution__type__arrow:before {
    border-left-color: transparent;
    border-right: 24px solid transparent;
    border-top-color: #663366;
    border-bottom: 0;
  }
  .top__examples {
    margin-top: 100px;
  }
  .top__examples__title {
    margin-bottom: 40px;
    font-size: 32px;
  }
  .top__examples__cols {
    display: block;
  }
  .top__examples__col {
    width: 100%;
    margin-bottom: 20px;
  }
}
.page-template-index .footer__banner {
  display: none;
}

@media only screen and (max-width: 375px) {
  .top__process__row.shain .first .inner {
    padding: 0 15px;
  }
  .top__process__row.shain .first .inner p {
    font-size: 16px;
  }
}
.about {
  padding: 0 0 20px;
  overflow-x: hidden;
}
.about .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/about_bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/about_bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/about_bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.about__right {
  padding: 60px 0;
}
.about__right__img {
  text-align: center;
}
.about__right__img img {
  float: right;
  max-width: 60vw;
}
.about__right__text {
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 100%;
  max-width: 420px;
  margin: 0 auto;
}
.about__right__title {
  position: relative;
  width: 100%;
  padding-left: 80px;
  padding-bottom: 35px;
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #53257D;
}
.about__right__title:before {
  content: "";
  position: absolute;
  top: 30%;
  top: calc(50% - 17px);
  left: 0;
  display: block;
  width: 60px;
  height: 60px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: translateY(-50%);
}
.about__right__title--time:before {
  background-image: url(images/about_time_icon.svg);
}
.about__right__title--method:before {
  background-image: url(images/about_method_icon.svg);
}
.about__right__title--free:before {
  background-image: url(images/about_free_icon_new.svg);
}
.about__right__title--ip:before {
  background-image: url(images/about_ip_icon.svg);
}
.about__right__description {
  line-height: 1.8;
  width: 100%;
  font-size: 16px;
  font-weight: 500;
}
.about__right__description span {
  display: block;
  margin-top: 10px;
  font-size: 14px;
}
.about__right__link {
  line-height: 2;
  margin-top: 30px;
  width: 100%;
  text-align: left;
}
.about__right__link a {
  position: relative;
  display: inline-block;
  padding-right: 15px;
  margin-bottom: 10px;
  color: #9D246E;
}
.about__right__link a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 6px;
  height: 10px;
  background: url(images/arrow-right-purple-wine.svg) no-repeat center;
  background-size: contain;
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.about__left {
  padding: 60px 0;
}
.about__left__img {
  text-align: center;
}
.about__left__img img {
  max-width: 60vw;
  height: auto;
}
.about__left__text {
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  height: 100%;
  max-width: 420px;
  margin: 0 auto;
}
.about__left__title {
  position: relative;
  width: 100%;
  padding-left: 80px;
  padding-bottom: 35px;
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #53257D;
}
.about__left__title:before {
  content: "";
  position: absolute;
  top: 30%;
  top: calc(50% - 17px);
  left: 0;
  display: block;
  width: 60px;
  height: 60px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: translateY(-50%);
}
.about__left__title--cost:before {
  background-image: url(images/about_cost_icon.svg);
}
.about__left__title--text:before {
  background-image: url(images/about_text_icon.svg);
}
.about__left__title--manage:before {
  background-image: url(images/about_manage_icon.svg);
}
.about__left__description {
  line-height: 1.8;
  width: 100%;
  font-size: 16px;
  font-weight: 500;
}
.about__left__description span {
  display: block;
  margin-top: 10px;
  font-size: 14px;
}
.about__left__link {
  line-height: 2;
  margin-top: 30px;
  width: 100%;
  text-align: left;
}
.about__left__link a {
  position: relative;
  display: inline-block;
  padding-right: 15px;
  margin-bottom: 10px;
  color: #9D246E;
}
.about__left__link a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 6px;
  height: 10px;
  background: url(images/arrow-right-purple-wine.svg) no-repeat center;
  background-size: contain;
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.about__introduction {
  margin: 120px auto 60px;
  text-align: center;
}
.about__introduction__title {
  font-size: 40px;
  font-weight: bold;
}
.about__introduction__description {
  font-size: 13px;
  max-width: 720px;
  margin: 0 auto;
}
.about__plan__wrap {
  max-width: 1100px;
}
.about__plan__cols {
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
}
.about__plan__col {
  text-align: center;
  vertical-align: middle;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  background: #fff;
  width: 32%;
  padding-bottom: 40px;
}
.about__plan__col--moviecheck {
  position: relative;
  z-index: 1;
  width: 36%;
  padding-bottom: 60px;
  margin-left: -1%;
  margin-right: -1%;
}
.about__plan__col--moviecheck .about__plan__col__top {
  background: url(images/fee_col_bg2.png) no-repeat center top;
  background-size: 100% 100%;
}
.about__plan__col--moviecheck .about__plan__col__bottom {
  padding: 0 50px;
}
.about__plan__col--standart .about__plan__col__top {
  background: url(images/fee_col_bg3.png) no-repeat center top;
  background-size: 100% 100%;
}
.about__plan__col__top {
  position: relative;
  padding: 40px 20px 60px;
  background: url(images/fee_col_bg1.png) no-repeat center top;
  background-size: 100% 100%;
  color: #fff;
}
.about__plan__col__middle {
  margin-top: 30px;
  margin-bottom: 50px;
}
.about__plan__col__bottom {
  padding: 0 30px;
}
.about__plan__logo {
  display: block;
  width: 68px;
  height: 18px;
  margin: 0 auto 10px;
  font-size: 0;
  color: transparent;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
.about__plan__name {
  font-size: 24px;
  font-weight: bold;
}
.about__plan__text {
  font-size: 14px;
}
.about__plan__price {
  margin-bottom: 20px;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  color: #E2335C;
}
.about__plan__price span {
  font-size: 48px;
}
.about__plan__price-text {
  margin-bottom: 10px;
  height: 40px;
  font-size: 12px;
}
.about__plan__case {
  font-size: 18px;
  font-weight: bold;
}
.about__plan__btn {
  margin-bottom: 30px;
}
.about__plan__link a {
  font-size: 12px;
  font-weight: bold;
  color: #9D246E;
}
.about__plan__link a:after {
  content: "";
  display: inline-block;
  margin-left: 5px;
  width: 4px;
  height: 8px;
  background: url(images/arrow-right-purple-wine.svg) no-repeat center;
  background-size: contain;
}
.about__plan__row {
  padding: 15px 0;
  border-bottom: 1px solid #BBBBBB;
}
.about__plan__row:after {
  content: "";
  display: block;
  clear: both;
}
.about__plan__row__title {
  width: 50%;
  float: left;
  text-align: left;
  font-size: 12px;
}
.about__plan__row__text {
  margin-left: 50%;
  font-size: 12px;
}
.about__plan__row__text span {
  font-size: 16px;
  font-weight: bold;
}
.about__plan__row__text .red {
  color: #E2335C;
}
.about__plan__row__text .circle {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  border: 2px solid #53257D;
  border-radius: 100%;
}
.about__plan__row__text .cross {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
}
.about__plan__row__text .cross:before, .about__plan__row__text .cross:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 25px;
  height: 2px;
  background: #53257D;
  border-radius: 4px;
}
.about__plan__row__text .cross:before {
  -moz-transform: translate(-50%, -50%) rotate(-45deg);
  -o-transform: translate(-50%, -50%) rotate(-45deg);
  -ms-transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.about__plan__row__text .cross:after {
  -moz-transform: translate(-50%, -50%) rotate(45deg);
  -o-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.about__plan__pstext {
  text-align: right;
  font-size: 10px;
  margin-top: 10px;
}
.about__plan__btns {
  margin-top: 20px;
  text-align: center;
}
.about__plan__btns a {
  margin: 0 10px 40px;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .about .page_top .wrap {
    background: url(images/about_bg_tb.svg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (min-width: 737px) {
  .about__right__img {
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    -moz-transform: translateX(-5vw);
    -o-transform: translateX(-5vw);
    -ms-transform: translateX(-5vw);
    -webkit-transform: translateX(-5vw);
    transform: translateX(-5vw);
  }
  .about__right.on .about__right__img {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .about__left__img {
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    -moz-transform: translateX(5vw);
    -o-transform: translateX(5vw);
    -ms-transform: translateX(5vw);
    -webkit-transform: translateX(5vw);
    transform: translateX(5vw);
  }
  .about__left.on .about__left__img {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .about__plan__col--moviecheck {
    -moz-transform: scale(0.95);
    -o-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  .about__plan.on .about__plan__col--moviecheck {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
}
@media only screen and (max-width: 736px) {
  .about {
    width: 100%;
    overflow: hidden;
  }
  .about .page_top .wrap {
    background: url(images/about_bg_sp.svg) no-repeat center bottom;
    background-size: cover;
  }
  .about__right {
    overflow: hidden;
  }
  .about__right .cols {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .about__right .cols .col:first-child {
    margin-bottom: 0;
  }
  .about__right .col-5 {
    width: auto;
    margin-bottom: 20px;
  }
  .about__right__img img {
    margin-left: -20vw;
    max-width: 120vw;
    float: none;
  }
  .about__right__title {
    padding-left: 75px;
    padding-bottom: 0;
    border: none;
  }
  .about__right__title:before {
    width: 50px;
    height: 50px;
  }
  .about__right__description {
    padding-left: 75px;
  }
  .about__right__link {
    padding-left: 75px;
  }
  .about__left {
    overflow: hidden;
  }
  .about__left .cols {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .about__left .col-5 {
    width: 100%;
    margin-bottom: 20px;
    order: 1;
  }
  .about__left .col-5:last-child {
    order: 0;
  }
  .about__left__img img {
    margin-left: -20vw;
    max-width: 120vw;
  }
  .about__left__title {
    padding-left: 70px;
    padding-bottom: 0;
    border: none;
  }
  .about__left__title:before {
    width: 50px;
    height: 50px;
  }
  .about__left__description {
    padding-left: 75px;
  }
  .about__left__link {
    padding-left: 75px;
  }
  .about__introduction {
    margin: 60px auto 40px;
    padding: 0 20px;
  }
  .about__introduction__title {
    margin-bottom: 20px;
    font-size: 32px;
  }
  .about__introduction__description {
    font-size: 16px;
  }
  .about__plan__cols {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .about__plan__col {
    width: 100%;
    margin-bottom: 40px;
  }
  .about__plan__col--moviecheck {
    order: 0;
  }
  .about__plan__col--moviecheck .fee__plan__col__bottom {
    padding: 0 30px;
  }
  .about__plan__col--light {
    order: 1;
  }
  .about__plan__col--standart {
    order: 2;
  }
  .about__right.time .about__right__img img {
    margin: 0 auto;
    max-width: 80%;
  }
  .about__right.free .about__right__img img {
    margin: 0 auto;
    max-width: 80%;
  }
}
.faq .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/faq_bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/faq_bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/faq_bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.faq__type {
  margin: 60px auto;
}
.faq__type__wrap {
  max-width: 1020px;
  padding: 0;
}
.faq__type__btns {
  font-size: 0;
}
.faq__type__btns__btn {
  width: 50%;
  display: inline-block;
  padding: 0 10px;
}
.faq__type__btns a.purple {
  width: 100%;
  text-align: center;
}
.faq__type__btns a.purple.on, .faq__type__btns a.purple:hover {
  color: #fff;
  background: #E7287C;
  border-color: #E7287C;
}
.faq__examinee__sup__wrap {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  margin-top: 60px;
  max-width: 1000px;
  padding: 40px;
  border: 1px solid rgba(79, 125, 161, 0.18);
  border-radius: 4px;
}
.faq__category {
  text-align: center;
  margin: 60px auto 0;
}
.faq__category__title {
  font-size: 20px;
  font-weight: bold;
}
.faq__category__list {
  font-size: 0;
}
.faq__category__item {
  display: inline-block;
  vertical-align: text-bottom;
  padding: 5px 25px;
  border-right: 1px solid #B59BCC;
}
.faq__category__item a {
  font-size: 14px;
  font-weight: bold;
  color: #9D246E;
}
.faq__category__item:last-child {
  border-right: none;
}
.faq__section {
  padding-top: 120px;
}
.faq__title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
}
.faq__list {
  max-width: 1000px;
  margin: 0 auto;
  border-bottom: 1px solid #F1E9F8;
}
.faq__item {
  border-top: 1px solid #F1E9F8;
  padding: 20px 15px;
}
.faq__q {
  cursor: pointer;
  position: relative;
  padding-left: 35px;
  padding-right: 25px;
}
.faq__q:before {
  position: absolute;
  content: "Q. ";
  top: 0;
  left: 0;
  font-size: 16px;
  font-weight: bold;
}
.faq__q:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 5px;
  width: 20px;
  height: 10px;
  margin-top: -5px;
  background: url(images/arrow-down-purple.svg) no-repeat center;
  background-size: contain;
  -moz-transition: transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  -webkit-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
}
.faq__q h4 {
  font-size: 16px;
  font-weight: bold;
}
.faq__q.on:after {
  -moz-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.faq__a {
  display: none;
  position: relative;
  padding-top: 20px;
  padding-left: 35px;
}
.faq__a:before {
  position: absolute;
  content: "A. ";
  top: 20px;
  left: 0;
  font-size: 16px;
  font-weight: bold;
}
.faq__a p {
  margin-bottom: 20px;
  line-height: 1.8;
  font-size: 16px;
}
.faq__a strong {
  font-weight: bold;
}
.faq__a a {
  font-weight: bold;
  text-decoration: underline;
}
.faq__a .btn_wrap {
  margin-bottom: 40px;
}
.faq__a .btn_wrap a {
  margin-right: 20px;
  text-decoration: none;
}

.answer__errwrap {
  position: relative;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-align-content: flex-start;
  align-content: flex-start;
  line-height: 1.8;
}
.answer__errwrap img {
  max-width: 100%;
  margin-bottom: 20px;
}
.answer__errwrap:before {
  content: "→";
  position: absolute;
  top: 40%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.answer__errwrap .red {
  color: #E2335C;
  font-weight: bold;
}
.answer__err01 {
  width: 45%;
}
.answer__err02 {
  width: 45%;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .faq .page_top .wrap {
    background: url(images/faq_bg_tb.svg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .faq .page_top .wrap {
    background: url(images/faq_bg_sp.svg) no-repeat center;
    background-size: cover;
  }
  .faq__category__item {
    padding: 10px;
  }
  .faq__category__item a {
    font-size: 12px;
  }
  .faq__item {
    padding-right: 0;
    padding-left: 0;
  }
  .faq__q {
    padding-right: 0;
    padding-left: 25px;
  }
  .faq__q h4 {
    padding-right: 0;
    padding-left: 0;
  }
  .faq__q:after {
    display: none;
  }
  .faq__a {
    padding-left: 25px;
  }
  .faq__a .btn_wrap a {
    display: block;
    text-align: center;
    width: 100%;
    margin: 0 auto 20px;
  }
  .faq__examinee__sup__btn {
    margin-top: 15px;
  }
  .answer__errwrap {
    position: relative;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-align-content: flex-start;
    align-content: flex-start;
    line-height: 1.8;
  }
  .answer__errwrap img {
    max-width: 100%;
    margin-bottom: 20px;
  }
  .answer__errwrap:before {
    display: none;
  }
  .answer__err01 {
    width: 100%;
    margin-bottom: 60px;
  }
  .answer__err01:after {
    content: "↓";
    display: block;
    margin: 20px auto 0;
    text-align: center;
  }
  .answer__err02 {
    width: 100%;
  }
}
.fee {
  padding-bottom: 10px;
}
.fee .page_top {
  margin-bottom: 80px;
}
.fee .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/fee_bg2206.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/fee_bg2206.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/fee_bg2206.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.fee__introduction {
  padding-top: 120px;
  margin: 0 auto 60px;
  text-align: center;
  position: relative;
}
.fee__introduction__title {
  font-size: 40px;
  font-weight: bold;
  z-index: 1;
  position: relative;
}
.fee__introduction__subtitle {
  font-size: 24px;
  font-weight: bold;
  z-index: 1;
  position: relative;
}
.fee__introduction__subtitle + .fee__introduction__description {
  font-size: 16px;
}
.fee__introduction__description {
  font-size: 13px;
  max-width: 720px;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
.fee__introduction:after {
  content: "";
  width: 100%;
  height: 648px;
  background-image: url(images/bg_top_fee.png);
  background-size: cover;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: darken;
}
.fee__introduction:first-child {
  padding-top: 40px;
}
.fee__description {
  margin: 135px auto 80px;
}
.fee__description p {
  text-align: center;
  font-size: 24px;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .fee__description p {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.fee__plan__wrap {
  z-index: 1;
  position: relative;
}
.fee__plan__cols {
  margin-top: 30px;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
  transition: all 1.5s ease 1.5s;
}
.fee__plan__col {
  text-align: center;
  vertical-align: middle;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 0 20px 0 rgba(83, 37, 125, 0.2);
  background: #fff;
  width: 33.3333%;
  padding-bottom: 80px;
  opacity: 0;
  transform: translateY(100px);
}
.fee__plan__col:nth-of-type(1) {
  transition: all 1.5s ease;
}
.fee__plan__col:nth-of-type(2) {
  transition: all 1.5s ease 0.5s;
}
.fee__plan__col:nth-of-type(3) {
  transition: all 1.5s ease 0.9s;
}
.fee__plan__col sub,
.fee__plan__col sup {
  margin-left: 0;
  margin-right: -16px;
  vertical-align: top;
  color: #53257D;
  font-size: 10px;
}
.fee__plan__col--standart {
  position: relative;
  z-index: 1;
  margin-top: -20px;
  margin-bottom: 20px;
  box-shadow: 0 0 30px 0 rgba(83, 37, 125, 0.1);
}
.fee__plan__col--standart .fee__plan__col__top {
  background: -moz-linear-gradient(-45deg, #6c1a51 0%, #3d2351 39%);
  background: -webkit-linear-gradient(-45deg, #6c1a51 0%, #3d2351 39%);
  background: linear-gradient(135deg, #6c1a51 0%, #3d2351 39%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#df0251", endColorstr="#3d2351",GradientType=1 );
}
.fee__plan__col--light .fee__plan__col__top {
  background: -moz-linear-gradient(-45deg, #E47C8B 0%, #DB516A 100%);
  background: -webkit-linear-gradient(-45deg, #E47C8B 0%, #DB516A 100%);
  background: linear-gradient(135deg, #E47C8B 0%, #DB516A 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#E47C8B", endColorstr="#DB516A",GradientType=1 );
}
.fee__plan__col__top {
  position: relative;
  padding: 40px 20px;
  background: -moz-linear-gradient(-45deg, #E8BE74 0%, #CB636F 100%);
  background: -webkit-linear-gradient(-45deg, #E8BE74 0%, #CB636F 100%);
  background: linear-gradient(135deg, #E8BE74 0%, #CB636F 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#E8BE74", endColorstr="#CB636F",GradientType=1 );
  color: #fff;
  border-radius: 4px;
  /*
  &:after {
    content: "";
    position: absolute;
    bottom: 20px;
    left: 50%;
    display: block;
    width: 14px;
    height: 14px;
    margin-left: -8px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    @include rotate(-45);
  }
  */
}
.fee__plan__col__middle {
  margin-top: 30px;
  margin-bottom: 50px;
}
.fee__plan__col__middle .fee__plan__case {
  display: none;
}
.fee__plan__col__bottom {
  padding: 0 30px;
}
.fee__plan__col__bottom .fee__plan__btn {
  margin: 20px auto 0;
}
.fee__plan__logo {
  display: block;
  width: 80px;
  height: 18px;
  margin: 0 auto 10px;
  font-size: 0;
  color: transparent;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
.fee__plan__name {
  margin-bottom: 10px;
  font-size: 30px;
  line-height: 1.3;
  font-weight: bold;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .fee__plan__name {
    font-size: 20px;
  }
}
.fee__plan__text {
  font-size: 14px;
}
.fee__plan__text sub {
  color: #fff;
}
.fee__plan__price {
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  color: #E2335C;
}
.fee__plan__price span {
  font-size: 48px;
}
.fee__plan__price-text {
  font-size: 12px;
  color: #E2335C;
  margin-bottom: 20px;
}
.fee__plan__case {
  margin-bottom: 40px;
  font-size: 18px;
  min-height: 58px;
  font-weight: bold;
}
.fee__plan__btn {
  margin-bottom: 30px;
}
.fee__plan__link a {
  font-size: 12px;
  font-weight: bold;
  color: #9D246E;
}
.fee__plan__link a:after {
  content: "";
  display: inline-block;
  margin-left: 5px;
  width: 4px;
  height: 8px;
  background: url(images/arrow-right-purple-wine.svg) no-repeat center;
  background-size: contain;
}
.fee__plan__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  padding: 12px 0;
  border-bottom: 1px solid #E2D6EE;
}
.fee__plan__row__title {
  padding: 3px 0;
  width: 35%;
  text-align: left;
  font-size: 14px;
}
.fee__plan__row__text {
  padding: 3px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 65%;
  font-size: 16px;
}
.fee__plan__row__text span {
  font-size: 24px;
  font-weight: bold;
}
.fee__plan__row__text .middle {
  font-weight: 16px;
  font-weight: bold;
}
.fee__plan__row__text .red {
  color: #E2335C;
  font-size: 28px;
}
.fee__plan__row__text .circle {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  border: 2px solid #53257D;
  border-radius: 100%;
}
.fee__plan__row__text .circle .fl_sub {
  position: absolute;
  right: -25px;
  top: -5px;
}
.fee__plan__row__text .cross {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 12px;
}
.fee__plan__row__text .cross:before, .fee__plan__row__text .cross:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 18px;
  height: 2px;
  background: #53257D;
  border-radius: 4px;
}
.fee__plan__row__text .cross:before {
  -moz-transform: translate(-50%, -50%) rotate(-45deg);
  -o-transform: translate(-50%, -50%) rotate(-45deg);
  -ms-transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.fee__plan__row__text .cross:after {
  -moz-transform: translate(-50%, -50%) rotate(45deg);
  -o-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.fee__plan__pstext {
  text-align: right;
  font-size: 14px;
  margin-top: 10px;
  margin-top: 60px;
  margin-bottom: 10px;
}
.fee__plan.on .fee__plan__col {
  opacity: 1;
  transform: translateY(0);
}
.fee__link {
  margin: 60px auto;
  padding: 0 20px;
  text-align: center;
}
.fee__link a {
  font-size: 16px;
  color: #E7287C;
}
.fee__link a span {
  text-decoration: underline;
  font-weight: bold;
}
.fee__link--top p {
  font-size: 18px;
  font-weight: bold;
}
.fee__btn {
  margin: 40px auto;
  padding: 0 20px;
  text-align: center;
}
.fee__btn a {
  margin: 0 10px;
  min-width: 200px;
}
.fee__btn a:first-child:before {
  content: "";
  display: inline-block;
  vertical-align: text-bottom;
  margin-right: 10px;
  width: 14px;
  height: 21px;
  background: url(images/pdf_icon.svg) no-repeat center;
  background-size: contain;
}

.top .fee__plan {
  background-color: #F8F8F8;
}
.top .fee__plan__pstext {
  margin-bottom: 0;
}
.top .fee__btn {
  margin: 0;
  padding: 40px 0 100px;
  background-color: #F8F8F8;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .fee .page_top .wrap {
    background: url(images/fee_bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
  .fee__plan__name {
    font-size: 20px;
  }
  .fee__plan__row__text {
    font-size: 14px;
  }
  .fee__plan__row__text span {
    font-size: 16px;
  }
  .fee__plan__row__text .red {
    font-size: 18px;
  }
}
@media only screen and (min-width: 737px) {
  .fee__plan__row:first-child {
    opacity: 0;
  }
  .fee__plan__col--standart {
    overflow: visible;
  }
  .fee__plan__col--standart .fee__plan__row:first-child {
    border-top: 1px solid #E2D6EE;
    opacity: 1;
    margin: 0 -126%;
    background-color: #fff;
    justify-content: center;
    gap: 40px;
  }
  .fee__plan__col--standart .fee__plan__row:first-child .fee__plan__row__title {
    width: auto;
    font-size: 20px;
  }
  .fee__plan__col--standart .fee__plan__row:first-child .fee__plan__row__text {
    width: auto;
  }
  .fee__plan__col--standart .fee__plan__row:first-child .fee__plan__row__text br {
    display: none;
  }
}
@media only screen and (max-width: 736px) {
  .fee .page_top .wrap {
    background: url(images/fee_bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .fee__introduction {
    margin: 60px auto 40px;
    padding: 0 20px;
  }
  .fee__introduction__title {
    margin-bottom: 20px;
    font-size: 32px;
  }
  .fee__introduction__description {
    font-size: 16px;
  }
  .fee__description {
    margin-top: 70px;
    padding: 0 20px;
  }
  .fee__description p {
    font-size: 18px;
  }
  .fee__plan__cols {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
    background: none;
    box-shadow: none;
  }
  .fee__plan__col {
    width: 100%;
    margin-bottom: 40px;
    box-shadow: 12px 12px 24px 0 rgba(61, 34, 81, 0.32);
  }
  .fee__plan__col--standart {
    order: 0;
  }
  .fee__plan__col--standart .fee__plan__col__bottom {
    padding: 0 30px;
  }
  .fee__plan__col--light {
    order: 2;
  }
  .fee__plan__col--quick {
    order: 1;
  }
  .fee__plan__row__title {
    font-size: 12px;
  }
  .fee__plan__row__text {
    font-size: 12px;
  }
  .fee__plan__row__text span {
    font-size: 18px;
  }
  .fee__plan__row__text .red {
    font-size: 18px;
  }
  .fee__plan__pstext {
    width: 120%;
    margin-left: -20%;
    transform-origin: 100% 100%;
    transform: scale(0.8);
  }
}
.service {
  padding-bottom: 20px;
}
.service .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/service_bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/service_bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/service_bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.service__plan {
  margin-top: 80px;
  margin-bottom: 180px;
}
.service__plan__cols {
  position: relative;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
}
.service__plan__col {
  position: relative;
  width: 50%;
}
.service__plan__col--text {
  padding: 70px 30px;
}
.service__plan__img img {
  max-width: 100%;
  height: auto;
}
.service__plan__title {
  padding-bottom: 30px;
  margin-bottom: 30px;
  border-bottom: 1px solid #fff;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
}
.service__plan__title__logo {
  display: inline-block;
  vertical-align: middle;
  width: 68px;
  height: 18px;
  margin-right: 20px;
  font-size: 0;
  color: transparent;
  background: url(images/logo_wh.svg) no-repeat center;
  background-size: contain;
}
.service__plan__title span {
  display: inline-block;
  font-size: 16px;
  line-height: 1.4;
}
.service__plan__text {
  line-height: 1.8;
  font-size: 16px;
  max-width: 480px;
  color: #fff;
}
.service__plan__text sub {
  font-size: 10px;
  vertical-align: top;
}
.service__plan__list {
  margin-top: 45px;
  font-size: 0;
}
.service__plan__item {
  display: inline-block;
  vertical-align: top;
  width: 33.333333%;
  text-align: center;
  padding: 8px 15px 8px 37px;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .service__plan__item {
    width: 49%;
  }
}
.service__plan__item__inner {
  position: relative;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  padding: 35px 35px 35px 60px;
  border: 1px solid #E1D0F0;
  border-radius: 20px;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .service__plan__item__inner {
    padding: 35px 35px 35px 50px;
  }
}
.service__plan__item__icon {
  position: absolute;
  left: -37px;
  top: 50%;
  width: 74px;
  height: 74px;
  margin-top: -37px;
  border-radius: 100%;
  border: 1px solid #53257D;
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
}
.service__plan__item__icon--time {
  background-image: url(images/time_icon.svg);
}
.service__plan__item__icon--free {
  background-image: url(images/free_icon.svg);
}
.service__plan__item__icon--watch {
  background-image: url(images/watch_icon.svg);
}
.service__plan__item__icon--movie {
  background-image: url(images/movie_icon.svg);
}
.service__plan__item__icon--ai {
  background-image: url(images/ai_icon.svg);
}
.service__plan__item__icon--quest {
  background-image: url(images/quest_icon.svg);
}
.service__plan__item__icon--date {
  background-image: url(images/date_icon.svg);
}
.service__plan__item__icon--comment {
  background-image: url(images/comment_icon.svg);
}
.service__plan__item__icon--text {
  background-image: url(images/text_icon.svg);
}
.service__plan__item__icon--result {
  background-image: url(images/result_icon.svg);
}
.service__plan__item__title {
  position: relative;
  height: 50px;
  line-height: 50px;
  font-size: 16px;
  font-weight: bold;
  color: #9D246E;
}
.service__plan__item__title span {
  line-height: 1.4;
  display: inline-block;
  vertical-align: middle;
}
.service__plan__item__title .fl_sub {
  position: absolute;
  right: -10px;
  top: -5px;
  font-size: 10px;
}
@media only screen and (max-width: 736px) {
  .service__plan__item__title .fl_sub {
    position: relative;
    right: auto;
  }
}
.service__plan__item__text {
  font-size: 16px;
  font-weight: bold;
  position: relative;
}
.service__plan__item__text .fl_wrap {
  position: relative;
}
.service__plan__item__text .fl_sub {
  position: absolute;
  right: -20px;
  top: -5px;
  font-size: 10px;
}
@media only screen and (max-width: 736px) {
  .service__plan__item__text .fl_sub {
    position: relative;
    right: auto;
  }
}
.service__plan__item__text .circle {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  border: 1px solid #53257D;
  border-radius: 100%;
  position: relative;
}
.service__plan__item__text .cross {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
}
.service__plan__item__text .cross:before, .service__plan__item__text .cross:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  height: 2px;
  width: 18px;
  background: #53257D;
  border-radius: 4px;
}
.service__plan__item__text .cross:before {
  -moz-transform: translate(-50%, -50%) rotate(-45deg);
  -o-transform: translate(-50%, -50%) rotate(-45deg);
  -ms-transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.service__plan__item__text .cross:after {
  -moz-transform: translate(-50%, -50%) rotate(45deg);
  -o-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.service__plan__item__text .red {
  font-size: 12px;
}
.service__plan__btns {
  margin-top: 40px;
  text-align: center;
}
.service__plan__btns a {
  margin: 0 20px;
  padding: 15px 20px;
  min-width: 260px;
  text-align: center;
}
.service__plan--standard .service__plan__cols:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 40%;
  display: block;
  background: #be0851;
  background: -moz-linear-gradient(-45deg, #be0851 0%, #3d2351 100%);
  background: -webkit-linear-gradient(-45deg, #be0851 0%, #3d2351 100%);
  background: linear-gradient(135deg, #be0851 0%, #3d2351 100%);
  border-radius: 4px;
}
.service__plan--quick .service__plan__cols:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 40%;
  display: block;
  background: #ed9b6a;
  background: -moz-linear-gradient(-45deg, #F1C868 6%, #e8616d 100%);
  background: -webkit-linear-gradient(-45deg, #F1C868 6%, #e8616d 100%);
  background: linear-gradient(135deg, #F1C868 6%, #e8616d 100%);
  border-radius: 4px;
}
.service__plan--light .service__plan__cols:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 40%;
  display: block;
  background: #ed9b6a;
  background: -moz-linear-gradient(-45deg, #F795A0 6%, #E15177 100%);
  background: -webkit-linear-gradient(-45deg, #F795A0 6%, #E15177 100%);
  background: linear-gradient(135deg, #F795A0 6%, #E15177 100%);
  border-radius: 4px;
}

@media only screen and (min-width: 737px) {
  .service__plan__col--text {
    -moz-transform: translateX(-5vw);
    -o-transform: translateX(-5vw);
    -ms-transform: translateX(-5vw);
    -webkit-transform: translateX(-5vw);
    transform: translateX(-5vw);
    -moz-transition: all 2.5s ease;
    -o-transition: all 2.5s ease;
    -webkit-transition: all 2.5s ease;
    transition: all 2.5s ease;
  }
  .service__plan__img {
    -moz-transform: translateX(5vw);
    -o-transform: translateX(5vw);
    -ms-transform: translateX(5vw);
    -webkit-transform: translateX(5vw);
    transform: translateX(5vw);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
  }
  .service__plan__cols:before {
    -moz-transform: translateX(-5vw);
    -o-transform: translateX(-5vw);
    -ms-transform: translateX(-5vw);
    -webkit-transform: translateX(-5vw);
    transform: translateX(-5vw);
    -moz-transition: all 2s ease;
    -o-transition: all 2s ease;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
  }
  .service__plan__cols.on:before {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .service__plan__cols.on .service__plan__col--text {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .service__plan__cols.on .service__plan__img {
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .service__plan__list.on .service__plan__item__inner {
    -webkit-animation: shadow_fade 1s linear;
    -moz-animation: shadow_fade 1s linear;
    -ms-animation: shadow_fade 1s linear;
    -o-animation: shadow_fade 1s linear;
    animation: shadow_fade 1s linear;
  }
  .service__plan__list.on .service__plan__item:nth-of-type(2) .service__plan__item__inner, .service__plan__list.on .service__plan__item:nth-of-type(5) .service__plan__item__inner, .service__plan__list.on .service__plan__item:nth-of-type(8) .service__plan__item__inner {
    -webkit-animation: shadow_fade 1s linear 0.5s;
    -moz-animation: shadow_fade 1s linear 0.5s;
    -ms-animation: shadow_fade 1s linear 0.5s;
    -o-animation: shadow_fade 1s linear 0.5s;
    animation: shadow_fade 1s linear 0.5s;
  }
  .service__plan__list.on .service__plan__item:nth-of-type(3) .service__plan__item__inner, .service__plan__list.on .service__plan__item:nth-of-type(6) .service__plan__item__inner, .service__plan__list.on .service__plan__item:nth-of-type(9) .service__plan__item__inner {
    -webkit-animation: shadow_fade 1s linear 1s;
    -moz-animation: shadow_fade 1s linear 1s;
    -ms-animation: shadow_fade 1s linear 1s;
    -o-animation: shadow_fade 1s linear 1s;
    animation: shadow_fade 1s linear 1s;
  }
}
@keyframes shadow_fade {
  0% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  50% {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
}
@-moz-keyframes shadow_fade {
  0% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  50% {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
}
@-webkit-keyframes shadow_fade {
  0% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  50% {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
}
@-o-keyframes shadow_fade {
  0% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  50% {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
}
@-ms-keyframes shadow_fade {
  0% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
  50% {
    box-shadow: 0 0 40px 0 rgba(83, 37, 125, 0.2);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(83, 37, 125, 0.2);
  }
}
@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .service .page_top .wrap {
    background: url(images/service_bg_tb.svg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .service .page_top .wrap {
    background: url(images/service_bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .service__plan {
    margin-top: 80px;
    margin-bottom: 120px;
  }
  .service__plan__cols {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  .service__plan__col {
    margin-bottom: 20px;
    width: 100%;
  }
  .service__plan__col--text {
    padding: 40px 20px 20px;
  }
  .service__plan__title {
    text-align: center;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .service__plan__title__logo {
    display: block;
    margin: 0 auto;
    width: 80px;
    height: 20px;
  }
  .service__plan__text {
    font-size: 16px;
    max-width: 480px;
    text-align: center;
  }
  .service__plan__list {
    margin-top: 25px;
    font-size: 0;
  }
  .service__plan__item {
    padding-left: 36px;
    display: block;
    width: auto;
  }
  .service__plan__item__inner {
    display: flex;
    padding: 30px 20px 30px 38px;
    border-radius: 20px;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-align-content: center;
    align-content: center;
  }
  .service__plan__item__icon {
    position: absolute;
    top: 50%;
    left: -38px;
    width: 76px;
    height: 76px;
    margin-top: -36px;
    margin-left: auto;
  }
  .service__plan__item__title {
    margin: 0;
    width: 50%;
  }
  .service__plan__item__text {
    width: 50%;
  }
  .service__plan__btns {
    margin-top: 40px;
    text-align: center;
  }
  .service__plan__btns a {
    width: 220px;
    padding: 15px;
    margin: 0 auto 20px;
  }
  .service__plan--quick .service__plan__cols:before {
    right: 0;
  }
  .service__plan--light .service__plan__cols:before, .service__plan--standard .service__plan__cols:before, .service__plan--moviecheck .service__plan__cols:before {
    bottom: 35vw;
    right: 0;
  }
}
.case-study {
  padding-bottom: 10px;
}
.case-study .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/case_study/bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/case_study/bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/case_study/bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.case-study__description {
  text-align: center;
  margin: 60px auto;
}
.case-study .case-study-search__select {
  display: flex;
  justify-content: space-between;
  max-width: 764px;
  width: 100%;
  margin: auto;
}
@media only screen and (max-width: 428px) {
  .case-study .case-study-search__select {
    display: block;
  }
}
.case-study .case-study-search__select__close {
  width: 20px;
  margin: 0 30px;
}
@media only screen and (max-width: 428px) {
  .case-study .case-study-search__select__close {
    display: none;
  }
}
.case-study .case-study-search__select__icon {
  position: absolute;
  width: 9px;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}
.case-study .case-study-search__select__wrap {
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 428px) {
  .case-study .case-study-search__select__wrap {
    width: 100%;
    margin-bottom: 30px;
  }
}
.case-study .case-study-search__select__wrap select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 20px;
  font-weight: 200;
  border: 1px solid #663366;
  border-radius: 5px;
  padding: 14px;
  color: #663366;
}
.case-study .case-study-search__select__btn {
  display: block;
  width: 178px;
  height: 52px;
  line-height: 52px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #B50C50;
  border-radius: 4px;
  margin-left: 30px;
  cursor: pointer;
  transition: all 0.4s ease;
}
.case-study .case-study-search__select__btn:hover {
  background-color: #3D2351;
}
@media only screen and (max-width: 428px) {
  .case-study .case-study-search__select__btn {
    margin: auto;
  }
}
.case-study .case-study-search {
  padding: 0 20px;
}
.case-study .case-study-search h2 {
  text-align: center;
  font-size: 36px;
  color: #663366;
}
.case-study .case-study-search h2 span,
.case-study .case-study-search h2 img {
  vertical-align: middle;
  display: inline-block;
}
.case-study .case-study-search h2 span {
  font-weight: 600;
}
.case-study .case-study-search h2 img {
  width: 32px;
}
@media only screen and (max-width: 428px) {
  .case-study .case-study-search h2 {
    font-size: 24px;
    line-height: 1;
  }
  .case-study .case-study-search h2 img {
    width: 21px;
  }
}
.case-study .non_text {
  display: none;
  margin-top: 100px;
  margin-bottom: 100px;
}
.case-study .non_text.on {
  display: block;
}
.case-study .non_text p {
  text-align: center;
  font-size: 20px;
  color: #663366;
}
.case-study .latest {
  max-width: 1200px;
  padding: 0 20px;
  margin: 100px auto;
}
@media only screen and (max-width: 428px) {
  .case-study .latest {
    margin-top: 40px;
  }
}
.case-study .latest ul {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
}
.case-study .latest ul li {
  width: 33.3333%;
  padding: 10px;
}
.case-study .latest ul li.listhidden {
  display: none;
}
.case-study .latest ul li .img {
  position: relative;
  height: 0;
  padding-bottom: 57%;
  border-radius: 4px;
  overflow: hidden;
}
.case-study .latest ul li .img img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.case-study .latest ul a {
  display: block;
  height: 100%;
  padding: 25px 15px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 10px 10px 30px 0 rgba(83, 37, 125, 0.15);
}
.case-study .latest ul .img_wrap {
  position: relative;
  margin-bottom: 70px;
}
.case-study .latest ul .img {
  overflow: hidden;
  border-radius: 4px;
}
.case-study .latest ul .logo {
  position: absolute;
  left: 50%;
  top: 100%;
  width: 100px;
  height: 100px;
  margin-left: -50px;
  margin-top: -50px;
  border-radius: 100%;
  background: #fff;
}
.case-study .latest ul .logo:after {
  content: "";
  position: absolute;
  top: -6px;
  left: -6px;
  right: -6px;
  bottom: -6px;
  box-shadow: inset 0 2px 2px 0 #3D2351, inset 0 0 0 2px #DF0251;
  border-radius: 100%;
}
.case-study .latest ul .logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  height: 90%;
  object-fit: contain;
  object-position: 50% 50%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.case-study .latest ul .company_name {
  margin-bottom: 20px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #E7287C;
}
.case-study .latest ul .row {
  margin-bottom: 10px;
}
.case-study .latest ul .row .title {
  float: left;
  width: 100px;
  font-weight: bold;
}
.case-study .latest ul .row .info {
  margin-left: 100px;
}
.case-study.ai-research .case-study-search {
  position: relative;
}
.case-study.ai-research .case-study-search form {
  position: relative;
  z-index: 1;
}
.case-study.ai-research .case-study-search form select {
  background-color: #fff;
}
.case-study.ai-research .case-study-search:after {
  content: "";
  width: 100%;
  height: 648px;
  background-image: url(images/bg_top_fee.png);
  background-size: cover;
  z-index: 0;
  position: absolute;
  top: -140px;
  left: 0;
  mix-blend-mode: darken;
}
.case-study.ai-research .case-study-list {
  background-color: #F8F8F8;
  padding: 10px 0 60px;
}
.case-study.ai-research .case-study-list .latest {
  z-index: 1;
  position: relative;
}
.case-study.ai-research .case-study-list__btn {
  text-align: center;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .case-study .page_top .wrap {
    background: url(images/case_study/bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .case-study .page_top .wrap {
    background: url(images/case_study/bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .case-study .latest ul {
    display: block;
  }
  .case-study .latest ul li {
    width: auto;
    padding: 0;
    margin-bottom: 40px;
  }
}
.single-post footer .footer__banner {
  display: none;
}

.detail {
  padding-top: 20px;
  padding-bottom: 0;
  background: #fff;
}
.detail .footer__banner {
  margin-bottom: 100px;
}
.detail .entry-header {
  max-width: 960px;
  margin: 0 auto 60px;
}
.detail .entry-header .top {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  border-bottom: 1px solid #E4D6F0;
  margin-bottom: 40px;
  padding-bottom: 20px;
}
.detail .entry-header .company_logo {
  max-width: 200px;
  max-height: 60px;
}
.detail .entry-header .company_logo img {
  max-width: 200px;
  max-height: 60px;
}
.detail .entry-header .plan {
  line-height: 1;
}
.detail .entry-header .plan .logo {
  font-size: 0;
  display: inline-block;
  vertical-align: top;
  width: 55px;
  height: 12px;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
.detail .entry-header .plan .text {
  display: inline-block;
  vertical-align: top;
}
.detail .entry-header .company_name {
  margin-bottom: 10px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #9D246E;
}
.detail .entry-header .entry-title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}
.detail .entry-header .image {
  text-align: center;
}
.detail .entry-header .image img {
  max-width: 100%;
  height: auto;
}
.detail .entry-header .tags {
  margin-bottom: 30px;
  text-align: center;
}
.detail .entry-header .tags span {
  display: inline-block;
  padding: 10px 35px;
  background: #F8F8F8;
  color: #9D246E;
  font-size: 12px;
  font-weight: bold;
  border-radius: 30px;
  margin: 0 10px 15px;
}
.detail .entry-content {
  max-width: 770px;
  margin: 0 auto 60px;
}
.detail .entry-content:after {
  content: "";
  display: block;
  clear: both;
}
.detail .entry-content h2 {
  position: relative;
  margin-bottom: 30px;
  padding: 15px;
  background: #F6F6F6;
  font-size: 16px;
  font-weight: bold;
}
.detail .entry-content h2:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: block;
  height: 3px;
  background: #3d2351;
  background: -moz-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: -webkit-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: linear-gradient(to right, #df0251 0%, #3d2351 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3d2351", endColorstr="#df0251",GradientType=1 );
}
.detail .entry-content div img {
  max-width: 100%;
  height: auto;
}
.detail .entry-content p {
  margin-bottom: 30px;
  line-height: 2;
  font-size: 14px;
}
.detail .entry-content p strong {
  font-weight: bold;
}
.detail .entry-content p img {
  max-width: 100%;
  height: auto;
}
.detail .entry-content p img.alignleft {
  float: left;
  padding-right: 10px;
  padding-bottom: 10px;
}
.detail .entry-content p img.alignright {
  float: right;
  padding-left: 10px;
  padding-bottom: 10px;
}
.detail .entry-content figure {
  margin: 50px auto;
}
.detail .entry-content #toc_container {
  width: 100%;
  padding: 15px;
  margin-bottom: 70px;
  background: #F6F6F6;
}
.detail .entry-content #toc_container .toc_title {
  margin: 0 auto 10px;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
.detail .entry-content #toc_container .toc_list {
  max-width: 640px;
  margin: 0 auto;
  padding-top: 15px;
  border-top: 1px solid #A38CB8;
}
.detail .entry-content #toc_container .toc_list li {
  line-height: 2;
}
.detail .entry-content #toc_container .toc_list li .toc_number:after {
  content: ".";
}
.detail .entry-content #toc_container .toc_list li a {
  color: #53257D;
}
.detail .entry-footer {
  max-width: 960px;
  margin: 0 auto 80px;
}
.detail .entry-footer .tags {
  text-align: center;
  padding-bottom: 70px;
  border-bottom: 1px solid #E4D6F0;
}
.detail .entry-footer .tags span {
  display: inline-block;
  padding: 10px 35px;
  background: #F8F8F8;
  color: #9D246E;
  font-size: 12px;
  font-weight: bold;
  border-radius: 30px;
  margin: 0 10px 15px;
}
.detail .latest {
  margin: 0 auto;
  position: relative;
}
.detail .latest:before {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #F6E3EA;
  background: -moz-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: -webkit-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
}
.detail .latest .top__comment {
  margin-bottom: 0;
  max-width: 1200px;
  margin: 0 auto;
}
.detail .latest .top__comment::before {
  display: none;
}
.detail .latest ul {
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
}
.detail .latest ul li {
  width: 33.3333%;
  padding: 10px;
}
.detail .latest ul li .img {
  position: relative;
  height: 0;
  padding-bottom: 57%;
  border-radius: 4px;
  overflow: hidden;
}
.detail .latest ul li .img img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.detail .latest ul a {
  display: block;
  height: 100%;
  padding: 25px 15px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 10px 10px 30px 0 rgba(83, 37, 125, 0.15);
}
.detail .latest ul .img_wrap {
  position: relative;
  margin-bottom: 70px;
}
.detail .latest ul .img {
  overflow: hidden;
  border-radius: 4px;
}
.detail .latest ul .logo {
  position: absolute;
  left: 50%;
  top: 100%;
  width: 100px;
  height: 100px;
  margin-left: -50px;
  margin-top: -50px;
  border-radius: 100%;
  background: #fff;
}
.detail .latest ul .logo:after {
  content: "";
  position: absolute;
  top: -6px;
  left: -6px;
  right: -6px;
  bottom: -6px;
  box-shadow: inset 0 2px 2px 0 #3D2351, inset 0 0 0 2px #DF0251;
  border-radius: 100%;
}
.detail .latest ul .logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  height: 80%;
  object-fit: contain;
  object-position: 50% 50%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.detail .latest ul .company_name {
  margin-bottom: 20px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #E7287C;
}
.detail .latest ul .row {
  margin-bottom: 10px;
}
.detail .latest ul .row .title {
  float: left;
  width: 100px;
  font-weight: bold;
}
.detail .latest ul .row .info {
  margin-left: 100px;
}
.detail .latest__btn_wrap {
  margin-top: 40px;
  text-align: center;
}

.post__other_list {
  overflow: visible;
}
.post__other_list__company {
  border-bottom: 1px solid #E4D6F0;
  padding-bottom: 50px;
}
.post__other_list__wrap {
  background: #F6E3EA;
  background: -moz-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: -webkit-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  padding: 110px 20px 70px;
  overflow: hidden;
}
.post__other_list__wrap .swiper-pagination {
  position: relative;
  margin-top: 60px;
  margin-bottom: 80px;
}
.post__other_list__wrap .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  background-color: #fff;
  opacity: 1;
  margin: 0 6px !important;
}
.post__other_list__wrap .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #A11451;
  box-shadow: 0 0 0 6px #D3CDD5;
}
.post__other_list .swiper-slide {
  width: 33%;
  max-width: 500px;
}
.post__other_list .swiper-slide > a {
  background-color: #fff;
  display: block;
  box-shadow: 12px 12px 24px 0 rgba(61, 34, 81, 0.32);
  border-radius: 4px;
  padding: 20px;
  transition: all 2s ease;
  transform: scale(0.8);
}
.post__other_list .swiper-slide img {
  width: 100%;
  vertical-align: top;
}
.post__other_list .swiper-slide .seminar-list__text__info {
  margin-bottom: 0;
}
.post__other_list .swiper-slide-active > a {
  transform: scale(1.1);
}
.post__other_list .swiper-button-next {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_right.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.post__other_list .swiper-button-prev {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_left.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.post__other_list .gradient_btn {
  margin-top: 200px;
  margin-bottom: 70px;
  font-size: 25px;
}
.post__other_list__ul {
  width: 100%;
  max-width: 1450px;
}
.post__other_list__li > a {
  display: block;
}
.post__other_list__li > a img {
  width: 100%;
}

@media only screen and (max-width: 736px) {
  .detail {
    padding-top: 10px;
  }
  .detail .entry-header {
    padding: 0 20px;
  }
  .detail .entry-header .top {
    padding: 15px 0;
    margin-bottom: 30px;
  }
  .detail .entry-header .tags span {
    padding: 3px 7px;
    margin: 5px 8px;
  }
  .detail .entry-header .plan .logo {
    display: block;
    margin-bottom: 10px;
  }
  .detail .entry-header .plan .text {
    display: block;
  }
  .detail .entry-header .company_name {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .detail .entry-header .entry-title {
    font-size: 24px;
  }
  .detail .entry-content {
    padding: 0 20px;
  }
  .detail .entry-content p img.alignleft, .detail .entry-content p img.alignright {
    display: block;
    float: none;
    padding: 0;
    margin-bottom: 10px;
  }
  .detail .entry-footer {
    padding: 0 20px;
  }
  .detail .entry-footer .tags span {
    padding: 3px 7px;
    margin: 5px 8px;
  }
  .detail .latest ul {
    display: block;
  }
  .detail .latest ul li {
    width: auto;
    padding: 0;
    margin-bottom: 40px;
  }
}
.data .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/data_bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/data_bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/data_bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.data .data_banner {
  margin-top: 40px;
  text-align: center;
  max-width: 728px;
  margin-left: auto;
  margin-right: auto;
}
.data .data_banner p {
  font-size: 20px;
  font-weight: bold;
}
.data .data_banner img {
  width: 100%;
  margin-bottom: 10px;
}
.data .data_banner + .form {
  margin-top: 20px;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .data .page_top .wrap {
    background: url(images/data_bg_tb.svg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .data .page_top .wrap {
    background: url(images/data_bg_sp.svg) no-repeat center;
    background-size: cover;
  }
  .data .data_banner p {
    font-size: 16px;
    margin: 10px 20px;
    font-weight: bold;
  }
}
.application .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/application_bg.png), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/application_bg.png), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/application_bg.png), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: right 50vw center, center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
}
.application .page_top .page_description {
  max-width: 400px;
}
.application .credit.off {
  display: none;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .application .page_top .wrap {
    background: url(images/application_bg_tb.svg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .application .page_top .wrap {
    background: url(images/application_bg_sp.svg) no-repeat center;
    background-size: cover;
  }
}
.interview__introduction {
  padding-top: 120px;
  margin: 0 auto 60px;
  text-align: center;
  position: relative;
}
.interview__introduction__title {
  font-size: 24px;
  font-weight: bold;
  z-index: 1;
  position: relative;
}
.interview__introduction__subtitle {
  font-size: 24px;
  font-weight: bold;
  z-index: 1;
  position: relative;
}
.interview__introduction__subtitle + .interview__introduction__description {
  font-size: 16px;
}
.interview__introduction__description {
  font-size: 13px;
  max-width: 720px;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
.interview__introduction:after {
  content: "";
  width: 100%;
  height: 648px;
  background-image: url(images/bg_top_1.png);
  background-size: cover;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: darken;
}
.interview__introduction:first-child {
  padding-top: 40px;
}
.interview__introduction:first-child:after {
  content: none;
}
.interview__flow__col {
  position: relative;
  padding: 0 12px;
  width: 33.333%;
}
.interview__flow__col:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -10px;
  display: block;
  width: 45px;
  height: 45px;
  border-right: 4px solid #53257D;
  border-bottom: 4px solid #53257D;
  transform: rotate(-45deg);
  z-index: 1;
}
.interview__flow__col__inner {
  box-shadow: 0 0 30px 0 rgba(83, 37, 125, 0.2);
  border-radius: 4px;
  background-color: #fff;
  overflow: hidden;
}
.interview__flow__col__header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 150px;
}
.interview__flow__col__title {
  margin: 0;
  text-align: center;
  line-height: 1.2;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
}
.interview__flow__col__covid {
  color: #fff;
  font-weight: bold;
}
.interview__flow__col__content {
  padding: 45px 25px;
  text-align: center;
}
.interview__flow__col__subtitle {
  margin: 0 auto 20px;
  font-size: 24px;
  font-weight: bold;
  color: #E2335C;
}
.interview__flow__col__icon {
  width: 120px;
  height: 82px;
  margin: 0 auto 20px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.interview__flow__col__description {
  margin: 0 auto 25px;
}
.interview__flow__col__heading {
  margin: 0 auto 25px;
  padding: 20px;
  font-size: 30px;
  font-weight: bold;
  background-color: #F6E3EA;
  border-radius: 4px;
}
.interview__flow__col__caption {
  font-size: 20px;
  font-weight: bold;
}
.interview__flow__col--first .interview__flow__col__header {
  background-color: #F0B769;
}
.interview__flow__col--first .interview__flow__col__icon {
  background-image: url(images/interview_flow_1.svg);
}
.interview__flow__col--second .interview__flow__col__inner {
  margin-top: 50px;
}
.interview__flow__col--second .interview__flow__col__header {
  background-color: #EA7B6B;
}
.interview__flow__col--second .interview__flow__col__icon {
  background-image: url(images/interview_flow_2.svg);
}
.interview__flow__col--second:after {
  content: "≒";
  width: auto;
  height: auto;
  line-height: 1;
  font-size: 60px;
  border: none;
  right: 0;
  transform: translateX(50%);
}
.interview__flow__col--third:after {
  display: none;
}
.interview__flow__col--third .interview__flow__col__header {
  background-color: #E2335C;
}
.interview__flow__col--third .interview__flow__col__icon {
  background-image: url(images/interview_flow_3.svg);
}
.interview__flow__pstxt {
  margin-top: 60px;
  text-align: right;
  font-size: 14px;
}
.interview__table {
  position: relative;
  z-index: 1;
  margin-top: 70px;
}
.interview__table__wrap {
  display: flex;
  max-width: 1380px;
}
.interview__table__img1 {
  width: 68%;
}
.interview__table__img1 img {
  width: 100%;
  max-width: 100%;
}
.interview__table__imgshain {
  width: 32%;
  box-shadow: 0 0 30px 0 rgba(83, 37, 125, 0.2);
}
.interview__table__imgshain img {
  width: 100%;
  max-width: 100%;
}

@media only screen and (max-width: 736px) {
  .interview__introduction {
    padding: 0 20px;
  }
  .interview__introduction__title {
    font-size: 20px;
  }
  .interview__flow {
    margin-bottom: 40px;
  }
  .interview__flow__cols {
    display: block;
  }
  .interview__flow__col {
    margin: 0 auto 60px;
    width: 100%;
    padding: 0;
  }
  .interview__flow__col:after {
    top: auto;
    right: auto;
    left: 50%;
    bottom: -35px;
    width: 25px;
    height: 25px;
    transform: translateX(-50%) rotate(45deg);
  }
  .interview__flow__col--second:after {
    font-size: 40px;
    width: auto;
    transform: translateX(-50%);
  }
  .interview__table {
    position: relative;
    z-index: 1;
    overflow: auto;
  }
  .interview__table__wrap {
    width: 250vw;
  }
}
.implementation-support__step__description {
  margin-bottom: 120px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}
.implementation-support__step__info {
  position: relative;
  max-width: 836px;
  padding: 60px;
  margin: 0 auto 160px;
  border-radius: 20px;
  border: 1px solid #E1D0F0;
}
.implementation-support__step__info:before {
  content: "";
  position: absolute;
  top: -42px;
  left: 50%;
  display: block;
  width: 84px;
  height: 84px;
  transform: translateX(-50%);
  background: url(images/implementation-support_icon.svg) no-repeat center;
  background-size: contain;
}
.implementation-support__step__info:after {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 50%;
  display: block;
  width: 30px;
  height: 30px;
  border-right: 3px solid #B50C50;
  border-bottom: 3px solid #B50C50;
  transform: translateX(-50%) rotate(45deg);
}
.implementation-support__step__info__title {
  margin-bottom: 55px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #9D246E;
}
.implementation-support__step__info__row {
  display: flex;
  gap: 48px;
}
.implementation-support__step__info__img {
  width: 38%;
}
.implementation-support__step__info__img img {
  width: 100%;
}
.implementation-support__step__info__txt {
  width: 58%;
  width: calc(62% - 48px);
}
.implementation-support__step__info__txt p {
  line-height: 1.8;
  font-size: 16px;
}
.implementation-support__step__info--second:before {
  background-image: url(images/implementation-support_icon2.svg);
}
.implementation-support__step__info--third:before {
  background-image: url(images/implementation-support_icon3.svg);
}
.implementation-support__step__info--fourth:before {
  background-image: url(images/implementation-support_icon4.svg);
}
.implementation-support__step__info:last-of-type:after {
  display: none;
}

@media only screen and (max-width: 736px) {
  .implementation-support__step__description {
    font-size: 18px;
  }
  .implementation-support__step__info {
    padding: 60px 20px 20px;
  }
  .implementation-support__step__info__title {
    margin-bottom: 20px;
    font-size: 18px;
  }
  .implementation-support__step__info__row {
    display: block;
  }
  .implementation-support__step__info__img {
    width: 100%;
  }
  .implementation-support__step__info__txt {
    margin-top: 20px;
    width: 100%;
  }
}
.ai-research__description {
  margin-bottom: 200px;
}
.ai-research__description__wrap {
  text-align: center;
}
.ai-research__description__wrap p {
  line-height: 1.8;
  font-size: 16px;
}
.ai-research__introduction {
  margin-bottom: 160px;
  position: relative;
}
.ai-research__introduction:after {
  content: "";
  width: 100%;
  height: 648px;
  background-image: url(images/bg_top_1.png);
  background-size: cover;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: darken;
}
.ai-research__introduction__wrap {
  position: relative;
  z-index: 1;
  text-align: center;
}
.ai-research__introduction__wrap p {
  line-height: 1.8;
  font-size: 16px;
}
.ai-research__introduction__wrap p span {
  color: #E2335C;
  font-weight: bold;
}
.ai-research__introduction__title {
  margin: 40px auto;
  font-size: 40px;
  font-weight: bold;
}
.ai-research__introduction__subtitle {
  margin: 40px auto;
  font-size: 24px;
  font-weight: bold;
}
.ai-research__introduction p + .ai-research__introduction__subtitle {
  margin-top: 80px;
}
.ai-research__introduction__graph {
  margin: 40px auto 80px;
  text-align: center;
}
.ai-research__introduction__graph img,
.ai-research__introduction__graph svg {
  margin: 0 auto;
}

@media only screen and (max-width: 736px) {
  .ai-research__introduction__title {
    font-size: 30px;
  }
}
.terms {
  margin-top: 50px;
  margin-bottom: 100px;
}
.terms__wrap > h2 {
  position: relative;
  margin-bottom: 30px;
  padding: 15px;
  background: #F6F6F6;
  font-size: 16px;
  font-weight: bold;
}
.terms__wrap > h2:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: block;
  height: 3px;
  background: #3d2351;
  background: -moz-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: -webkit-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: linear-gradient(to right, #df0251 0%, #3d2351 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3d2351", endColorstr="#df0251",GradientType=1 );
}
.terms__wrap > p {
  margin-top: 40px;
  font-size: 14px;
}
.terms__cols {
  margin: 0 -10px;
}
.terms__col {
  padding: 0 10px;
}
.terms dl {
  padding: 15px 0;
  counter-increment: termsnumber;
  border-bottom: 1px solid #F1E9F8;
}
.terms dl h3 {
  position: relative;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  padding-right: 40px;
}
.terms dl h3 span {
  margin-right: 20px;
  padding-right: 20px;
  border-right: 1px solid #53257D;
}
.terms dl h3:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 18px;
  height: 10px;
  margin-top: -5px;
  background: url(images/arrow-down-purple.svg) no-repeat center;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.terms dl .on h3:after {
  -moz-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.terms dl dd {
  display: none;
  padding-top: 30px;
  font-size: 14px;
}
.terms dl dd > ol {
  padding-left: 30px;
}
.terms dl dd > ol > li {
  margin-bottom: 10px;
  line-height: 1.6;
  list-style: decimal;
}
.terms dl dd > ol > li ol {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-left: 46px;
  counter-reset: sublistnumber;
}
.terms dl dd > ol > li ol li {
  margin-bottom: 20px;
  position: relative;
  line-height: 1.8;
  counter-increment: sublistnumber;
}
.terms dl dd > ol > li ol li:before {
  font-size: 12px;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  content: counter(sublistnumber);
  border-radius: 100%;
  width: 16px;
  height: 16px;
  text-align: center;
  border: 1px solid #53257D;
  position: absolute;
  left: -26px;
  top: 2px;
}

@media only screen and (max-width: 736px) {
  .terms__cols {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .terms__col {
    width: 100%;
  }
  .terms dl h3 {
    position: relative;
    padding-left: 80px;
  }
  .terms dl h3 span {
    position: absolute;
    top: 0;
    left: 0;
  }
}
.privacy__wrap > h2 {
  position: relative;
  margin-bottom: 30px;
  padding: 15px;
  background: #F6F6F6;
  font-size: 16px;
  font-weight: bold;
}
.privacy__wrap > h2:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: block;
  height: 3px;
  background: #3d2351;
  background: -moz-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: -webkit-linear-gradient(left, #df0251 0%, #3d2351 100%);
  background: linear-gradient(to right, #df0251 0%, #3d2351 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3d2351", endColorstr="#df0251",GradientType=1 );
}
.privacy__wrap > p {
  margin-top: 40px;
  font-size: 14px;
}
.privacy__cols {
  margin: 0 -10px;
}
.privacy__col {
  padding: 0 10px;
}
.privacy dl {
  max-width: 1000px;
  margin: 0 auto;
  padding: 15px 0;
  counter-increment: termsnumber;
  border-bottom: 1px solid #F1E9F8;
}
.privacy dl h3 {
  position: relative;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  padding-right: 40px;
}
.privacy dl h3 span {
  margin-right: 20px;
  padding-right: 20px;
  border-right: 1px solid #53257D;
}
.privacy dl h3:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 18px;
  height: 10px;
  margin-top: -5px;
  background: url(images/arrow-down-purple.svg) no-repeat center;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.privacy dl .on h3:after {
  -moz-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.privacy dl dd {
  display: none;
  padding-top: 30px;
  font-size: 14px;
}
.privacy dl dd > ol {
  padding-left: 30px;
}
.privacy dl dd > ol > li {
  margin-bottom: 10px;
  line-height: 1.6;
  list-style: decimal;
}
.privacy dl dd > ol > li ol {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-left: 46px;
  counter-reset: sublistnumber;
}
.privacy dl dd > ol > li ol li {
  margin-bottom: 20px;
  position: relative;
  line-height: 1.8;
  counter-increment: sublistnumber;
}
.privacy dl dd > ol > li ol li:before {
  font-size: 12px;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  content: counter(sublistnumber);
  border-radius: 100%;
  width: 16px;
  height: 16px;
  text-align: center;
  border: 1px solid #53257D;
  position: absolute;
  top: 2px;
  left: -26px;
}

@media only screen and (max-width: 736px) {
  .privacy__cols {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .privacy__col {
    width: 100%;
  }
  .privacy dl h3 {
    position: relative;
    padding-left: 80px;
  }
  .privacy dl h3 span {
    position: absolute;
    top: 0;
    left: 0;
  }
}
.page-template-page-document_request .footer__banner {
  display: none;
}

.single-post-document {
  padding-top: 50px;
}
@media only screen and (max-width: 768px) {
  .single-post-document {
    padding-top: 30px;
  }
}

.document-request-list .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/document-request/bg.jpg), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/document-request/bg.jpg), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/document-request/bg.jpg), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
  min-height: 360px;
}
.document-request-list .document-request-list-wrap {
  margin: 120px auto 60px;
  max-width: 1440px;
  width: 100%;
  padding: 0 20px;
}
@media only screen and (max-width: 428px) {
  .document-request-list .document-request-list-wrap ul {
    margin: 0;
  }
}
.document-request-list .document-request-list-wrap ul li {
  width: 30%;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
}
@media only screen and (max-width: 900px) and (min-width: 429px) {
  .document-request-list .document-request-list-wrap ul li {
    width: 46.666%;
  }
}
@media only screen and (max-width: 428px) {
  .document-request-list .document-request-list-wrap ul li {
    width: 100%;
    margin: 0 0 50px;
  }
}
.document-request-list .document-request-list-wrap ul li > a {
  display: block;
  padding: 30px 40px;
}
@media only screen and (max-width: 900px) and (min-width: 429px) {
  .document-request-list .document-request-list-wrap ul li > a {
    padding: 15px 20px;
  }
}
.document-request-list .document-request-list-wrap ul li figure {
  overflow: hidden;
  border-radius: 3px;
  margin-bottom: 30px;
  position: relative;
  height: 0;
  padding-bottom: 57%;
  overflow: hidden;
}
.document-request-list .document-request-list-wrap ul li figure img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.document-request-list .document-request-list-wrap .pagination {
  margin-top: 30px;
  width: 100%;
  text-align: center;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers {
  width: 36px;
  height: 36px;
  display: inline-block;
  font-size: 14px;
  background-color: #E8E5E9;
  border-radius: 100%;
  overflow: hidden;
  line-height: 36px;
  margin: 0 10px;
  transition: all 0.5s ease;
  color: #B50C50;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers:hover {
  background-color: #B50C50;
  color: #fff;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.current {
  background-color: #B50C50;
  color: #fff;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.dots {
  background-color: #E8E5E9;
  color: #B50C50;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.prev {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.prev:before {
  content: "";
  width: 13px;
  height: 13px;
  border-top: 2px solid #B50C50;
  border-left: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.prev:hover {
  background-color: #B50C50;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.prev:hover:before {
  border-color: #fff;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.next {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.next:before {
  content: "";
  width: 13px;
  height: 13px;
  border-bottom: 2px solid #B50C50;
  border-right: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.next:hover {
  background-color: #B50C50;
}
.document-request-list .document-request-list-wrap .pagination .page-numbers.next:hover:before {
  border-color: #fff;
}
.document-request-list__ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1.666%;
}
.document-request-list__li {
  width: 31%;
  margin: 0 1.666% 90px;
}
@media only screen and (max-width: 428px) {
  .document-request-list__li .seminar__readmore {
    font-size: 14px;
    max-width: 207px;
    margin: auto;
    padding: 12px;
  }
}
.document-request-list__ttl {
  font-size: 23px;
  line-height: 1.2;
  margin-bottom: 20px;
  font-weight: 700;
}
@media only screen and (max-width: 428px) {
  .document-request-list__ttl {
    font-size: 22px;
  }
}
.document-request-list__category {
  background-color: #B50C50;
  border-radius: 23px;
  text-align: center;
  color: #fff;
  font-size: 9px;
  line-height: 1;
  padding: 8px 14px;
  display: inline-block;
  margin: 5px;
}
.document-request-list__category__wrap {
  margin: 0 -5px;
}
.document-request-list__read {
  font-size: 15px;
  margin-top: 25px;
}
@media only screen and (max-width: 428px) {
  .document-request-list__read {
    font-size: 13px;
  }
}
.document-request-list__text__top {
  margin-top: 15px;
  margin-bottom: 15px;
}
.document-request-list__text__top .date {
  font-size: 23px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
}
.document-request-list__text__top .during {
  display: inline-block;
  vertical-align: middle;
  background-color: #B50C50;
  border-radius: 23px;
  font-size: 9px;
  color: #fff;
  text-align: center;
  padding: 8px 20px;
  line-height: 1;
}
.document-request-list__text__top .during.end {
  background-color: #F8F8F8;
  color: #B50C50;
}
.document-request-list__text__info {
  margin-bottom: 30px;
}
.document-request-list__text__info__ttl {
  width: 70px;
  font-size: 14px;
  display: inline-block;
}
.document-request-list__text__info__p {
  margin-top: 10px;
  font-size: 14px;
}
.document-request-list__text__info__p:first-child {
  margin-top: 0;
}

.document-request__category {
  background-color: #B50C50;
  border-radius: 23px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  padding: 8px 14px;
  display: inline-block;
  margin-bottom: 20px;
}
.document-request__head {
  position: relative;
}
.document-request__head__ttl {
  font-size: 30px;
  line-height: 1.2;
  padding-bottom: 40px;
  margin-bottom: 30px;
  position: relative;
}
.document-request__head__ttl:after {
  content: "";
  width: 100%;
  height: 8px;
  background: rgb(181, 12, 80);
  background: linear-gradient(270deg, rgb(181, 12, 80) 0%, rgb(69, 33, 80) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.document-request__head__date {
  padding-top: 25px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 70px;
}
.document-request__head__date__left .during {
  display: inline-block;
  vertical-align: middle;
  background-color: #B50C50;
  border-radius: 23px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  padding: 10px 45px;
  line-height: 1;
  margin-left: 35px;
}
.document-request__head__date__left .during.end {
  background-color: #F8F8F8;
  color: #B50C50;
}
.document-request__head__date__left__txt {
  font-size: 37px;
  display: inline-block;
  vertical-align: middle;
}
.document-request__head__date__right .seminar__readmore {
  padding: 20px 80px;
}
.document-request__poster {
  margin-bottom: 100px;
}
.document-request__poster img {
  vertical-align: top;
  width: 100%;
}
.document-request__contents {
  margin-bottom: 150px;
}
.document-request__contents__text {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 100px;
}
.document-request__contents__text p {
  line-height: 1.5;
  margin-top: 30px;
}
.document-request__contents__text p:first-of-type {
  margin-top: 0;
}
.document-request__contents__text .seminar_about {
  font-weight: 600;
}
.document-request__contents__text a {
  text-decoration: underline;
}
.document-request__contents__form {
  padding: 45px;
  background-color: #F6F6F6;
  margin-bottom: 150px;
}
@media only screen and (max-width: 736px) {
  .document-request__contents__form {
    padding: 50px 15px 40px;
  }
}
.document-request__contents__form__head {
  margin-bottom: 50px;
}
.document-request__contents__form__head .caption {
  color: #A11451;
  font-size: 14px;
  display: inline-block;
  font-weight: 600;
  line-height: 1;
}
.document-request__contents__form__head .caption a {
  font-size: 18px;
  color: #A11451;
  display: block;
  margin-top: 5px;
  text-decoration: underline;
}
@media only screen and (max-width: 736px) {
  .document-request__contents__form__head .caption {
    font-size: 11px;
  }
  .document-request__contents__form__head .caption a {
    font-size: 16px;
  }
}
.document-request__contents__form h2 {
  font-size: 30px;
  display: inline-block;
  margin-right: 20px;
  font-weight: 400;
}
@media only screen and (max-width: 736px) {
  .document-request__contents__form h2 {
    display: block;
    font-size: 20px;
    text-align: center;
    margin-right: 0;
  }
}
.document-request__contents__form iframe {
  width: 100%;
  min-height: 1300px;
  border: none;
}
.document-request__other_list {
  overflow: visible;
}
.document-request__other_list__wrap {
  background: #F6E3EA;
  background: -moz-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: -webkit-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  padding: 110px 20px 70px;
  overflow: hidden;
}
.document-request__other_list__wrap .swiper-pagination {
  position: relative;
  margin-top: 60px;
  margin-bottom: 80px;
}
.document-request__other_list__wrap .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  background-color: #fff;
  opacity: 1;
  margin: 0 6px !important;
}
.document-request__other_list__wrap .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #A11451;
  box-shadow: 0 0 0 6px #D3CDD5;
}
.document-request__other_list .swiper-slide {
  width: 33%;
  max-width: 500px;
}
.document-request__other_list .swiper-slide > a {
  background-color: #fff;
  display: block;
  box-shadow: 12px 12px 24px 0 rgba(61, 34, 81, 0.32);
  border-radius: 4px;
  padding: 30px 35px;
  transition: all 2s ease;
  transform: scale(0.8);
}
.document-request__other_list .swiper-slide figure {
  border-radius: 3px;
  margin-bottom: 30px;
  position: relative;
  height: 0;
  padding-bottom: 57%;
  overflow: hidden;
}
.document-request__other_list .swiper-slide img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.document-request__other_list .swiper-slide .seminar-list__text__info {
  margin-bottom: 0;
}
@media only screen and (min-width: 1501px) {
  .document-request__other_list .swiper-slide.swiper-slide-next > a {
    transform: scale(0.8) translateX(30px);
  }
  .document-request__other_list .swiper-slide.swiper-slide-prev > a {
    transform: scale(0.8) translateX(-30px);
  }
}
.document-request__other_list .swiper-slide-active > a {
  transform: scale(1.1);
}
.document-request__other_list .swiper-button-next {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_right.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.document-request__other_list .swiper-button-prev {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_left.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.document-request__other_list .gradient_btn {
  margin-top: 200px;
  margin-bottom: 70px;
  font-size: 25px;
}
.document-request__other_list__ul {
  width: 100%;
  max-width: 1450px;
}
.document-request__other_list__li {
  background-color: #fff;
}
.document-request__other_list__li > a {
  display: block;
}
.document-request__other_list__li > a img {
  width: 100%;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .document-request-list .page_top .wrap {
    background: url(images/document-request/bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .document-request-list .page_top .wrap {
    background: url(images/document-request/bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .document-request-list__category__item {
    padding: 10px;
  }
  .document-request-list__category__item a {
    font-size: 12px;
  }
  .document-request-list__item {
    padding-right: 0;
    padding-left: 0;
  }
  .document-request-list__q {
    padding-right: 0;
    padding-left: 25px;
  }
  .document-request-list__q h4 {
    padding-right: 0;
    padding-left: 0;
  }
  .document-request-list__q:after {
    display: none;
  }
  .document-request-list__a {
    padding-left: 25px;
  }
  .document-request-list__a .btn_wrap a {
    display: block;
    text-align: center;
    width: 100%;
    margin: 0 auto 20px;
  }
  .document-request-list .document-request-list-wrap .pagination .page-numbers.prev {
    margin-left: 0;
  }
  .document-request-list .document-request-list-wrap .pagination .page-numbers.next {
    margin-right: 0;
  }
  .document-request__other_list__wrap {
    padding: 50px 0;
  }
  .document-request__other_list__wrap .swiper-pagination {
    display: none;
  }
  .document-request__other_list__wrap .gradient_btn {
    margin-top: 50px;
    max-width: 220px;
    font-size: 16px;
  }
  .document-request__other_list .swiper-button-next {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.8);
    background-size: 28px;
  }
  .document-request__other_list .swiper-button-prev {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.5);
    background-size: 28px;
  }
  .document-request__other_list .swiper-slide {
    padding: 0 20px;
  }
  .document-request__other_list .swiper-slide > a,
  .document-request__other_list .swiper-slide-active > a {
    transform: scale(1);
  }
  .answer__errwrap {
    position: relative;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-align-content: flex-start;
    align-content: flex-start;
    line-height: 1.8;
  }
  .answer__errwrap img {
    max-width: 100%;
    margin-bottom: 20px;
  }
  .answer__errwrap:before {
    display: none;
  }
  .answer__err01 {
    width: 100%;
    margin-bottom: 60px;
  }
  .answer__err01:after {
    content: "↓";
    display: block;
    margin: 20px auto 0;
    text-align: center;
  }
  .answer__err02 {
    width: 100%;
  }
}
.seminar__readmore {
  border-radius: 5px;
  overflow: hidden;
  text-align: center;
  line-height: 1;
  padding: 20px;
  font-size: 16px;
  color: #fff;
  background: rgb(181, 12, 80);
  background: linear-gradient(90deg, rgb(181, 12, 80) 0%, rgb(69, 33, 80) 100%);
  box-shadow: 4px 5px 5px rgba(0, 0, 0, 0.2);
  position: relative;
  cursor: pointer;
  display: block;
}
.seminar__readmore span {
  position: relative;
  z-index: 1;
}
.seminar__readmore:after {
  content: "";
  background: rgb(69, 33, 80);
  transition: all 0.5s ease;
  opacity: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 5px;
}
.seminar__readmore:hover:after {
  opacity: 1;
}

.seminar-list__readmore {
  position: absolute;
  bottom: 30px;
  left: 30px;
  width: calc(100% - 60px);
}
@media only screen and (max-width: 980px) and (min-width: 429px) {
  .seminar-list__readmore {
    width: calc(100% - 40px);
    left: 20px;
  }
}
@media only screen and (max-width: 428px) {
  .seminar-list__readmore {
    width: 100%;
    position: relative;
    left: auto;
    bottom: auto;
  }
}
.seminar-list .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/seminar/seminar_bg.jpg), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/seminar/seminar_bg.jpg), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/seminar/seminar_bg.jpg), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 360px;
}
.seminar-list .seminar-list-wrap {
  margin: 120px auto 60px;
  max-width: 1440px;
  width: 100%;
  padding: 0 20px;
}
.seminar-list .seminar-list-wrap ul li {
  width: 30%;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
}
.seminar-list .seminar-list-wrap ul li > a {
  display: block;
  padding: 30px 35px 220px;
  height: 100%;
  position: relative;
}
.seminar-list .seminar-list-wrap ul li figure {
  overflow: hidden;
  border-radius: 3px;
}
.seminar-list .seminar-list-wrap ul li figure img {
  width: 100%;
}
.seminar-list .seminar-list-wrap .pagination {
  margin-top: 30px;
  width: 100%;
  text-align: center;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers {
  width: 36px;
  height: 36px;
  display: inline-block;
  font-size: 14px;
  background-color: #E8E5E9;
  border-radius: 100%;
  overflow: hidden;
  line-height: 36px;
  margin: 0 10px;
  transition: all 0.5s ease;
  color: #B50C50;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers:hover {
  background-color: #B50C50;
  color: #fff;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.current {
  background-color: #B50C50;
  color: #fff;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.dots {
  background-color: #E8E5E9;
  color: #B50C50;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.prev {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.prev:before {
  content: "";
  width: 13px;
  height: 13px;
  border-top: 2px solid #B50C50;
  border-left: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.prev:hover {
  background-color: #B50C50;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.prev:hover:before {
  border-color: #fff;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.next {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.next:before {
  content: "";
  width: 13px;
  height: 13px;
  border-bottom: 2px solid #B50C50;
  border-right: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.next:hover {
  background-color: #B50C50;
}
.seminar-list .seminar-list-wrap .pagination .page-numbers.next:hover:before {
  border-color: #fff;
}
.seminar-list__ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1.666%;
}
.seminar-list__li {
  width: 31%;
  margin: 0 1.666% 90px;
}
.seminar-list__ttl {
  font-size: 23px;
  line-height: 1.2;
  margin-bottom: 20px;
  font-weight: 700;
}
.seminar-list__text__top {
  margin-top: 15px;
  margin-bottom: 15px;
}
.seminar-list__text__top .date {
  font-size: 23px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
}
.seminar-list__text__top .during {
  display: inline-block;
  vertical-align: middle;
  background-color: #B50C50;
  border-radius: 23px;
  font-size: 9px;
  color: #fff;
  text-align: center;
  padding: 8px 20px;
  line-height: 1;
}
.seminar-list__text__top .during.end {
  background-color: #F8F8F8;
  color: #B50C50;
}
.seminar-list__text__info {
  position: absolute;
  bottom: 140px;
  width: calc(100% - 70px);
  left: 35px;
}
@media only screen and (max-width: 980px) {
  .seminar-list__text__info {
    width: calc(100% - 60px);
    left: 30px;
  }
}
@media only screen and (max-width: 428px) {
  .seminar-list__text__info {
    position: relative;
    width: 100%;
    left: auto;
    bottom: auto;
    margin-bottom: 70px;
  }
}
.seminar-list__text__info__ttl {
  width: 70px;
  font-size: 14px;
  display: inline-block;
}
.seminar-list__text__info__p {
  margin-top: 10px;
  font-size: 14px;
  position: relative;
}
.seminar-list__text__info__p:first-child {
  margin-top: 0;
}
.seminar-list__text__info__t {
  position: absolute;
  padding-left: 70px;
  left: 0;
  top: 0;
}

.single-post-seminar .footer__banner {
  display: none;
}
.single-post-seminar #content {
  padding-top: 180px;
}
@media only screen and (max-width: 736px) {
  .single-post-seminar #content {
    padding-top: 90px;
  }
}

.seminar_detail__head {
  position: relative;
}
.seminar_detail__head__ttl {
  font-size: 37px;
  line-height: 1.2;
  padding-bottom: 40px;
  margin-bottom: 30px;
  position: relative;
  font-weight: 600;
}
.seminar_detail__head__ttl:after {
  content: "";
  width: 100%;
  height: 8px;
  background: rgb(181, 12, 80);
  background: linear-gradient(270deg, rgb(181, 12, 80) 0%, rgb(69, 33, 80) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.seminar_detail__head__date {
  padding-top: 25px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 70px;
}
.seminar_detail__head__date__left .during {
  display: inline-block;
  vertical-align: middle;
  background-color: #B50C50;
  border-radius: 23px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  padding: 10px 45px;
  line-height: 1;
  margin-left: 35px;
}
.seminar_detail__head__date__left .during.end {
  background-color: #F8F8F8;
  color: #B50C50;
}
.seminar_detail__head__date__left__txt {
  font-size: 30px;
  display: inline-block;
  vertical-align: middle;
}
.seminar_detail__head__date__right.hidden {
  display: none;
}
.seminar_detail__head__date__right .seminar__readmore {
  padding: 20px 80px;
}
.seminar_detail__poster {
  margin-bottom: 100px;
}
.seminar_detail__poster img {
  vertical-align: top;
  width: 100%;
}
.seminar_detail__contents {
  margin-bottom: 150px;
}
.seminar_detail__contents__text {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 100px;
}
.seminar_detail__contents__text p {
  line-height: 1.5;
  margin-top: 30px;
}
.seminar_detail__contents__text p:first-of-type {
  margin-top: 0;
}
.seminar_detail__contents__text strong {
  font-weight: 600;
}
.seminar_detail__contents__text a {
  text-decoration: underline;
}
.seminar_detail__contents__text .seminar_about {
  font-weight: 600;
}
.seminar_detail__contents__plan h3 {
  font-size: 30px;
  margin-bottom: 25px;
}
.seminar_detail__contents__plan__ul {
  border-bottom: 1px solid #E2D6EE;
}
.seminar_detail__contents__plan__li {
  border-top: 1px solid #E2D6EE;
  display: flex;
  padding: 30px 0;
}
.seminar_detail__contents__plan__ttl {
  font-size: 20px;
  width: 150px;
}
.seminar_detail__contents__plan__post {
  font-size: 20px;
}
.seminar_detail__contents__form {
  padding: 45px;
  background-color: #F6F6F6;
  margin-bottom: 150px;
}
.seminar_detail__contents__form h2 {
  font-size: 30px;
  margin-bottom: 50px;
}
.seminar_detail__contents__form iframe {
  width: 100%;
  border: none;
}
.seminar_detail__other_list {
  overflow: visible;
}
.seminar_detail__other_list .seminar-list__text__top .date {
  margin-right: 0;
}
.seminar_detail__other_list__wrap {
  background: #F6E3EA;
  background: -moz-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: -webkit-linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  background: linear-gradient(90deg, #F6E3EA 0%, #E8E5E9 100%);
  padding: 110px 20px 70px;
  overflow: hidden;
}
.seminar_detail__other_list__wrap .swiper-pagination {
  position: relative;
  margin-top: 60px;
  margin-bottom: 80px;
}
.seminar_detail__other_list__wrap .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  background-color: #fff;
  opacity: 1;
  margin: 0 6px !important;
}
.seminar_detail__other_list__wrap .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #A11451;
  box-shadow: 0 0 0 6px #D3CDD5;
}
@media only screen and (max-width: 840px) and (min-width: 736px) {
  .seminar_detail__other_list__wrap {
    padding-left: 0;
    padding-right: 0;
  }
}
.seminar_detail__other_list .swiper-slide {
  width: 33%;
  max-width: 500px;
}
.seminar_detail__other_list .swiper-slide > a {
  background-color: #fff;
  display: block;
  box-shadow: 12px 12px 24px 0 rgba(61, 34, 81, 0.32);
  border-radius: 4px;
  padding: 30px 35px;
  transition: all 2s ease;
  transform: scale(0.8);
}
.seminar_detail__other_list .swiper-slide > a .seminar-list__text__info {
  width: 100%;
  position: relative;
  left: auto;
  bottom: auto;
}
@media only screen and (max-width: 1080px) and (min-width: 821px) {
  .seminar_detail__other_list .swiper-slide > a {
    height: 500px;
  }
}
@media only screen and (max-width: 820px) and (min-width: 736px) {
  .seminar_detail__other_list .swiper-slide > a {
    height: 400px;
  }
}
@media only screen and (max-width: 735px) {
  .seminar_detail__other_list .swiper-slide > a {
    height: 540px;
  }
}
.seminar_detail__other_list .swiper-slide img {
  width: 100%;
  vertical-align: top;
}
.seminar_detail__other_list .swiper-slide .seminar-list__text__info {
  margin-bottom: 0;
}
@media only screen and (min-width: 1501px) {
  .seminar_detail__other_list .swiper-slide.swiper-slide-next > a {
    transform: scale(0.8) translateX(30px);
  }
  .seminar_detail__other_list .swiper-slide.swiper-slide-prev > a {
    transform: scale(0.8) translateX(-30px);
  }
}
.seminar_detail__other_list .swiper-slide-active > a {
  transform: scale(1.1);
}
.seminar_detail__other_list .swiper-button-next {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_right.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.seminar_detail__other_list .swiper-button-prev {
  right: 0px;
  width: 70px;
  height: 70px;
  background: url(images/arr_swiper_left.svg) #D3CDD5 no-repeat center;
  border-radius: 100%;
}
.seminar_detail__other_list .gradient_btn {
  margin-top: 200px;
  margin-bottom: 70px;
  font-size: 25px;
}
.seminar_detail__other_list__ul {
  width: 100%;
  max-width: 1450px;
}
.seminar_detail__other_list__li {
  background-color: #fff;
}
.seminar_detail__other_list__li > a {
  display: block;
  height: 100%;
}
.seminar_detail__other_list__li > a img {
  width: 100%;
}
@media only screen and (max-width: 940px) and (min-width: 736px) {
  .seminar_detail__other_list .seminar-list__ttl {
    font-size: 19px;
  }
  .seminar_detail__other_list .seminar-list__text__top .date {
    font-size: 14px;
    margin-right: 5px;
  }
  .seminar_detail__other_list .seminar-list__text__top .during {
    padding: 5px 12px;
  }
  .seminar_detail__other_list .swiper-slide > a {
    padding: 15px 18px;
  }
}
@media only screen and (max-width: 600px) {
  .seminar_detail__other_list .seminar-list__ttl {
    font-size: 25px;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .seminar-list .page_top .wrap {
    background: url(images/seminar/seminar_bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 980px) {
  .seminar-list__li {
    margin-bottom: 50px;
  }
  .seminar-list .seminar-list-wrap ul li {
    width: 46%;
  }
  .seminar-list .seminar-list-wrap ul li > a {
    padding: 20px 25px 220px;
  }
}
@media only screen and (max-width: 736px) {
  .seminar-list__ttl {
    font-size: 28px;
  }
  .seminar-list .page_top .wrap {
    background: url(images/seminar/seminar_bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .seminar-list .seminar-list-wrap {
    margin-top: 90px;
  }
  .seminar-list .seminar-list-wrap ul li {
    width: 100%;
    margin: 0 0 45px;
  }
  .seminar-list .seminar-list-wrap ul li > a {
    padding: 30px 35px;
  }
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers {
    display: none;
  }
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers.current,
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers.prev_page,
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers.next_page,
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers.next,
  .seminar-list .seminar-list-wrap .mid_pagenation .page-numbers.prev {
    display: inline-block;
  }
  .seminar-list__ul {
    display: block;
    margin: 0;
  }
  .seminar_detail__head__ttl {
    padding-bottom: 25px;
    margin-bottom: 0;
    font-size: 20px;
  }
  .seminar_detail__head__ttl:after {
    height: 5px;
  }
  .seminar_detail__head__date {
    display: block;
    padding-top: 10px;
    margin-bottom: 50px;
  }
  .seminar_detail__head__date__left {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
  }
  .seminar_detail__head__date__left .during {
    padding: 5px 30px;
    line-height: 11px;
    font-size: 11px;
  }
  .seminar_detail__head__date__left__txt {
    font-size: 20px;
  }
  .seminar_detail__head__date__right .seminar__readmore {
    display: block;
    max-width: 250px;
    padding: 20px;
    margin: auto;
  }
  .seminar_detail__poster {
    margin-bottom: 50px;
  }
  .seminar_detail__contents__text {
    margin-bottom: 50px;
  }
  .seminar_detail__contents__text p {
    font-size: 15px;
  }
  .seminar_detail__contents__plan h3 {
    font-size: 25px;
  }
  .seminar_detail__contents__plan__li {
    display: block;
    padding: 20px 0;
  }
  .seminar_detail__contents__plan__ttl {
    display: block;
    width: 100%;
    font-size: 18px;
  }
  .seminar_detail__contents__plan__post {
    display: block;
    width: 100%;
    font-size: 18px;
  }
  .seminar_detail__contents__form {
    padding: 45px 20px;
    margin-bottom: 45px;
  }
  .seminar_detail__contents__form h2 {
    font-size: 20px;
    margin-bottom: 20px;
    text-align: center;
  }
  .seminar_detail__other_list__wrap {
    padding: 50px 0;
  }
  .seminar_detail__other_list__wrap .swiper-pagination {
    display: none;
  }
  .seminar_detail__other_list__wrap .gradient_btn {
    margin-top: 50px;
    max-width: 220px;
    font-size: 16px;
  }
  .seminar_detail__other_list .swiper-button-next {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.8);
    background-size: 28px;
  }
  .seminar_detail__other_list .swiper-button-prev {
    width: 43px;
    height: 43px;
    background-color: rgba(211, 205, 213, 0.5);
    background-size: 28px;
  }
  .seminar_detail__other_list .swiper-slide {
    padding: 0 20px;
  }
  .seminar_detail__other_list .swiper-slide > a,
  .seminar_detail__other_list .swiper-slide-active > a {
    transform: scale(1);
  }
}
.page-template-page-consulting main {
  position: relative;
  z-index: 1;
}
.page-template-page-consulting footer {
  position: relative;
}
.page-template-page-consulting footer > div {
  position: relative;
  z-index: 1;
}
.page-template-page-consulting footer:after {
  content: "";
  width: 100%;
  background-image: url(images/consulting/consulting_bg.png);
  background-size: cover;
  background-position: top;
  position: absolute;
  top: -500px;
  left: 0;
  height: 648px;
  z-index: 0;
}
@media only screen and (max-width: 820px) {
  .page-template-page-consulting footer:after {
    top: -300px;
    height: 300px;
    display: none;
  }
}
@media only screen and (max-width: 820px) {
  .page-template-page-consulting .consulting__section04 .consulting__section04__box__img,
  .page-template-page-consulting .consulting__section04 .consulting__section04__box__txt {
    position: relative;
    z-index: 1;
  }
  .page-template-page-consulting .consulting__section04:after {
    content: "";
    width: 100%;
    background-image: url(images/consulting/consulting_bg.png);
    background-size: 100%;
    background-position: top;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -200px;
    left: 0;
    height: 348px;
    z-index: 0;
  }
}

@media only screen and (max-width: 820px) and (min-width: 429px) {
  #consulting__section02 {
    padding: 0 20px;
  }
}

.consulting {
  color: #53257D;
}
.consulting .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/consulting/bg.jpg), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/consulting/bg.jpg), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/consulting/bg.jpg), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 100%, 100% 100%;
  min-height: 360px;
}
.consulting__head {
  max-width: 1440px;
  margin: 100px auto 250px;
  width: 100%;
  padding: 0 20px;
}
@media only screen and (max-width: 820px) {
  .consulting__head {
    margin-bottom: 140px;
  }
}
.consulting__head__ttl {
  font-size: 28px;
  text-align: center;
  margin-bottom: 60px;
  font-weight: 600;
}
@media only screen and (max-width: 820px) {
  .consulting__head__ttl {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 40px;
  }
}
.consulting__head__subttl {
  font-size: 40px;
  font-weight: 700;
  position: relative;
  text-align: center;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .consulting__head__subttl {
    font-size: 30px;
  }
}
.consulting__head__subttl:before {
  content: "";
  height: 3px;
  width: calc(100% - 1100px);
  background-color: #A11451;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .consulting__head__subttl:before {
    width: 5%;
  }
}
.consulting__head__subttl:after {
  content: "";
  height: 3px;
  width: calc(100% - 1100px);
  background-color: #A11451;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
@media only screen and (max-width: 820px) and (min-width: 429px) {
  .consulting__head__subttl:after {
    width: 5%;
  }
}
@media only screen and (max-width: 1200px) {
  .consulting__head__subttl:before, .consulting__head__subttl:after {
    width: 16%;
  }
}
@media only screen and (max-width: 820px) {
  .consulting__head__subttl {
    font-size: 24px;
  }
}
.consulting__head__ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 820px) {
  .consulting__head__ul {
    display: block;
    text-align: center;
    margin: 0 -1% 50px;
    font-size: 0;
  }
}
.consulting__head__li {
  padding: 25px 20px 40px;
  border-radius: 5px;
  background: rgb(246, 227, 234);
  background: linear-gradient(180deg, rgb(246, 227, 234) 0%, rgb(232, 229, 233) 100%);
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  width: 19%;
  transform: scale(0.95);
  opacity: 0;
  transition: all 1.4s ease;
}
@media only screen and (max-width: 820px) {
  .consulting__head__li {
    width: 48%;
    display: inline-block;
    margin: 0 1% 15px;
  }
}
@media only screen and (max-width: 428px) {
  .consulting__head__li {
    padding: 12px 0 15px;
  }
}
.consulting__head__li img {
  width: 100%;
  max-width: 170px;
  margin: auto;
  display: block;
}
@media only screen and (max-width: 428px) {
  .consulting__head__li img {
    max-width: 110px;
  }
}
.consulting__head__li p {
  margin-top: 25px;
  font-size: 22px;
  font-weight: 600;
  text-align: center;
}
@media only screen and (max-width: 1200px) {
  .consulting__head__li p {
    font-size: 1.5vw;
  }
}
@media only screen and (max-width: 820px) {
  .consulting__head__li p {
    font-size: 16px;
    margin-top: 15px;
    font-weight: 600;
    line-height: 1.4;
  }
}
.consulting__head.on .consulting__head__li {
  transform: scale(1);
  opacity: 1;
}
.consulting__section {
  margin-bottom: 250px;
}
@media only screen and (max-width: 820px) {
  .consulting__section {
    padding: 0 20px;
    margin-bottom: 140px;
  }
}
.consulting__section__ttl {
  font-size: 40px;
  color: #E6297C;
  font-weight: 700;
  text-align: center;
  margin-bottom: 60px;
}
@media only screen and (max-width: 820px) {
  .consulting__section__ttl {
    font-size: 24px;
    margin-bottom: 50px;
    line-height: 1.5;
  }
}
.consulting__section__read {
  font-size: 20px;
  text-align: center;
  margin-bottom: 70px;
  font-weight: 600;
}
@media only screen and (max-width: 820px) {
  .consulting__section__read {
    font-size: 16px;
    margin-bottom: 30px;
  }
}
.consulting__section .graph_arr {
  max-width: 70px;
  width: 10%;
}
.consulting__section__graph01 {
  display: flex;
  justify-content: space-between;
  max-width: 1300px;
  margin: auto;
  align-content: center;
}
.consulting__section__graph01 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.consulting__section__graph01 ul li {
  width: 48%;
  border-radius: 5px;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  margin-bottom: 20px;
  text-align: center;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px;
  padding: 20px;
  font-weight: 600;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph01 ul li {
    font-size: 1.3vw;
  }
}
@media only screen and (max-width: 820px) {
  .consulting__section__graph01 ul li {
    font-size: 14px;
    padding: 10px;
  }
}
.consulting__section__graph01__left {
  width: 44%;
}
.consulting__section__graph01__left li {
  border: 1px solid #4D2B79;
}
.consulting__section__graph01__right {
  width: 44%;
}
.consulting__section__graph01__right li {
  color: #fff;
  background: rgb(219, 81, 106);
  background: linear-gradient(0deg, rgb(219, 81, 106) 0%, rgb(228, 124, 139) 100%);
}
@media only screen and (max-width: 820px) {
  .consulting__section__graph01 {
    display: block;
  }
  .consulting__section__graph01 .consulting__section__graph01__left {
    width: 100%;
  }
  .consulting__section__graph01 .graph_arr {
    display: block;
    margin: 0 auto 20px;
    transform: rotate(90deg);
  }
  .consulting__section__graph01 .consulting__section__graph01__right {
    width: 100%;
  }
}
.consulting__section__graph02 {
  display: flex;
  justify-content: space-between;
  max-width: 1280px;
  margin: auto;
  align-content: center;
}
.consulting__section__graph02 ul li {
  border-radius: 5px;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  margin-bottom: 20px;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph02 ul li {
    font-size: 1.3vw;
  }
}
.consulting__section__graph02__left {
  width: 23%;
}
.consulting__section__graph02__left li {
  border: 1px solid #4D2B79;
  height: 140px;
}
.consulting__section__graph02__left li p {
  font-size: 18px;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph02__left li p {
    font-size: 1.3vw;
  }
}
.consulting__section__graph02__left li span {
  display: block;
  font-size: 16px;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph02__left li span {
    font-size: 1.1vw;
  }
}
.consulting__section__graph02__right {
  width: 63.5%;
  background-color: #F5EFF1;
  padding: 60px 60px 0;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  border-radius: 5px;
}
.consulting__section__graph02__right h4 {
  font-size: 35px;
  text-align: center;
  color: #E8626D;
  margin-bottom: 60px;
  font-weight: 600;
}
.consulting__section__graph02__right ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.consulting__section__graph02__right ul li {
  width: 48%;
  border: 1px solid #4D2B79;
  height: 170px;
  margin-bottom: 60px;
  font-size: 24px;
  color: #E8626D;
  font-weight: 600;
  background-color: #fff;
  font-weight: 700;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph02__right ul li {
    font-size: 1.6vw;
  }
}
@media only screen and (max-width: 820px) {
  .consulting__section__graph02 {
    display: block;
  }
  .consulting__section__graph02 .consulting__section__graph02__left {
    width: 100%;
    max-width: 276px;
    margin: auto;
  }
  .consulting__section__graph02 .consulting__section__graph02__left li {
    font-size: 16px;
    height: 120px;
  }
  .consulting__section__graph02 .consulting__section__graph02__left li span {
    font-size: 14px;
  }
  .consulting__section__graph02 .graph_arr {
    display: block;
    margin: 0 auto 20px;
    transform: rotate(90deg);
  }
  .consulting__section__graph02 .consulting__section__graph02__right {
    width: 100%;
    padding-bottom: 60px;
  }
  .consulting__section__graph02 .consulting__section__graph02__right h4 {
    font-size: 24px;
    margin-bottom: 50px;
  }
  .consulting__section__graph02 .consulting__section__graph02__right ul li {
    font-size: 18px;
    height: 120px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 428px) {
  .consulting__section__graph02 .consulting__section__graph02__left {
    padding-bottom: 60px;
  }
  .consulting__section__graph02 .consulting__section__graph02__right {
    padding-left: 30px;
    padding-right: 30px;
    width: calc(100% - 40px);
    margin-left: 20px;
  }
  .consulting__section__graph02 .consulting__section__graph02__right ul {
    display: block;
  }
  .consulting__section__graph02 .consulting__section__graph02__right ul li {
    width: 100%;
  }
  .consulting__section__graph02 .graph_arr {
    width: 70px;
    position: relative;
    top: 5px;
  }
}
.consulting__section__graph03 {
  max-width: 1164px;
  width: 100%;
  margin: auto;
}
.consulting__section__graph03 ul {
  display: flex;
  justify-content: space-between;
}
.consulting__section__graph03 ul li {
  border-radius: 5px;
  width: 31%;
  padding: 35px 0 40px;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
}
.consulting__section__graph03 ul li img {
  width: 50%;
  max-width: 140px;
  margin: 0 auto 35px;
  display: block;
}
.consulting__section__graph03 ul li p {
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  text-align: center;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph03 ul li p {
    font-size: 2vw;
  }
}
.consulting__section__graph03 ul li p span {
  font-size: 20px;
  display: block;
}
@media only screen and (max-width: 1180px) and (min-width: 821px) {
  .consulting__section__graph03 ul li p span {
    font-size: 1.4vw;
  }
}
.consulting__section__graph03__01 {
  background: rgb(232, 190, 116);
  background: linear-gradient(135deg, rgb(232, 190, 116) 0%, rgb(203, 99, 111) 100%);
}
.consulting__section__graph03__02 {
  background: rgb(106, 32, 78);
  background: linear-gradient(135deg, rgb(106, 32, 78) 0%, rgb(56, 36, 77) 47%);
}
.consulting__section__graph03__03 {
  background: rgb(228, 124, 139);
  background: linear-gradient(135deg, rgb(228, 124, 139) 0%, rgb(219, 81, 106) 100%);
}
@media only screen and (max-width: 820px) {
  .consulting__section__graph03 ul li p {
    font-size: 20px;
  }
  .consulting__section__graph03 ul li p span {
    font-size: 18px;
  }
}
@media only screen and (max-width: 428px) {
  .consulting__section__graph03 ul {
    display: block;
    padding: 0 20px;
  }
  .consulting__section__graph03 ul li {
    width: 100%;
    margin-top: 25px;
    padding: 20px 0;
  }
  .consulting__section__graph03 ul li img {
    width: 100px;
    margin-bottom: 10px;
  }
  .consulting__section__graph03 ul li:first-child {
    margin-top: 0;
  }
}
.consulting__section01 {
  padding: 0 20px;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__left li {
  opacity: 0;
  transform: scale(0.95);
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__left li:nth-of-type(1) {
  transition: all 1.5s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__left li:nth-of-type(2) {
  transition: all 1.5s 0.6s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__left li:nth-of-type(3) {
  transition: all 1.5s 1.2s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__left li:nth-of-type(4) {
  transition: all 1.5s 1.8s ease;
}
.consulting__section01 .graph_arr {
  opacity: 0;
  transition: all 1.5s 2s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__right li {
  opacity: 0;
  transform: scale(0.95);
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__right li:nth-of-type(1) {
  transition: all 1.5s 2.4s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__right li:nth-of-type(2) {
  transition: all 1.5s 3s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__right li:nth-of-type(3) {
  transition: all 1.5s 3.6s ease;
}
.consulting__section01 .consulting__section__graph01 .consulting__section__graph01__right li:nth-of-type(4) {
  transition: all 1.5s 4.2s ease;
}
.consulting__section01.on .consulting__section__graph01 ul li {
  opacity: 1;
  transform: scale(1);
}
.consulting__section01.on .graph_arr {
  opacity: 1;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__left li {
  opacity: 0;
  transform: scale(0.95);
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__left li:nth-of-type(1) {
  transition: all 1.5s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__left li:nth-of-type(2) {
  transition: all 1.5s 0.6s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__left li:nth-of-type(3) {
  transition: all 1.5s 1.2s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__left li:nth-of-type(4) {
  transition: all 1.5s 1.8s ease;
}
.consulting__section02 .graph_arr {
  opacity: 0;
  transition: all 1.5s 2s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__right li {
  opacity: 0;
  transform: scale(0.95);
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__right li:nth-of-type(1) {
  transition: all 1.5s 2.4s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__right li:nth-of-type(2) {
  transition: all 1.5s 3s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__right li:nth-of-type(3) {
  transition: all 1.5s 3.6s ease;
}
.consulting__section02 .consulting__section__graph02 .consulting__section__graph02__right li:nth-of-type(4) {
  transition: all 1.5s 4.2s ease;
}
.consulting__section02.on .consulting__section__graph02 ul li {
  opacity: 1;
  transform: scale(1);
}
.consulting__section02.on .graph_arr {
  opacity: 1;
}
@media only screen and (max-width: 820px) {
  .consulting__section02 {
    padding: 0;
  }
  .consulting__section02 .graph_arr {
    display: block;
    margin: 0 auto -40px;
    transform: rotate(90deg);
  }
  .consulting__section02 .consulting__section__read {
    padding: 0 20px;
    margin-bottom: 50px;
  }
  .consulting__section02 .consulting__section__graph02__left li p {
    font-size: 16px;
  }
}
.consulting__section03 {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto 210px;
  border-radius: 5px;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  padding: 80px 20px;
}
@media only screen and (max-width: 820px) {
  .consulting__section03 {
    padding: 75px 20px;
    width: calc(100% - 40px);
    margin-bottom: 150px;
  }
}
.consulting__section03 .consulting__section__graph03 ul li {
  opacity: 0;
  transform: translateY(60px);
}
.consulting__section03 .consulting__section__graph03 ul li:nth-of-type(1) {
  transition: all 1.5s ease;
}
.consulting__section03 .consulting__section__graph03 ul li:nth-of-type(2) {
  transition: all 1.5s 0.6s ease;
}
.consulting__section03 .consulting__section__graph03 ul li:nth-of-type(3) {
  transition: all 1.5s 1.2s ease;
}
.consulting__section03 .consulting__section__graph03 ul li:nth-of-type(4) {
  transition: all 1.5s 1.8s ease;
}
.consulting__section03.on .consulting__section__graph03 ul li {
  opacity: 1;
  transform: translateY(0);
}
.consulting__section04 {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto 220px;
}
.consulting__section04__box {
  display: flex;
  justify-content: space-between;
}
.consulting__section04__box.on .consulting__section04__box__txt,
.consulting__section04__box.on .consulting__section04__box__img,
.consulting__section04__box.on .consulting__section04__box__graph {
  opacity: 1;
  transform: scale(1);
}
.consulting__section04__box__txt {
  width: 48%;
  padding: 50px;
  opacity: 0;
  transform: scale(0.95);
  transition: all 1.5s ease;
}
.consulting__section04__box__img {
  width: 52%;
  opacity: 0;
  transform: scale(0.95);
  transition: all 1.5s 1.2s ease;
}
.consulting__section04__box__img img {
  width: 100%;
}
.consulting__section04__box__img > p {
  margin-top: -35px;
  font-size: 16px;
  text-align: right;
  padding-right: 7%;
  line-height: 1;
}
@media only screen and (max-width: 820px) {
  .consulting__section04__box__img > p {
    margin-top: -25px;
    padding-left: 0;
    font-size: 12px;
  }
}
.consulting__section04__box__graph {
  width: 50%;
  opacity: 0;
  transform: scale(0.95);
  transition: all 1.5s 1.2s ease;
}
.consulting__section04__box__graph ul {
  background: rgb(246, 227, 234);
  background: linear-gradient(180deg, rgb(246, 227, 234) 0%, rgb(232, 229, 233) 100%);
  border-radius: 5px;
  margin-bottom: 8px;
  box-shadow: 12px 12px 24px rgba(61, 34, 81, 0.3);
  padding: 50px 40px;
}
.consulting__section04__box__graph ul li {
  font-size: 0;
  margin-top: 15px;
}
.consulting__section04__box__graph ul li:first-child {
  margin-top: 0;
}
.consulting__section04__box__graph ul li img {
  display: inline-block;
  vertical-align: middle;
  width: 50px;
  margin-right: 30px;
}
.consulting__section04__box__graph ul li span {
  display: inline-block;
  vertical-align: middle;
  font-size: 24px;
  font-weight: 600;
  width: calc(100% - 80px);
}
.consulting__section04__box__graph > p {
  font-size: 16px;
  text-align: right;
}
@media only screen and (max-width: 1200px) and (min-width: 821px) {
  .consulting__section04__box__graph ul {
    padding-left: 2vw;
    padding-right: 2vw;
  }
  .consulting__section04__box__graph ul li span {
    font-size: 1.9vw;
  }
}
.consulting__section04__box.bottom {
  margin-top: 250px;
}
.consulting__section04__box.bottom .consulting__section04__box__img {
  order: 0;
}
.consulting__section04__box.bottom .consulting__section04__box__txt {
  order: 1;
}
.consulting__section04__ttl {
  font-size: 30px;
  margin-bottom: 30px;
  padding-bottom: 45px;
  font-weight: 700;
  line-height: 1.2;
  border-bottom: 1px solid #53257D;
}
@media only screen and (max-width: 820px) {
  .consulting__section04__ttl {
    font-size: 20px;
    font-weight: 600;
  }
}
.consulting__section04__read {
  font-size: 18px;
}
@media only screen and (max-width: 820px) {
  .consulting__section04__read {
    font-size: 16px;
    font-weight: 500;
  }
}
@media only screen and (max-width: 820px) {
  .consulting__section04 {
    padding-left: 40px;
    padding-right: 40px;
  }
  .consulting__section04__box {
    display: block;
  }
  .consulting__section04__box__txt {
    width: 100%;
    padding: 0;
    margin-bottom: 40px;
  }
  .consulting__section04__box__graph {
    width: 100%;
  }
  .consulting__section04__box__graph ul {
    padding: 30px 20px;
  }
  .consulting__section04__box__graph ul li img {
    width: 45px;
    margin-right: 20px;
  }
  .consulting__section04__box__graph ul li span {
    width: calc(100% - 70px);
    font-size: 16px;
  }
  .consulting__section04__box__img {
    width: 100%;
  }
  .consulting__section04__box.bottom {
    margin-top: 150px;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .consulting .page_top .wrap {
    background: url(images/consulting/bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .consulting .page_top .wrap {
    background: url(images/consulting/bg_sp.jpg) no-repeat center;
    background-size: cover;
  }
}
.single-post-news .footer__banner {
  display: none;
}
@media only screen and (max-width: 428px) {
  .single-post-news #content {
    padding-top: 44px;
  }
}

@media only screen and (max-width: 428px) {
  .page-template-page-news #content {
    padding-top: 44px;
  }
}
.page-template-page-news .footer__banner {
  display: none;
}

.news-list {
  color: #53257D;
}
.news-list .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/news/bg.jpg), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/news/bg.jpg), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/news/bg.jpg), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  min-height: 360px;
}
.news-list__wrap {
  padding: 0 20px;
  max-width: 1250px;
  width: 100%;
  margin: 110px auto;
}
@media only screen and (max-width: 428px) {
  .news-list__wrap {
    margin-top: 55px;
  }
}
.news-list__head {
  margin-bottom: 80px;
  text-align: center;
}
.news-list__head form {
  font-size: 0;
}
.news-list__select {
  display: flex;
  justify-content: space-between;
  max-width: 764px;
  width: 100%;
  margin: auto;
}
@media only screen and (max-width: 428px) {
  .news-list__select {
    display: block;
  }
}
.news-list__select__close {
  width: 20px;
  margin: 0 50px;
}
@media only screen and (max-width: 428px) {
  .news-list__select__close {
    display: none;
  }
}
.news-list__select__icon {
  position: absolute;
  width: 9px;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}
.news-list__select__wrap {
  width: 280px;
  position: relative;
  display: inline-block;
}
.news-list__select__wrap:first-child {
  margin-right: 30px;
}
@media only screen and (max-width: 900px) {
  .news-list__select__wrap {
    width: 33%;
  }
  .news-list__select__wrap:first-child {
    margin-right: 3%;
  }
}
@media only screen and (max-width: 428px) {
  .news-list__select__wrap {
    width: 100%;
    max-width: 300px;
  }
  .news-list__select__wrap:first-child {
    margin-right: 0;
    margin-bottom: 20px;
  }
}
.news-list__select__wrap select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 20px;
  font-weight: 200;
  border: 1px solid #663366;
  border-radius: 5px;
  padding: 14px;
  color: #663366;
}
@media only screen and (max-width: 428px) {
  .news-list__select__wrap select {
    font-size: 14px;
    padding: 12px;
  }
}
.news-list__select__submit {
  border-radius: 5px;
  background-color: #B50C50;
  color: #fff;
  font-size: 16px;
  text-align: center;
  padding: 0 40px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  margin-left: 65px;
  font-weight: 500;
  box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.16);
  outline: none;
  border: none;
}
@media only screen and (max-width: 900px) {
  .news-list__select__submit {
    margin-left: 5%;
    width: 24%;
    padding: 0;
  }
}
@media only screen and (max-width: 428px) {
  .news-list__select__submit {
    display: block;
    margin: 30px auto 0;
    width: 110px;
    font-size: 11px;
    height: 36px;
    line-height: 36px;
  }
}
.news-list__li {
  margin-top: 50px;
}
.news-list__li:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 428px) {
  .news-list__li {
    margin-top: 35px;
  }
  .news-list__li:first-child {
    margin-top: 0;
  }
}
.news-list__li__head {
  margin-bottom: 20px;
}
@media only screen and (max-width: 428px) {
  .news-list__li__head {
    margin-bottom: 10px;
  }
}
.news-list__li__ttl {
  font-size: 25px;
}
@media only screen and (max-width: 428px) {
  .news-list__li__ttl {
    font-size: 18px;
    line-height: 1.8;
  }
}
.news-list__li__date {
  font-size: 22px;
  font-weight: 600;
  display: inline-block;
  min-width: 110px;
}
@media only screen and (max-width: 428px) {
  .news-list__li__date {
    font-size: 16px;
    min-width: 90px;
  }
}
.news-list__li__category {
  border-radius: 33px;
  font-size: 14px;
  text-align: center;
  color: #fff;
  padding: 0 35px;
  display: inline-block;
  margin-left: 30px;
  background-color: #B50C50;
  height: 33px;
  line-height: 33px;
}
@media only screen and (max-width: 428px) {
  .news-list__li__category {
    font-size: 10px;
    height: 24px;
    line-height: 24px;
    padding: 0 24px;
    border-radius: 24px;
    margin-left: 15px;
  }
}
.news-list .pagination {
  margin-top: 70px;
  width: 100%;
  text-align: center;
}
.news-list .pagination .page-numbers {
  width: 36px;
  height: 36px;
  display: inline-block;
  font-size: 14px;
  background-color: #E8E5E9;
  border-radius: 100%;
  overflow: hidden;
  line-height: 36px;
  margin: 0 10px;
  transition: all 0.5s ease;
  color: #B50C50;
}
.news-list .pagination .page-numbers:hover {
  background-color: #B50C50;
  color: #fff;
}
.news-list .pagination .page-numbers.current {
  background-color: #B50C50;
  color: #fff;
}
.news-list .pagination .page-numbers.dots {
  background-color: #E8E5E9;
  color: #B50C50;
}
.news-list .pagination .page-numbers.prev {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.news-list .pagination .page-numbers.prev:before {
  content: "";
  width: 13px;
  height: 13px;
  border-top: 2px solid #B50C50;
  border-left: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.news-list .pagination .page-numbers.prev:hover {
  background-color: #B50C50;
}
.news-list .pagination .page-numbers.prev:hover:before {
  border-color: #fff;
}
.news-list .pagination .page-numbers.next {
  color: transparent;
  position: relative;
  background-color: transparent;
}
.news-list .pagination .page-numbers.next:before {
  content: "";
  width: 13px;
  height: 13px;
  border-bottom: 2px solid #B50C50;
  border-right: 2px solid #B50C50;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%) rotate(-45deg);
  transition: all 0.5s ease;
}
.news-list .pagination .page-numbers.next:hover {
  background-color: #B50C50;
}
.news-list .pagination .page-numbers.next:hover:before {
  border-color: #fff;
}

.post_news__head {
  position: relative;
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .post_news__head {
    margin-bottom: 45px;
  }
}
.post_news__head__ttl {
  font-size: 30px;
  line-height: 1.2;
  padding-bottom: 40px;
  margin-bottom: 20px;
  position: relative;
}
.post_news__head__ttl:after {
  content: "";
  width: 100%;
  height: 8px;
  background: rgb(181, 12, 80);
  background: linear-gradient(270deg, rgb(181, 12, 80) 0%, rgb(69, 33, 80) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
@media only screen and (max-width: 768px) {
  .post_news__head__ttl {
    font-size: 20px;
    padding-bottom: 26px;
  }
  .post_news__head__ttl:after {
    height: 4px;
  }
}
.post_news__head__category {
  display: inline-block;
  vertical-align: middle;
  background-color: #B50C50;
  border-radius: 23px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  padding: 10px 45px;
  line-height: 1;
  margin-left: 35px;
}
@media only screen and (max-width: 768px) {
  .post_news__head__category {
    font-size: 12px;
    margin-left: 15px;
    padding: 8px 30px;
  }
}
.post_news__head__date {
  display: inline-block;
  vertical-align: middle;
  font-size: 25px;
  line-height: 1;
}
@media only screen and (max-width: 768px) {
  .post_news__head__date {
    font-size: 20px;
  }
}
.post_news__poster {
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .post_news__poster {
    margin-bottom: 45px;
  }
}
.post_news__poster img {
  vertical-align: top;
  width: 100%;
}
.post_news__contents {
  margin-bottom: 150px;
  padding-top: 50px;
}
@media only screen and (max-width: 768px) {
  .post_news__contents {
    margin-bottom: 100px;
  }
  .post_news__contents .gradient_btn {
    max-width: 250px;
  }
}
.post_news__contents__text {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .post_news__contents__text {
    font-size: 15px;
  }
}
.post_news__contents__text p {
  line-height: 1.5;
  margin-top: 30px;
}
.post_news__contents__text p:first-of-type {
  margin-top: 0;
}
.post_news__contents__text p strong {
  font-weight: 600;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .news-list .page_top .wrap {
    background: url(images/news/bg_tb.jpg) no-repeat center;
    background-size: cover;
  }
}
@media only screen and (max-width: 736px) {
  .news-list .page_top .wrap {
    background: url(images/news/bg_sp.jpg) no-repeat center;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
  }
}
.page-template-page-contact .footer__banner {
  display: none;
}

.contact {
  padding-bottom: 10px;
}
.contact .page_top {
  margin-bottom: 80px;
}
.contact .page_top .wrap {
  background: rgb(248, 233, 240); /* Old browsers */
  background: url(images/contact/bg.jpg), -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
  background: url(images/contact/bg.jpg), -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
  background: url(images/contact/bg.jpg), linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background-position: left center, center;
  background-repeat: no-repeat;
  background-size: cover;
}
.contact .document-request__contents__form {
  max-width: 1250px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 150px;
}

@media only screen and (max-width: 1280px) and (min-width: 736px) {
  .contact .page_top .wrap {
    background: url(images/contact/bg_tb.jpg) no-repeat center;
    background-size: cover;
    background-position: center, center;
  }
}
@media only screen and (max-width: 736px) {
  .contact .page_top .wrap {
    background: url(images/contact/bg_sp.jpg) no-repeat center;
    background: -moz-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgb(248, 233, 240) 0%, rgb(235, 233, 237) 30%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#f8e9f0", endColorstr="#ebe9ed",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  }
}
.entry-header {
  margin-top: 80px;
}
.entry-header .entry-title {
  margin-bottom: 60px;
  font-size: 40px;
  font-weight: bold;
  color: #E2335C;
  text-align: center;
}

@media only screen and (max-width: 736px) {
  .entry-header {
    margin-top: 40px;
  }
  .entry-header .entry-title {
    margin-bottom: 40px;
    font-size: 32px;
  }
}
