@charset "UTF-8";
/*====================================

  ■メディアクエリ

=====================================*/
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll; /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

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

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

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

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

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

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

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

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

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

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

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

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

input {
  border-radius: 0;
}

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

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

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

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

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

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

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

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

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

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

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

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

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

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  color: inherit;
}

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

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

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

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

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

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

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

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

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

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

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

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

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

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

/*====================================

共通

=====================================*/
* {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 0;
  margin: 0;
}

html {
  font-size: 62.5%;
  scroll-behavior: auto;
}

* {
  scroll-behavior: auto !important;
}

a {
  text-decoration: none;
}

body {
  font-family: YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.8;
  font-size: 1.4rem;
  color: #2b3f4c;
  background: #fff;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

.mb0 {
  margin-bottom: 0;
}

.mb30 {
  margin-bottom: 0;
}

.img__center {
  text-align: center;
  margin: 0 auto 30px;
}
.img__center img {
  display: inline-block;
}

.mediumHeadline01 {
  font-size: 2.2rem;
  text-align: left;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 20px;
  border-bottom: 1px solid #000;
}

.bgNone {
  background: none !important;
}
.bgNone::after {
  display: none !important;
}

#main_contents_in {
  clear: both;
  margin: 0 auto;
  padding: 0 20px 50px 20px;
  width: 100%;
  max-width: 1070px;
}
@media screen and (min-width: 768px) {
  #main_contents_in {
    margin: 0 auto;
    padding: 0 20px 50px;
  }
}

#main_contents_in_g {
  background: #f5f5f5;
  overflow: hidden;
  padding: 0 20px 50px 20px;
}
@media screen and (min-width: 768px) {
  #main_contents_in_g {
    padding: 0 0 50px 0;
  }
}

.fadein {
  opacity: 0;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

.fadein-up {
  -webkit-transform: translate(0, 60px);
          transform: translate(0, 60px);
}

.fadein-down {
  -webkit-transform: translate(0, -60px);
          transform: translate(0, -60px);
}

.fadein-left {
  -webkit-transform: translate(-60px, 0);
          transform: translate(-60px, 0);
}

.fadein-right {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}

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

.delay300 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.delay600 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.delay900 {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.target-mv01 {
  opacity: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  position: relative;
  z-index: 1;
}

.mv01 {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

/*
右から左
*/
.target-mv02 {
  opacity: 0;
  -webkit-transform: translateX(100px);
          transform: translateX(100px);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
}

.mv02 {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

/*
左から右
*/
.target-mv03 {
  opacity: 0;
  -webkit-transform: translateX(-100px);
          transform: translateX(-100px);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
}

.mv03 {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 2s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

/*
top-task-solution
*/
.target-mv04 .inview-mask-body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2a2929;
  -webkit-transform-origin: top left;
  transform-origin: top left;
}
.target-mv04 .inview-mask {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.target-mv04 .inview-mask-wrap {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.target-mv04 .inview-mask-textwrap {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
.target-mv04 .inview-mask .inview-mask-imgbody {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.target-mv04 .inview-mask .inview-mask-textbody {
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}

.mv04 .inview-mask-wrap {
  -webkit-transform: translate(0%, 0%) matrix(1, 0, 0, 1, 0, 0);
  transform: translate(0%, 0%) matrix(1, 0, 0, 1, 0, 0);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.mv04 .inview-mask-textwrap {
  -webkit-transform: translate(0%, 0%) matrix(1, 0, 0, 1, 0, 0);
          transform: translate(0%, 0%) matrix(1, 0, 0, 1, 0, 0);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
.mv04 .inview-mask .inview-mask-imgbody {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 0.65s;
  transition-delay: 0.65s;
}
.mv04 .inview-mask .inview-mask-textbody {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  transition: 1s cubic-bezier(0.1, 1, 0.1, 1);
  -webkit-transition-delay: 1.15s;
  transition-delay: 1.15s;
}

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

@media screen and (min-width: 768px) {
  #titlearea_s {
    height: 245px;
  }
}

@media screen and (min-width: 768px) {
  #titlearea_m {
    height: 452px;
  }
}

#titlearea_s h1 {
  font-size: 35px;
}
#titlearea_s .sub_title {
  color: #fff;
  font-size: 17px;
}
.titlearea_in {
  margin: 0 auto;
  padding: 40px 20px;
  position: relative;
  width: 100%;
  max-width: 1070px;
}
@media screen and (min-width: 768px) {
  .titlearea_in {
    padding: 80px 20px 0;
  }
}

#main_contents.ishii .titlearea_in {
  padding: 100px 20px;
}

.news #titlearea_s {
  background: url("../img/news/bg_titlearea.jpg") no-repeat 0 bottom;
  background-size: cover;
}

.contact #titlearea_s {
  background: url("../img/contact/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.download #titlearea_s {
  background: url("../img/download/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.event #titlearea_s {
  background: url("../img/event/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.works #titlearea_s {
  background: url("../img/works/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.column #titlearea_s {
  background: url("../img/column/bg_titlearea.png") no-repeat center center;
  background-size: cover;
}

.meza #titlearea_s {
  background: url("../img/meza/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.consultant #titlearea_s {
  background: url("../img/consultant/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.service #titlearea_s {
  background: url("../img/service/bg_titlearea.png") no-repeat center center;
  background-size: cover;
}

.philosophy #titlearea_s {
  background: url("../img/philosophy/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.privacy #titlearea_s {
  background: url("../img/privacy/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}

.ishii #titlearea_m {
  background: url("../img/consultant/bg_title_01.jpg") no-repeat 0 center;
}
@media screen and (max-width: 767px) {
  .ishii #titlearea_m {
    background-size: cover !important;
    background-position: 45% center !important;
  }
}
@media screen and (min-width: 768px) {
  .ishii #titlearea_m {
    background-size: cover;
  }
}

/*
.news #titlearea_s{
  background: url("../img/news/bg_titlearea.jpg") no-repeat 0 bottom;
  background-size: cover;
}
.contact #titlearea_s{
  background: url("../img/contact/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.download #titlearea_s{
  background: url("../img/download/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.event #titlearea_s{
  background: url("../img/event/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.works #titlearea_s{
  background: url("../img/works/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.column #titlearea_s{
  background: url("../img/column/bg_titlearea.png") no-repeat 0 center;
  background-size: cover;
}
.meza #titlearea_s{
  background: url("../img/meza/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.consultant #titlearea_s{
  background: url("../img/consultant/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.service #titlearea_s{
  background: url("../img/service/bg_titlearea.png") no-repeat 0 center;
  background-size: cover;
}
.philosophy #titlearea_s{
  background: url("../img/philosophy/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.privacy #titlearea_s{
  background: url("../img/privacy/bg_titlearea.jpg") no-repeat 0 center;
  background-size: cover;
}
.ishii #titlearea_m{
  background: url("../img/consultant/bg_title_01.jpg") no-repeat 0 center;
}
*/
.name_consultant_01 {
  background: #CA1122;
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  padding: 0px 5px;
  z-index: 1000;
  position: absolute;
  right: 30px;
  top: 60px;
}
@media screen and (min-width: 768px) {
  .name_consultant_01 {
    position: absolute;
    top: 130px;
    left: 562px;
    background: #CA1122;
    width: 228px;
    text-align: center;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    padding: 5px 0;
    z-index: 1000;
  }
}

.name_consultant_02 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  color: #000;
  padding: 0;
  margin: 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 0;
  position: absolute;
  right: 30px;
  top: 90px;
}
@media screen and (min-width: 768px) {
  .name_consultant_02 {
    position: absolute;
    top: 150px;
    left: auto;
    right: 0;
    background: rgba(0, 0, 0, 0.63);
    width: 346px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 40px;
    line-height: 1.2;
    font-weight: bold;
    color: #fff;
    padding: 50px 45px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (min-width: 768px) and (min-width: 1200px) {
  .name_consultant_02 {
    left: 582px;
  }
}
.name_consultant_02 span {
  font-size: 12px;
  letter-spacing: 7px;
  display: block;
}
@media screen and (min-width: 768px) {
  .name_consultant_02 span {
    font-size: 12px;
    letter-spacing: 7px;
    display: block;
  }
}

/*====================================
スクロールヒント
=====================================*/
.scroll-hint {
  margin: 0 auto 3rem;
}

.js-scrollable,
.js-scrollable-shadow {
  margin: 0;
}
.js-scrollable table,
.js-scrollable-shadow table {
  margin-bottom: 0 !important;
}
.js-scrollable-shadow table {
  background-color: transparent;
}

.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon-wrap.is-active {
  background-color: rgba(0, 0, 0, 0.3);
}

.scroll-hint-icon {
  top: calc(50% - 45px);
}

.box_privacy {
  border: 1px solid #CCC;
  padding: 25px;
  width: 100%;
  max-width: 444px;
  margin: 25px auto;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

/*====================================

  ■ページネーション

=====================================*/
/*archive.php ページネーション*/
.wp-pagenavi {
  text-align: center;
  margin: 30px auto 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.wp-pagenavi .screen-reader-text {
  display: none;
}
.wp-pagenavi .navigation {
  margin: 0 auto;
}
.wp-pagenavi a,
.wp-pagenavi span {
  border: none;
  padding: 6px 3px;
  margin: 0 7px 7px 0;
  border-color: #000 !important;
  background-color: #E9E9E9;
  color: #000;
  min-width: 30px;
  min-height: 30px;
  display: inline-block;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
  font-size: 13px;
}
.wp-pagenavi a:hover,
.wp-pagenavi span:hover {
  opacity: 1;
  border-color: #000 !important;
  background-color: #000 !important;
  color: #fff;
}
.wp-pagenavi a.first, .wp-pagenavi a.last,
.wp-pagenavi span.first,
.wp-pagenavi span.last {
  display: none;
}
.wp-pagenavi a.previouspostslink,
.wp-pagenavi span.previouspostslink {
  background: none;
  background-image: url(../img/maas/icon_prev_black.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 15px auto;
}
.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi span.previouspostslink:hover {
  background-image: url(../img/maas/icon_prev_white.svg);
}
.wp-pagenavi a.nextpostslink,
.wp-pagenavi span.nextpostslink {
  background: none;
  background-image: url(../img/maas/icon_next_black.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 15px auto;
}
.wp-pagenavi a.nextpostslink:hover,
.wp-pagenavi span.nextpostslink:hover {
  background-image: url(../img/maas/icon_next_white.svg);
}
.wp-pagenavi span.current {
  font-weight: normal;
  background-color: #000;
  color: #fff;
}
.wp-pagenavi span.extend {
  background: none !important;
  border: none !important;
  color: #000;
}
.wp-pagenavi span.pages {
  display: none;
  font-weight: normal;
  color: #000;
}

footer {
  background: #212121;
  color: #fff;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  footer {
    padding: 80px 20px;
  }
}

#footer_in {
  overflow: hidden;
  position: relative;
  margin: 0 auto;
  padding: 0;
  color: #fff;
}
@media screen and (min-width: 768px) {
  #footer_in {
    max-width: 1200px;
    width: 100%;
  }
}
#footer_in a {
  color: #fff;
}

.footer_logo {
  padding: 0;
  text-align: center;
  line-height: 1;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .footer_logo {
    padding: 45px 0 0 0;
    float: left;
    margin: 0 auto 10px;
  }
}

.footer_navi {
  line-height: 1.6;
  padding: 0 0 20px 0;
  overflow: hidden;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .footer_navi {
    float: right;
    width: 340px;
    padding: 0 0 45px 0;
  }
}

.footer_navi ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer_navi ul li {
  float: left;
  width: 50%;
  padding: 0;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .footer_navi ul li {
    width: 170px;
  }
}
.footer_navi ul li a {
  background: url("../img/ico_arrow_01.png") no-repeat 0 center;
  padding: 2px 0 2px 20px;
  font-size: 13px;
}
@media screen and (min-width: 768px) {
  .footer_navi ul li a {
    padding: 0 0 0 20px;
  }
}

.box_footer_copy {
  clear: both;
  border-top: 1px solid #ca1122;
  padding: 20px 0 0 0;
}
@media screen and (min-width: 768px) {
  .box_footer_copy {
    padding: 45px 0 0 0;
  }
}

.copy {
  font-size: 13px;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .copy {
    padding: 0 300px 0 0;
  }
}

.link_privacy {
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .link_privacy {
    width: 300px;
    text-align: right;
    float: right;
  }
}
.link_privacy a {
  padding: 0 0 0 14px;
  background: url("../img/ico_arrow_04.png") no-repeat 0 center;
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .hidden-xs {
    display: none;
  }
}

@media screen and (max-width: 991px) {
  .hidden-sm {
    display: none;
  }
}

@media screen and (max-width: 1199px) {
  .hidden-md {
    display: none;
  }
}

@media screen and (max-width: 1920px) {
  .hidden-lg {
    display: none;
  }
}

.visible-xs {
  display: none;
}
@media screen and (max-width: 767px) {
  .visible-xs {
    display: block;
  }
}

.visible-sm {
  display: none;
}
@media screen and (max-width: 991px) {
  .visible-sm {
    display: block;
  }
}

.visible-md {
  display: none;
}
@media screen and (max-width: 1199px) {
  .visible-md {
    display: block;
  }
}

.visible-lg {
  display: none;
}
@media screen and (max-width: 1920px) {
  .visible-lg {
    display: block;
  }
}

header h1 {
  padding: 0;
  width: 237px;
  height: auto;
  float: left;
  margin: 16px 0 0 10px;
}
header h1 a {
  display: inline-block;
}
header h1 a img {
  vertical-align: top;
}

@media screen and (min-width: 541px) {
  header * {
    vertical-align: top;
  }
  header h1 {
    padding: 0 0 0 0;
    width: 237px;
    height: auto;
    float: left;
    margin: 26px 0 0 10px;
  }
}
.fb_iframe_widget span,
.fb_iframe_widget iframe {
  height: 21px !important;
}

/*====================================

フェードイン処理

=====================================*/
.fade-wrap > * {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 1s;
  transition: 1s;
}

.fade-up {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 1s;
  transition: 1s;
}

.fade-right {
  opacity: 0;
  -webkit-transform: translateX(50px);
          transform: translateX(50px);
  -webkit-transition: 1s;
  transition: 1s;
}

.fade-up--stop {
  opacity: 0;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 1s;
  transition: 1s;
}

.delay1 {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

.delay2 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

.delay3 {
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s;
}

.delay4 {
  -webkit-transition-delay: 2s;
  transition-delay: 2s;
}

@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header-custom #header_in {
    max-width: none;
    min-width: auto;
  }
  .header-custom #globalnavi {
    position: absolute;
    top: auto;
    left: auto;
    bottom: 13px;
    right: 7px;
    width: calc(100% - 250px);
    max-width: 480px;
  }
  .header-custom #globalnavi ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    float: none;
    width: 100%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0;
  }
  .header-custom #globalnavi ul li {
    padding: 0;
    float: none;
    line-height: 1;
    list-style: none;
  }
  .header-custom #globalnavi ul li a {
    border-bottom: 1px solid rgba(255, 255, 255, 0);
  }
  .header-custom #globalnavi ul li a:hover {
    border-bottom: 1px solid #CA1122;
  }
  .header-custom .header_navi {
    position: absolute;
    top: 10px;
    right: 4px;
    width: 100%;
    max-width: 520px;
  }
  .header-custom .header_navi ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0;
  }
  .header-custom .header_navi ul li {
    width: 30%;
    margin: 0 1%;
    float: none;
    list-style: none;
  }
  .header-custom .header_navi ul li a {
    padding: 8px 0 8px 15px;
  }
}
@media screen and (min-width: 541px) and (max-width: 750px) {
  header h1 {
    padding: 0 0 0 0;
    width: 152px;
    height: auto;
    float: left;
    margin: 49px 0 0 10px;
  }
  header h1 a {
    line-height: 1;
  }
  .header-custom #globalnavi {
    width: calc(100% - 190px);
  }
}
@media screen and (min-width: 768px) {
  #globalnavi ul li {
    padding: 0 30px 0 0;
  }
}

@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header-custom .header_navi ul li.line-2 a.ico_event {
    background-position: 15px center;
  }
  .header-custom .header_navi ul li.line-2 a.ico_event br {
    display: none;
  }
}

.header-custom .header_navi ul li {
  list-style: none;
}
@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header-custom .header_navi ul li {
    width: auto;
  }
}
@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header-custom .header_navi ul li a {
    padding: 8px 8px 8px 35px;
    background-position: 15px center;
  }
}

.header_navi ul li {
  list-style: none;
}
@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header_navi ul li .line-2 a.ico_event {
    background-position: 15px center;
  }
}
@media screen and (min-width: 541px) and (max-width: 1400px) {
  .header_navi ul li .line-2 br {
    display: none !important;
  }
}

/*====================================

  ■メディアクエリ

=====================================*/
html,
body {
  min-width: 100%;
}

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

html {
  font-size: 62.5%;
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

abbr[title], abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin: 0;
}

li {
  /*
  list-style: none;
  */
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd,
blockquote {
  margin: 0;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  text-decoration: none;
  background-color: transparent;
}
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):hover {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button {
  text-transform: none;
}

select {
  text-transform: none;
  word-wrap: normal;
}

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

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

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

input[type=radio], input[type=checkbox] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}
input[type=date], input[type=time], input[type=datetime-local], input[type=month] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/*====================================

  ■基本設定

=====================================*/
html {
  font-size: 62.5%;
}

.f-ryumin {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 300;
}

.f-kakugo {
  font-family: "ヒラギノ角ゴ Pro W7", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 400;
}

.f-yumin {
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-weight: 400;
}

.f-yugo {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 500;
}

.f-dancing {
  font-family: "Dancing Script", cursive;
  font-weight: 400;
}

.f-libre {
  font-family: "Libre Baskerville", serif;
  font-weight: 400;
}

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

iframe {
  max-width: 100%;
}

a {
  color: #333;
  display: inline-block;
}

.sp_view {
  display: none;
}

.pc_view {
  display: block;
}

.sp_item {
  display: none;
}

.pc_item {
  display: initial;
}

.grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.grid.is-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.grid.is-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.grid.is-middle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.grid.is-bottom {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.grid.is-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.grid.is-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.grid.is-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.grid.is-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.grid.is-around {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.width-540 {
  width: 568px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.width-720 {
  width: 748px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.width-1004 {
  width: 1032px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.width-1120 {
  width: 1148px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.width-1200 {
  width: 1228px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.width-1400 {
  width: 1428px;
  max-width: 100%;
  margin: auto;
  padding: 0 14px;
}

.focused:invalid {
  border: solid 1px #ff1717 !important;
}
.focused:valid {
  border: solid 1px #569c56;
}

:disabled {
  opacity: 0.2;
  cursor: not-allowed !important;
}

/*=============================

  共通

=============================*/
.pagelink {
  margin-top: -30px;
  padding-top: 30px;
}

/*固定ナビ*/
.nav-close {
  display: block;
  position: fixed;
  top: 120px;
  right: 0px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  text-align: center;
  z-index: 10;
  background: #bb1222;
  border: 1px solid #fff;
  border-right: none;
}
@media screen and (min-width: 768px) {
  .nav-close {
    top: 200px;
  }
}
.nav-close span {
  color: #fff;
  display: inline-block;
  height: 40px;
  width: 40px;
}
.nav-close span::before {
  content: "";
  display: inline-block;
  background: url(../img/maas/icon_rightarrow_white_re.svg);
  background-position: center center;
  background-repeat: no-repeat;
  width: 40px;
  height: 40px;
}
.nav-close.off + #scrollSpy {
  right: 0;
}
.nav-close.off span::before {
  content: "";
  display: inline-block;
  background: url(../img/maas/icon_rightarrow_white.svg);
  background-position: center center;
  background-repeat: no-repeat;
  width: 30px;
  height: 40px;
  margin: -1px 5px 0 0;
}

#scrollSpy {
  display: block;
  position: fixed;
  right: -100%;
  top: 74px;
  bottom: auto;
  padding: 40px 0 15px 10px;
  -webkit-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.01);
          box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.01);
  width: 224px;
  z-index: 9;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  #scrollSpy {
    top: 154px;
  }
}
#scrollSpy > a {
  position: relative;
  display: inline-block;
  margin-bottom: 15px;
  width: 100%;
}
#scrollSpy ul {
  background: #bb1222;
  margin: 0;
  padding: 50px 0 0;
}
#scrollSpy ul li {
  width: 100%;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  text-align: left;
  padding: 1px 2px;
  list-style: none;
}
#scrollSpy ul li a {
  background: #680710;
  color: #fff;
  display: inline-block;
  font-size: 1.4rem;
  padding: 10px 15px;
  width: 100%;
  border-right: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#scrollSpy ul li a:hover {
  background: #333;
  opacity: 1;
}

.red {
  color: #CA1122;
}

.large-title01 {
  margin: 0 auto 20px;
  position: relative;
  z-index: 1;
}
.large-title01.white * {
  color: #fff;
}
.large-title01 .main_text {
  display: block;
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.3;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .large-title01 .main_text {
    font-size: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .large-title01 .main_text {
    font-size: 4.4rem;
  }
}
.large-title01 .main_text .big {
  font-size: 3.6rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .large-title01 .main_text .big {
    font-size: 4.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .large-title01 .main_text .big {
    font-size: 5.6rem;
  }
}
.large-title01 .main_text .small {
  font-size: 1.6rem;
  display: block;
}
@media screen and (min-width: 768px) {
  .large-title01 .main_text .small {
    font-size: 2.2rem;
    display: inline-block;
    margin-left: 5px;
  }
}
@media screen and (min-width: 768px) {
  .large-title01 .main_text br {
    display: none;
  }
}
.large-title01 .main_text br.br_cus {
  display: block;
}
.large-title01 .sub_text {
  display: block;
  text-align: center;
  font-size: 1.5rem;
  margin: 0 auto 15px;
}
@media screen and (min-width: 768px) {
  .large-title01 .sub_text {
    font-size: 1.6rem;
  }
}
.large-title01 img {
  display: block;
  max-width: 67px;
  margin: 0 auto;
}

/*=============================

  メインコンテンツ

=============================*/
#eyecatch.eyecatch-top {
  min-height: auto;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top {
    height: 500px;
  }
}
#eyecatch.eyecatch-top .eyecatch-top-inner {
  position: relative;
  width: 100%;
  height: 100%;
}
#eyecatch.eyecatch-top .eyecatch-top-cont {
  position: relative;
  z-index: 1;
  padding: 30px 15px 110px;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont {
    position: absolute;
    z-index: 5;
    top: 50%;
    left: 50%;
    bottom: auto;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
    max-width: 1215px;
    padding: 0 240px 0 15px;
  }
}
@media screen and (min-width: 1200px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont {
    padding: 0 450px 0 15px;
  }
}
#eyecatch.eyecatch-top .eyecatch-top-cont .top-catch-copy {
  font-size: 2.5rem;
  color: #fff;
  line-height: 1.2;
  font-weight: 500;
  display: inline-block;
  position: relative;
  margin: 15px 0px;
  padding: 0 30px 0 0;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont .top-catch-copy {
    padding: 0;
    font-size: 2.7rem;
  }
}
@media screen and (min-width: 1200px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont .top-catch-copy {
    font-size: 3.7rem;
  }
}
#eyecatch.eyecatch-top .eyecatch-top-cont .eyecatch-top-cont-text {
  opacity: 0;
  -webkit-animation: eyecatch-top-cont-text_animate 0.5s ease 1.25s forwards;
          animation: eyecatch-top-cont-text_animate 0.5s ease 1.25s forwards;
}
#eyecatch.eyecatch-top .eyecatch-top-cont .eyecatch-top-cont-text .eyecatch-top-cont-text-inner p {
  font-size: 1.4rem;
  font-weight: normal;
  color: #fff;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont .eyecatch-top-cont-text .eyecatch-top-cont-text-inner p {
    font-size: 1.6rem;
  }
}
#eyecatch.eyecatch-top .eyecatch-top-cont .eyecatch-top-cont-text .eyecatch-top-cont-text-inner p .visible-xs {
  display: block;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .eyecatch-top-cont .eyecatch-top-cont-text .eyecatch-top-cont-text-inner p .visible-xs {
    display: none;
  }
}
#eyecatch.eyecatch-top .top-catch-link {
  position: absolute;
  left: 5%;
  bottom: 5%;
  z-index: 5;
  width: 90%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .top-catch-link {
    top: 50%;
    left: 50%;
    bottom: auto;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    display: block;
    width: 100%;
    max-width: 1215px;
    padding: 0 15px 0 0;
  }
}
#eyecatch.eyecatch-top .top-catch-link a {
  font-size: 1.4rem;
  width: calc(50% - 15px);
  padding-right: 0;
  padding-left: 0;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .top-catch-link a {
    width: 100%;
    max-width: 210px;
    font-size: 2rem;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-right: 0;
    margin-left: auto;
  }
}
@media screen and (min-width: 1200px) {
  #eyecatch.eyecatch-top .top-catch-link a {
    max-width: 300px;
  }
}
#eyecatch.eyecatch-top .top-catch-link a:first-child {
  margin-bottom: 15px;
  margin-right: 0;
  margin-left: auto;
}
#eyecatch.eyecatch-top .top-catch-link a span {
  padding: 0 0 0 24px;
}
@media screen and (min-width: 992px) {
  #eyecatch.eyecatch-top .top-catch-link a span {
    padding: 0 0 0 35px;
  }
}
#eyecatch.eyecatch-top .top-catch-link a span::before {
  width: 18px;
  height: 15px;
}
@media screen and (min-width: 992px) {
  #eyecatch.eyecatch-top .top-catch-link a span::before {
    width: 27px;
    height: 22px;
  }
}
#eyecatch.eyecatch-top .eyecatch-slide {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#eyecatch.eyecatch-top .eyecatch-slide .eyecatch-slide-item picture source,
#eyecatch.eyecatch-top .eyecatch-slide .eyecatch-slide-item picture img {
  min-width: 120%;
  margin-left: -10%;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .eyecatch-slide .eyecatch-slide-item picture source,
  #eyecatch.eyecatch-top .eyecatch-slide .eyecatch-slide-item picture img {
    min-height: 500px;
    width: auto;
    max-width: none;
    min-width: 100%;
    margin-left: 0;
  }
}
#eyecatch.eyecatch-top .slick-dots {
  margin: 0;
  bottom: 2px;
}
@media screen and (min-width: 768px) {
  #eyecatch.eyecatch-top .slick-dots {
    bottom: 10px;
  }
}
#eyecatch.eyecatch-top .slick-dots li {
  width: 10px;
  height: 10px;
  margin: 0 10px;
}
#eyecatch.eyecatch-top .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 5px;
  height: 20px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
#eyecatch.eyecatch-top .slick-dots li button::before {
  content: "";
  width: 20px;
  height: 5px;
  border-radius: 0;
  background: #ffffff;
  opacity: 1;
}
#eyecatch.eyecatch-top .slick-dots li.slick-active button::before {
  background: #ca1122;
}

/*=============================

  フッター

=============================*/
#footer .copyright {
  font-size: 1.1rem;
  color: #fff;
  background: #111;
  text-align: center;
  padding: 19.5px;
}

/*=============================

Slick基本設定

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

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

  &:focus {
    outline: none;
  }

  &.dragging {
    cursor: pointer;
    cursor: hand;
  }
}

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

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

  &:before {
    display: table;
    content: "";
  }

  &:after {
    display: table;
    content: "";
    clear: both;
  }
}

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

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

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

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

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

  &.dragging img {
    pointer-events: none;
  }
}

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

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

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

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

.slick-slider {
  &:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
  }

  .slick-list,
  .slick-track {
    width: 100%;
    height: 100%;
  }
}

.slick-prev,
.slick-next {
  display: block;
  width: 11.5vw;
  height: 11.5vw;
  border: none;
  text-indent: -9999px;
  cursor: pointer;
  position: absolute !important;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  background: transparent;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 100%;
  outline: none;
}

.slick-prev:hover,
.slick-next:hover {
  opacity: 0.7;
}

.slick-prev:before,
.slick-next:before {
  content: "";
  position: absolute;
  width: 3.5vw;
  height: 3.5vw;
  top: calc((100% - 3.5vw) / 2);
  border-right: 3px solid variable.$color-white;
  border-bottom: 3px solid variable.$color-white;
}

.slick-prev {
  left: -6%;

  &:before {
    transform: rotate(135deg) !important;
    left: calc((100% - 2.5vw) / 2);
  }
}

.slick-next {
  right: -6%;

  &:before {
    transform: rotate(-45deg) !important;
    left: calc((100% - 4.5vw) / 2);
  }
}

.slick-dots {
  text-align: center;
  padding: 0;
  height: auto;
  width: 24px;
  position: absolute;
  top: calc((100vh - 81px) / 2);
  right: 3%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;

  .swiper-pagination-bullet {
    display: inline-block;
    border: none;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: none;
    margin: 7px;
    padding: 0;

    &:last-child {
      margin-bottom: 0;
    }
  }

  li button {
    text-indent: -9999px;
    border: none;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: none;
    margin: 5px;
    padding: 0;
  }
}

*/
body,
html {
  /*overflow-x: hidden;*/
}

.js-line_animate {
  position: relative;
  overflow: hidden;
  display: inline-block;
  /*width: 100%;*/
}
.js-line_animate .before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 0;
  height: 100%;
  background: #ccc;
  z-index: 11;
  top: 0;
  left: 0;
  -webkit-animation: js-line_animate 2s ease 0.5s forwards;
          animation: js-line_animate 2s ease 0.5s forwards;
}
.js-line_animate.sc_item .before {
  -webkit-animation: js-line_animate 2s ease 0s forwards;
          animation: js-line_animate 2s ease 0s forwards;
}

.js-line_animate_target {
  display: inline-block;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-animation: js-line_animate_before 1s ease 0.62s forwards;
          animation: js-line_animate_before 1s ease 0.62s forwards;
}
.js-line_animate_target.sc_item {
  animation: js-line_animate_before 0s ease 0.5s forwards;
  -webkit-animation: js-line_animate_before 0s ease 0.5s forwards;
}

.eyecatch-top-cont-text {
  opacity: 0;
  -webkit-animation: eyecatch-top-cont-text_animate 0.5s ease 0.62s forwards;
          animation: eyecatch-top-cont-text_animate 0.5s ease 0.62s forwards;
}

@-webkit-keyframes js-line_animate {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    width: 100%;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  99.9%, to {
    width: 200%;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

@keyframes js-line_animate {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    width: 100%;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  99.9%, to {
    width: 200%;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@-webkit-keyframes js-line_animate_before {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  99.9%, to {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
@keyframes js-line_animate_before {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  99.9%, to {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
@-webkit-keyframes eyecatch-top-cont-text_animate {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  99.9%, to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes eyecatch-top-cont-text_animate {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  99.9%, to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.large_title01 {
  margin: 0 auto 30px;
}
.large_title01 .main_text,
.large_title01 .sub_text {
  display: block;
}
.large_title01 img {
  display: block;
  max-width: 76px;
  margin: 0 auto;
}

.top-about {
  background: #e1e1e1;
  padding: 60px 0;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .top-about {
    padding: 100px 0;
  }
}
.top-about > div,
.top-about > p {
  position: relative;
  z-index: 1;
}
.top-about .large-title01 .main_text .big {
  min-width: 150px;
  display: inline-block;
  position: relative;
  font-size: 5rem;
}
@media screen and (min-width: 768px) {
  .top-about .large-title01 .main_text .big {
    min-width: 170px;
    font-size: 5.6rem;
  }
}
.top-about .large-title01 .main_text .big .yomi {
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  font-size: 1rem;
  width: 100%;
  font-weight: bold;
  letter-spacing: -1px;
}
@media screen and (min-width: 768px) {
  .top-about .large-title01 .main_text .big .yomi {
    font-size: 1.2rem;
  }
}
.top-about::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 142px;
  height: 144px;
  background: url(../img/maas/sp_maas_sabbg.png);
}
@media screen and (min-width: 768px) {
  .top-about::after {
    width: 1389px;
    height: 733px;
    background: url(../img/maas/maas_sabbg.png);
  }
}
.top-about p {
  text-align: left;
  font-size: 1.4rem;
  padding: 0 20px;
  margin: 0 auto 30px;
}
@media screen and (min-width: 768px) {
  .top-about p {
    text-align: center;
    padding: 0;
    margin: 0 auto 50px;
    font-size: 1.6rem;
  }
}
.top-about .top-about-list {
  max-width: 900px;
  margin: 0 auto;
}
.top-about .top-about-list dt {
  background: #c2a15f;
  background: -webkit-gradient(linear, left top, right top, from(#c2a15f), to(#aa812f));
  background: linear-gradient(90deg, #c2a15f 0%, #aa812f 100%);
  text-align: center;
  color: #fff;
  padding: 10px 10px 8px;
  font-size: 2rem;
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-weight: 400;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .top-about .top-about-list dt {
    font-size: 3.2rem;
  }
}
.top-about .top-about-list dd {
  padding: 25px;
  background: rgba(255, 255, 255, 0.7);
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .top-about .top-about-list dd {
    font-size: 1.7rem;
    padding: 30px 15px 30px 90px;
  }
}
.top-about .top-about-list dd div {
  position: relative;
  padding: 0 0 7px 25px;
}
@media screen and (min-width: 768px) {
  .top-about .top-about-list dd div {
    padding: 0 0 0 25px;
  }
}
.top-about .top-about-list dd div::before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 18px;
  background: url(../img/maas/check-mark1.svg);
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 2px;
}

.top-task {
  background: #151414;
  color: #fff;
  padding: 130px 0 111px;
  position: relative;
}
.top-task:before {
  content: "";
  position: absolute;
  bottom: -120px;
  left: 0;
  width: 100%;
  border-bottom: 60px solid transparent;
  border-right: 45vw solid transparent;
  border-left: 50vw solid #151414;
  border-top: 60px solid #151414;
}
.top-task .top-task-ttl {
  font-size: 3.6rem;
  text-align: center;
  line-height: 1.1;
  margin-bottom: 115px;
  letter-spacing: 1px;
  position: relative;
}
.top-task .top-task-ttl span {
  background: #151414;
  position: relative;
  display: inline-block;
  padding: 0 60px;
}
.top-task .top-task-ttl:before {
  content: "";
  position: absolute;
  top: calc((100% - 1px) / 2);
  left: 0;
  width: 100%;
  height: 1px;
  background: #707070;
}
.top-task .top-task-solution .top-task-solution-bg-text {
  position: absolute;
  top: -176px;
  right: -20vw;
  font-size: 24.4rem;
  color: #2d2b2b;
  line-height: 1;
  z-index: -1;
}
.top-task .top-task-inner {
  width: 87%;
  margin: 0 auto 85px;
  position: relative;
  z-index: 1;
}
.top-task .top-task-inner .top-task-subttl {
  font-size: 4.6rem;
  text-align: center;
  margin-bottom: 20px;
}
.top-task .top-task-inner p {
  line-height: 1.65;
}
.top-task .top-task-solution {
  position: relative;
  z-index: 0;
  color: #fff;
}
.top-task .top-task-solution .left,
.top-task .top-task-solution .right {
  overflow: hidden;
}
.top-task .top-task-solution .inview-mask {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.top-task .top-task-solution .inview-mask .inview-mask-body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2a2929;
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
.top-task .top-task-solution .left {
  width: 574px;
  position: relative;
}
.top-task .top-task-solution .right {
  width: 554px;
  position: absolute;
  right: 0;
  top: 38px;
}
.top-task .top-task-solution .right .inview-mask-textwrap {
  padding: 65px 55px 66px;
  background: #2a2929;
}
.top-task .top-task-solution .right .top-task-solution-ttl {
  display: block;
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 9px;
  margin-bottom: 45px;
}
.top-task .top-task-solution .right p {
  font-size: 1.5rem;
  text-align: justify;
  line-height: 1.75;
}
.top-task .top-task-solution .right p span {
  font-size: 2.3rem;
  font-weight: bold;
  display: block;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1;
}
.top-task .top-task-resolution {
  margin-top: 170px;
}
.top-task .top-task-resolution-ttl {
  font-size: 3.3rem;
  text-align: center;
  margin-bottom: 50px;
  line-height: 1.2;
}
.top-task .top-task-resolution-ttl.mini {
  margin-bottom: 25px;
}
.top-task .top-task-resolution-ttl span {
  font-size: 2.5rem;
}
.top-task .top-task-resolution-list {
  margin-left: -20px;
  margin-bottom: 107px;
  color: #fff;
}
.top-task .top-task-resolution-list li {
  padding-left: 20px;
  padding-bottom: 20px;
}
.top-task .top-task-resolution-list li .top-task-resolution-list-inner {
  background: #a51e23;
  position: relative;
  font-size: 2rem;
  width: 321px;
  height: 160px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1.3;
  font-weight: bold;
}
.top-task .top-task-resolution-list li .top-task-resolution-list-inner span {
  position: absolute;
  font-size: 2.8rem;
  left: 0;
  top: 0;
  width: 46px;
  height: 46px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #8c1419;
}
.top-task .top-task-resolution-secret {
  border: 2px solid #a51e23;
  background: #fff;
  padding: 60px 50px;
  color: #333;
  position: relative;
  z-index: 1;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-arrow {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: -100px;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-left {
  width: 306px;
  margin-right: 38px;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right {
  width: calc(100% - 344px);
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right p {
  font-size: 1.4rem;
  line-height: 1.6;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right-ttl.sp_view {
  display: none;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-left {
  font-size: 2.8rem;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-left img {
  margin-right: 20px;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-right {
  font-size: 2.6rem;
  text-align: right;
  letter-spacing: 2px;
  margin-bottom: 30px;
}
.top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-right span {
  font-size: 1.3rem;
  color: #a51e23;
  display: block;
  font-weight: bold;
  letter-spacing: 1px;
}
.top-task .form-wrap {
  margin-top: 65px;
}
.top-task .form-wrap .form-ttl {
  font-size: 3.2rem;
  text-align: center;
}
.top-task .form-wrap .form-ttl.left {
  text-align: left;
}
.top-task .form-wrap .form-wrap-inner {
  background: #2a2929;
  padding: 120px 135px 80px;
  position: relative;
}
.top-task .form-wrap .form-wrap-inner .oyo_document_image {
  position: absolute;
  width: 200px;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}
.top-task .form-wrap.form-wrap-bg-gray .form-wrap-inner {
  background: #eee;
}
.top-task .form-wrap.form-wrap-bg-gray .form-wrap-inner .free_ride_image {
  position: absolute;
  width: 200px;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}

.top-organization {
  padding: 175px 0 286px;
}
.top-organization .top-task-solution .top-task-solution-bg-text {
  position: absolute;
  top: -176px;
  right: -43vw;
  font-size: 24.4rem;
  color: #eee;
  line-height: 1;
  z-index: -1;
}
.top-organization .top-task-inner {
  width: 87%;
  margin: 0 auto 85px;
  position: relative;
  z-index: 1;
}
.top-organization .top-task-inner .top-task-subttl {
  font-size: 4.6rem;
  text-align: center;
  margin-bottom: 20px;
}
.top-organization .top-task-inner p {
  line-height: 1.65;
}
.top-organization .top-task-solution {
  position: relative;
  z-index: 0;
  color: #fff;
}
.top-organization .top-task-solution .left,
.top-organization .top-task-solution .right {
  overflow: hidden;
}
.top-organization .top-task-solution .inview-mask {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.top-organization .top-task-solution .inview-mask .inview-mask-body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2a2929;
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
.top-organization .top-task-solution .left {
  width: 574px;
}
.top-organization .top-task-solution .right {
  width: 554px;
  position: absolute;
  right: 0;
  top: 38px;
}
.top-organization .top-task-solution .right .inview-mask-textwrap {
  padding: 65px 55px 66px;
  background: #2a2929;
}
.top-organization .top-task-solution .right .top-task-solution-ttl {
  display: block;
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 9px;
  margin-bottom: 45px;
}
.top-organization .top-task-solution .right p {
  font-size: 1.5rem;
  text-align: justify;
  line-height: 1.75;
}
.top-organization .top-task-solution .right p span {
  font-size: 2.3rem;
  font-weight: bold;
  display: block;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1;
}
.top-organization .top-task-resolution {
  margin-top: 170px;
}
.top-organization .top-task-resolution-ttl {
  font-size: 3.3rem;
  text-align: center;
  margin-bottom: 50px;
  line-height: 1.2;
}
.top-organization .top-task-resolution-ttl.mini {
  margin-bottom: 25px;
}
.top-organization .top-task-resolution-ttl span {
  font-size: 2.5rem;
}
.top-organization .top-task-resolution-list {
  margin-left: -20px;
  margin-bottom: 107px;
  color: #fff;
}
.top-organization .top-task-resolution-list li {
  padding-left: 20px;
  padding-bottom: 20px;
}
.top-organization .top-task-resolution-list li .top-task-resolution-list-inner {
  background: #a51e23;
  position: relative;
  font-size: 2rem;
  width: 321px;
  height: 160px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1.3;
  font-weight: bold;
}
.top-organization .top-task-resolution-list li .top-task-resolution-list-inner span {
  position: absolute;
  font-size: 2.8rem;
  left: 0;
  top: 0;
  width: 46px;
  height: 46px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #8c1419;
}
.top-organization .top-task-resolution-secret {
  border: 2px solid #a51e23;
  background: #fff;
  padding: 60px 50px;
  color: #333;
  position: relative;
  z-index: 1;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-arrow {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: -100px;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-left {
  width: 306px;
  margin-right: 38px;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right {
  width: calc(100% - 344px);
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right p {
  font-size: 1.4rem;
  line-height: 1.6;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right-ttl.sp_view {
  display: none;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-left {
  font-size: 2.8rem;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-left img {
  margin-right: 20px;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-right {
  font-size: 2.6rem;
  text-align: right;
  letter-spacing: 2px;
  margin-bottom: 30px;
}
.top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-right span {
  font-size: 1.3rem;
  color: #a51e23;
  display: block;
  font-weight: bold;
  letter-spacing: 1px;
}
.top-organization .form-wrap {
  margin-top: 65px;
}
.top-organization .form-wrap .form-ttl {
  font-size: 3.2rem;
  text-align: center;
}
.top-organization .form-wrap .form-ttl.left {
  text-align: left;
}
.top-organization .form-wrap .form-wrap-inner {
  background: #2a2929;
  padding: 120px 135px 80px;
  position: relative;
}
.top-organization .form-wrap .form-wrap-inner .oyo_document_image {
  position: absolute;
  width: 200px;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}
.top-organization .form-wrap.form-wrap-bg-gray .form-wrap-inner {
  background: #eee;
}
.top-organization .form-wrap.form-wrap-bg-gray .form-wrap-inner .free_ride_image {
  position: absolute;
  width: 200px;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}

/*当社のモビリティ×エネルギーコンサルティング3つの戦略領域?*/
.top-strategy {
  overflow: hidden;
  padding: 40px 0 20px;
}
@media screen and (min-width: 768px) {
  .top-strategy {
    padding: 80px 0 55px;
  }
}
.top-strategy .top-strategy-ttl {
  text-align: center;
  margin: 0 auto 40px;
  position: relative;
  z-index: 1;
}
.top-strategy .top-strategy-ttl span {
  display: inline-block;
  position: relative;
  z-index: 1;
  background-color: #fff;
  color: #000;
  font-size: 2.6rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 300;
  padding: 0 1rem;
}
@media screen and (min-width: 768px) {
  .top-strategy .top-strategy-ttl span {
    font-size: 3rem;
  }
}
.top-strategy .top-strategy-ttl::before {
  content: "";
  display: inline-block;
  height: 1px;
  width: 100%;
  background: #000;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.top-strategy .top-strategyWrap {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .top-strategy .top-strategyWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 3rem);
    margin-left: -1.5rem;
  }
}
.top-strategy .top-strategyWrap .top-strategyItem {
  width: 100%;
  margin: 0 auto 3rem;
}
@media screen and (min-width: 768px) {
  .top-strategy .top-strategyWrap .top-strategyItem {
    max-width: calc(33.3333333333% - 3rem);
    margin: 0 1.5rem 3rem;
  }
}
.top-strategy .top-strategyWrap .top-strategyItem .img {
  text-align: center;
  margin: 0 auto 1.5rem;
}
.top-strategy .top-strategyWrap .top-strategyItem .img img {
  display: inline-block;
  width: 100%;
  max-width: 20rem;
}
.top-strategy .top-strategyWrap .top-strategyItem .img + .d-block {
  font-size: 4rem;
  margin-top: -1rem;
}
.top-strategy .top-strategyWrap .top-strategyItem .f-ryumin {
  display: block;
  background-color: #CA1122;
  color: #fff;
  text-align: center;
  font-weight: 500;
  line-height: 1.4;
  padding: 1rem;
  margin: 0 auto 1rem;
}

/*Why LiB?*/
.top-why-lib {
  background: url(../img/maas/whylib_background.jpg);
  background-size: cover;
  background-position: top center;
  padding: 60px 0 55px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .top-why-lib {
    padding: 100px 0 55px;
  }
}
.top-why-lib::before {
  content: "";
  display: block;
  background: url(../img/maas/whylib_sabbg.png);
  background-size: cover;
  width: 665px;
  height: 670px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .top-why-lib::before {
    top: 0;
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 768px) {
  .top-why-lib .large-title01 .main_text {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .top-why-lib .large-title01 .main_text {
    font-size: 4.2rem;
  }
}
.top-why-lib .top-why-lib-ttl {
  color: #fff;
  font-size: 6.4rem;
  text-align: center;
  margin-bottom: 75px;
}
.top-why-lib .top-why-lib-ttl span {
  display: block;
  font-size: 1.6rem;
}
.top-why-lib .top-why-lib-list {
  margin: 0 auto;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-list {
    max-width: calc(100% + 28px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 28px);
    margin: 0 0 0 -14px;
    padding: 0 0 37px;
    -webkit-box-align: inherit;
        -ms-flex-align: inherit;
            align-items: inherit;
  }
}
.top-why-lib .top-why-lib-list > li {
  width: 100%;
  margin: 0 auto 20px;
  background: #fff;
  position: relative;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-list > li {
    width: calc(50% - 28px);
    margin: 0 14px 30px;
  }
}
@media screen and (min-width: 1200px) {
  .top-why-lib .top-why-lib-list > li {
    width: calc(33.3333333333% - 28px);
  }
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner {
  width: 100%;
  background: #fff;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-ttl {
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 0;
  background: #CA1122;
  padding: 2rem 1rem;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-ttl .top_why_lib_ttl_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: fill;
     object-fit: fill;
  font-family: "object-fit: fill;";
  left: 0;
  top: 0;
  z-index: -1;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner h3 {
  padding: 0;
  margin: 0;
  color: #fff;
  font-size: 2.4rem;
  text-align: center;
  letter-spacing: 1px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-list > li .top-why-lib-list-inner h3 {
    font-size: 2.6rem;
  }
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner h3 span {
  display: block;
  font-size: 1rem;
  color: #fc8893;
  padding: 0 25px 0 0;
  margin: 0 0 7px;
}
@media screen and (min-width: 992px) {
  .top-why-lib .top-why-lib-list > li .top-why-lib-list-inner h3 span {
    font-size: 1.2rem;
  }
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text {
  padding: 20px 25px 10px;
}
@media screen and (max-width: 767px) {
  .top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text {
    /*height: auto !important;*/
  }
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text p {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 auto 1.5rem;
  text-align: center;
  color: #483e2f;
  line-height: 1.5;
  position: relative;
  min-height: 5rem;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text p span {
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text ul {
  padding: 0;
  margin: 0;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text ul li {
  padding: 0 0 20px 20px;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.4;
  list-style: none;
}
.top-why-lib .top-why-lib-list > li .top-why-lib-list-inner .top-why-lib-list-text ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  position: absolute;
  top: 8px;
  left: 5px;
  background: #aa812f;
  border-radius: 100px;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-list > li::after {
    display: inline-block;
    content: "";
    position: absolute;
    top: 0;
    right: -15px;
    height: 100%;
    width: 2px;
    background: #707070;
  }
  .top-why-lib .top-why-lib-list > li:last-child::after {
    display: none;
  }
}
.top-why-lib .top-why-lib-opinion_outer {
  position: relative;
  z-index: 1;
  max-width: 347px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion_outer {
    max-width: 100%;
  }
}
.top-why-lib .top-why-lib-opinion {
  position: relative;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion {
    /*
    display: flex;
    align-items: center;
    */
  }
}
.top-why-lib .top-why-lib-opinion .top-why-lib-bg-text {
  width: 100%;
  /*
  background: #a8a8a8;
  background: linear-gradient(180deg, #a8a8a8 0%, #a5a5a5 30%, #bfbfbf 100%);
  */
  text-align: center;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .top-why-lib-bg-text {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
  }
}
.top-why-lib .top-why-lib-opinion .top-why-lib-bg-text span {
  display: inline-block;
  font-family: "Libre Baskerville", serif;
  font-weight: 400;
  font-size: 5.5rem;
  display: block;
  padding: 2px;
  text-align: center;
  color: #fff;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .top-why-lib-bg-text span {
    text-align: right;
    font-size: 6.4rem;
    display: block;
    margin: 0 0 0 auto;
    padding: 8px 0px 0;
    line-height: 1;
  }
}
@media screen and (min-width: 992px) {
  .top-why-lib .top-why-lib-opinion .top-why-lib-bg-text span {
    font-size: 8.4rem;
  }
}
.top-why-lib .top-why-lib-opinion .img {
  text-align: center;
  width: 100%;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .img {
    padding: 0;
    padding: 25px 20px 20px;
    max-width: 378px;
  }
}
.top-why-lib .top-why-lib-opinion .text {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 100%;
  position: relative;
  z-index: 1;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .text {
    padding: 35px 43px 35px 43px;
    max-width: calc(100% - 318px);
    margin: 0 0 0 auto;
    position: absolute;
    right: 0;
    top: 90px;
  }
}
.top-why-lib .top-why-lib-opinion .text img {
  padding: 20px 15px 0;
  margin: 0 0 25px;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .text img {
    padding: 0;
  }
}
.top-why-lib .top-why-lib-opinion .text dt {
  font-size: 1.8rem;
  border-bottom: 1px solid #484848;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
  padding: 0 0px 15px;
  line-height: 1.6;
  width: calc(100% - 40px);
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .text dt {
    font-size: 1.6rem;
    padding: 0 0 20px;
  }
}
@media screen and (min-width: 1200px) {
  .top-why-lib .top-why-lib-opinion .text dt {
    font-size: 2.6rem;
  }
}
.top-why-lib .top-why-lib-opinion .text dd {
  font-size: 1.4rem;
  line-height: 1.4;
  width: calc(100% - 40px);
  margin: auto;
  padding: 0 0 20px;
}
@media screen and (min-width: 768px) {
  .top-why-lib .top-why-lib-opinion .text dd {
    line-height: 1.4;
    width: 100%;
    margin: 0;
  }
}
.top-why-lib .under_text {
  position: absolute;
  right: 1%;
  bottom: -14px;
  color: #434343;
  line-height: 1;
  font-size: 9rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-why-lib .under_text {
    font-size: 15rem;
    right: 3%;
    bottom: -22px;
  }
}

.top-ksf {
  background: url(../img/maas/pattern_bg.png);
  background-repeat: repeat;
  padding: 100px 0 0;
  position: relative;
}
.top-ksf::before {
  content: "";
  display: block;
  background: url(../img/maas/ksf_sabbg.png);
  background-size: cover;
  width: 512px;
  height: 516px;
  position: absolute;
  top: 0;
  right: 0;
}
.top-ksf .pickup-txt {
  font-size: 2rem;
  text-align: center;
  margin: 0 auto 30px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 300;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .top-ksf .pickup-txt {
    font-size: 3.3rem;
    margin: 0 auto 40px;
  }
}
.top-ksf .top-ksf-img {
  text-align: center;
  margin: 0 auto 40px;
}
@media screen and (min-width: 768px) {
  .top-ksf .top-ksf-img {
    margin: 0 auto 30px;
  }
}
.top-ksf .top-ksf-img img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}
.top-ksf .top-ksf-txt {
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.6;
  width: calc(100% - 40px);
  margin: 0 auto 60px;
}
@media screen and (min-width: 768px) {
  .top-ksf .top-ksf-txt {
    width: auto;
    text-align: center;
    margin: 0 auto;
  }
}
.top-ksf .top-ksf-bg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top-ksf .top-ksf-bg .left,
.top-ksf .top-ksf-bg .right {
  width: 50%;
}
.top-ksf .top-ksf-bg .left img,
.top-ksf .top-ksf-bg .right img {
  display: inline-block;
  vertical-align: bottom;
  width: 100%;
}

/*提供サービス*/
.top-service {
  background: #bb1222;
  padding: 40px 0 40px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .top-service {
    padding: 100px 0 90px;
  }
}
.top-service::before {
  content: "";
  display: block;
  background: url(../img/maas/top_ksf_bg_right_bottom.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 50%;
  height: 790px;
  position: absolute;
  top: 0;
  right: 0;
}
.top-service .top-service-ttl {
  text-align: center;
  margin: 0 auto 40px;
  position: relative;
  z-index: 1;
}
.top-service .top-service-ttl span {
  display: inline-block;
  color: #fff;
  font-size: 2.6rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-ttl span {
    font-size: 3.3rem;
  }
}
.top-service .top-service-ttl::before {
  content: "";
  display: inline-block;
  height: 1px;
  width: calc(50% - 125px);
  background: #fff;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.top-service .top-service-ttl::after {
  content: "";
  display: inline-block;
  height: 1px;
  width: calc(50% - 125px);
  background: #fff;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.top-service .top-service-flex {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% + 28px);
    margin: 0 0 0 -14px;
  }
}
.top-service .top-service-flex .item {
  position: relative;
  background: #fff;
  padding: 25px 20px 20px;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-flex .item {
    min-height: 192px;
    width: calc(50% - 28px);
    margin: 0 14px 30px;
    padding: 40px 20px 70px 150px;
  }
}
.top-service .top-service-flex .item .item__img {
  text-align: center;
  position: absolute;
  top: 21px;
  left: 21px;
  max-width: 90px;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-flex .item .item__img {
    top: 50%;
    left: 21px;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    max-width: 120px;
  }
}
.top-service .top-service-flex .item .item__img img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.top-service .top-service-flex .item .item__text {
  display: block;
}
.top-service .top-service-flex .item .item__text dl dt {
  font-size: 1.8rem;
  font-weight: bold;
  padding: 26px 0 36px 100px;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-flex .item .item__text dl dt {
    padding: 0;
  }
}
.top-service .top-service-flex .item .item__text dl dd {
  font-size: 1.4rem;
  padding: 0 0 3px 15px;
  position: relative;
  color: #333333;
}
.top-service .top-service-flex .item .item__text dl dd::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #aa812f;
  position: absolute;
  top: 10px;
  left: 2px;
  border-radius: 100%;
}
.top-service .top-service-flex .item .item__text a {
  padding: 5px 7px;
  max-width: 202px;
  font-size: 1.6rem;
  display: block;
  margin: 15px auto 0;
}
@media screen and (min-width: 768px) {
  .top-service .top-service-flex .item .item__text a {
    margin: 15px 0 0 0;
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
  }
}
.top-service .under_text {
  position: absolute;
  right: 1%;
  bottom: -14px;
  color: #c51d2c;
  line-height: 1;
  font-size: 9rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-service .under_text {
    font-size: 23rem;
    right: 3%;
    bottom: -42px;
  }
}
.top-service .mobility__btn02 {
  margin: 15px auto 30px;
}

.top-whitepaper {
  background: url(../img/maas/whitepaper_background.jpg);
  background-size: cover;
  background-position: top center;
  padding: 45px 0 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .top-whitepaper {
    padding: 90px 0 0;
  }
}
@media screen and (min-width: 768px) {
  .top-whitepaper::after {
    content: "";
    display: block;
    width: 100%;
    height: 25%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #fff;
  }
}
.top-whitepaper.top-case {
  background: url(../img/maas/case_background.jpg);
  background-size: cover;
  background-position: top center;
}
.top-whitepaper .top-whitepaper-inner {
  background: #fff;
  position: relative;
  z-index: 1;
  padding: 25px 14px 40px;
  width: calc(100% + 28px);
  margin: 0 0 0 -14px;
}
@media screen and (min-width: 768px) {
  .top-whitepaper .top-whitepaper-inner {
    width: 100%;
    margin: 0;
    padding: 63px 20px 90px;
  }
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list {
  max-width: 347px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .top-whitepaper .top-whitepaper-inner .top-whitepaper-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    max-width: 1028px;
    margin: 0 auto;
  }
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item {
  -webkit-box-shadow: 3px 3px 10px 0px #ddd;
          box-shadow: 3px 3px 10px 0px #ddd;
  overflow: hidden;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item {
    width: calc(33.3333333333% - 28px);
    margin: 0 13px 30px;
  }
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item .img {
  position: relative;
  text-align: center;
  display: block;
  background: #f1f1f1;
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item .img::after {
  padding-top: 56%;
  content: "";
  display: block;
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item .img img {
  display: inline-block;
  margin: auto;
  width: auto;
  height: auto;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  padding: 20px;
}
.top-whitepaper .top-whitepaper-inner .top-whitepaper-list .item h3 {
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0 auto 7px;
  line-height: 1.6;
  padding: 13px 20px 7px;
}

.maas_btn {
  display: block;
  width: 100%;
  max-width: calc(100% - 40px);
  margin: 0 auto 25px;
  text-align: center;
  padding: 10px;
  position: relative;
  border: 1px solid #707070;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  font-size: 1.4rem;
}
.maas_btn::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 9px;
  background: url(../img/maas/icon_rightarrow.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.maas_btn:hover {
  opacity: 1;
  border: 1px solid #bb1222;
  color: #bb1222;
}
.maas_btn:hover::after {
  background: url(../img/maas/icon_rightarrow_red.png);
  background-repeat: no-repeat;
}

/*セミナー*/
.top-seminar {
  background: url(../img/maas/seminar_background.jpg);
  background-size: cover;
  background-position: top center;
  padding: 50px 0 30px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .top-seminar {
    padding: 90px 0;
  }
  .top-seminar::before {
    content: "";
    display: block;
    background: url(../img/maas/seminar_sabbg.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 956px;
    height: 806px;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.top-seminar .top-seminar-list {
  max-width: 347px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .top-seminar .top-seminar-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 100%;
    width: calc(100% + 28px);
    margin: 0 0 0 -14px;
  }
}
.top-seminar .top-seminar-list .item {
  margin: 0 auto 30px;
  background: #fff;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .top-seminar .top-seminar-list .item {
    width: calc(33.3333333333% - 28px);
    margin: 0 14px 30px;
  }
}
.top-seminar .top-seminar-list .item .img {
  position: relative;
  text-align: center;
  display: block;
  background: #f1f1f1;
}
.top-seminar .top-seminar-list .item .img::after {
  padding-top: 56%;
  content: "";
  display: block;
}
.top-seminar .top-seminar-list .item .img img {
  margin: auto;
  width: auto;
  height: auto;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  padding: 20px;
}
.top-seminar .top-seminar-list .item h3 {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 auto 0px;
  line-height: 1.6;
  padding: 13px 20px 8px;
}
.top-seminar .top-seminar-list .item .text {
  padding: 5px 20px 20px;
}

/*お問い合わせ*/
.top-contact {
  background: url(../img/maas/contact_background.jpg);
  background-size: cover;
  background-position: top center;
  padding: 50px 0;
  position: relative;
}
.top-contact::before {
  content: "";
  display: block;
  background: url(../img/maas/sp_contact_sabbg.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 371px;
  height: 286px;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  .top-contact {
    padding: 70px 0;
  }
  .top-contact::before {
    content: "";
    display: block;
    background: url(../img/maas/contact_sabbg.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 964px;
    height: 344px;
  }
}
.top-contact p {
  text-align: center;
  font-size: 1.6rem;
  color: #fff;
  margin: 10px auto 30px;
  position: relative;
  z-index: 1;
}
.top-contact p br {
  display: block;
}
@media screen and (min-width: 768px) {
  .top-contact p br {
    display: none;
  }
}
.top-contact .btn_contact {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #CA1122;
  border: 1px solid #CA1122;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .top-contact .btn_contact {
    padding: 16px 10px;
  }
}
.top-contact .btn_contact span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 35px;
}
.top-contact .btn_contact span::before {
  content: "";
  display: inline-block;
  width: 27px;
  height: 22px;
  background: url(../img/maas/icon_contact.svg);
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.top-contact .btn_contact:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122;
}
.top-contact .btn_contact:hover span::before {
  background: url(../img/maas/icon_contact_red.svg);
  background-repeat: no-repeat;
}

/**/
.top_maashack {
  background: #000;
}
@media screen and (min-width: 1200px) {
  .top_maashack {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.top_maashack .item {
  width: 100%;
}
.top_maashack .item.item_left {
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .top_maashack .item.item_left {
    max-width: 960px;
    /*min-width: 760px;*/
  }
}
@media screen and (min-width: 1921px) {
  .top_maashack .item.item_left {
    /*min-width: 960px;*/
  }
}
.top_maashack .item.item_left img {
  vertical-align: bottom;
}
@media screen and (max-width: 1199px) {
  .top_maashack .item.item_right {
    padding: 35px 20px;
  }
}
@media screen and (min-width: 992px) {
  .top_maashack .item.item_right {
    min-width: 500px;
    max-width: 510px;
  }
}
@media screen and (min-width: 1200px) {
  .top_maashack .item.item_right > div {
    width: 100%;
    max-width: 460px;
    padding: 0 20px 0 0;
    margin: 0 0 0 50px;
  }
}
@media screen and (min-width: 1921px) {
  .top_maashack .item.item_right > div {
    margin: 0 0 0 108px;
  }
}
.top_maashack .item.item_right > div p {
  color: #fff;
  font-size: 1.4rem;
  margin: 0 0 25px;
  line-height: 1.4;
}
@media screen and (min-width: 1921px) {
  .top_maashack .item.item_right > div p {
    font-size: 1.6rem;
  }
}
.top_maashack .item.item_right .maashack_btn {
  display: block;
  width: 100%;
  max-width: 280px;
  margin: 0 auto;
  text-align: center;
  padding: 10px;
  position: relative;
  background: #000;
  border: 1px solid #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff;
  font-size: 1.4rem;
}
.top_maashack .item.item_right .maashack_btn::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background: url(../img/maas/icon_link.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 3px;
  right: 3px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.top_maashack .item.item_right .maashack_btn:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #fff;
  color: #000;
}
.top_maashack .item.item_right .maashack_btn:hover::before {
  background: url(../img/maas/icon_link_black.png);
  background-repeat: no-repeat;
}

.top-event-info {
  padding: 256px 0 320px;
}
.top-event-info .top-event-info-inner {
  position: relative;
  z-index: 0;
}
.top-event-info .top-event-info-inner .top-task-solution-bg-text {
  position: absolute;
  top: -200px;
  right: -368px;
  font-size: 24.4rem;
  color: #545454;
  line-height: 1;
  z-index: -1;
}
.top-event-info .top-task-inner {
  width: 87%;
  margin: 0 auto 85px;
  position: relative;
  z-index: 1;
}
.top-event-info .top-task-inner .top-task-subttl {
  font-size: 4.6rem;
  text-align: center;
  margin-bottom: 20px;
  color: #fff;
}
.top-event-info .top-task-inner p {
  line-height: 1.65;
  color: #fff;
}

.top-company {
  padding: 105px 0;
  position: relative;
}
.top-company:before {
  content: "";
  position: absolute;
  top: -187px;
  left: 0;
  width: 100%;
  border-top: 93.5px solid transparent;
  border-left: 0 solid transparent;
  border-right: 100vw solid #f8f8f8;
  border-bottom: 93.5px solid #f8f8f8;
}
.top-company .top-company-ttl {
  text-align: center;
  font-weight: bold;
  font-size: 3rem;
  padding-bottom: 15px;
  margin-bottom: 40px;
}
.top-company .top-company-ttl span {
  position: relative;
  padding-bottom: 15px;
}
.top-company .top-company-ttl span:before {
  content: "";
  position: absolute;
  left: calc((100% - 58px) / 2);
  bottom: 0;
  width: 58px;
  height: 3px;
  background: #a51e23;
}
.top-company .top-company-inner {
  margin-bottom: 100px;
}
.top-company .top-company-inner.top-company-inner1 {
  margin-bottom: 60px;
}
.top-company .top-company-inner:last-child {
  margin-bottom: 0;
}
.top-company dl {
  width: 50%;
  margin-bottom: 40px;
  line-height: 1.35714;
  padding-right: 5%;
}
.top-company dl dt {
  font-size: 1.8rem;
  font-weight: bold;
}
.top-company dl dd {
  font-size: 1.6rem;
  line-height: 1.6875;
}
.top-company .top-company-award-list {
  width: 44%;
  margin-right: 2%;
}
.top-company .top-company-award-list li {
  font-size: 1.8rem;
  margin-bottom: 15px;
  text-indent: -30px;
  margin-left: 30px;
}
.top-company .top-company-award-list li:last-child {
  margin-bottom: 0;
}
.top-company .top-company-book-list {
  margin-left: -40px;
  /*margin-bottom: -30px;*/
}
.top-company .top-company-book-list li {
  padding-left: 40px;
  padding-bottom: 30px;
}
.top-company .top-company-book-list li .img-wrap {
  width: 164px;
}

.top-banner-area {
  text-align: center;
  background: #f8f8f8;
  padding: 73px 0;
}

.top-client-area {
  background: #f8f8f8;
  position: relative;
}
.top-client-area:before {
  content: "";
  position: absolute;
  bottom: -187px;
  left: 0;
  width: 100%;
  border-bottom: 93.5px solid transparent;
  border-right: 0 solid transparent;
  border-left: 100vw solid #f8f8f8;
  border-top: 93.5px solid #f8f8f8;
}
.top-client-area .top-task-resolution {
  margin-top: 170px;
}
.top-client-area .top-task-resolution-ttl {
  font-size: 3.3rem;
  text-align: center;
  margin-bottom: 50px;
  line-height: 1.2;
}
.top-client-area .top-task-resolution-ttl.mini {
  margin-bottom: 25px;
}
.top-client-area .top-task-resolution-ttl span {
  font-size: 2.5rem;
}
.top-client-area .top-task-resolution-list {
  margin-left: -20px;
  margin-bottom: 107px;
  color: #fff;
}
.top-client-area .top-task-resolution-list li {
  padding-left: 20px;
  padding-bottom: 20px;
}
.top-client-area .top-task-resolution-list li .top-task-resolution-list-inner {
  background: #a51e23;
  position: relative;
  font-size: 2rem;
  width: 321px;
  height: 160px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1.3;
  font-weight: bold;
}
.top-client-area .top-task-resolution-list li .top-task-resolution-list-inner span {
  position: absolute;
  font-size: 2.8rem;
  left: 0;
  top: 0;
  width: 46px;
  height: 46px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #8c1419;
}
.top-client-area .top-client-area-inner {
  background: #fff;
  padding: 90px 70px;
}
.top-client-area .top-client-area-inner ul {
  margin-left: -70px;
  margin-bottom: -70px;
  padding: 0;
}
.top-client-area .top-client-area-inner ul li {
  padding-left: 70px;
  padding-bottom: 70px;
  list-style: none;
}

/*ページ内リンク用調整*/
#business {
  padding-top: 180px;
  margin-top: -180px;
}

@supports (-ms-ime-align: auto) {
  #business {
    padding-top: 130px;
    margin-top: -130px;
  }
}
#download,
#organization,
#download2,
#company,
#contact {
  padding-top: 150px;
  margin-top: -150px;
}

@supports (-ms-ime-align: auto) {
  #download {
    padding-top: 130px;
    margin-top: -130px;
  }
}
@media screen and (max-width: 750px) {
  body {
    line-height: 1.6;
  }
  .sp_view {
    display: block;
  }
  .pc_view {
    display: none;
  }
  .sp_item {
    display: initial;
  }
  .pc_item {
    display: none;
  }
  #satori__creative_container {
    padding: 6vw 0 0;
  }
  #satori__creative_container button,
  #satori__creative_container input,
  #satori__creative_container select {
    font-size: 3.2vw;
  }
  #satori__creative_container textarea {
    font-size: 3.2vw;
    width: 65%;
  }
  #satori__creative_container input:not([type=radio]):not([type=checkbox]) {
    width: 65%;
  }
  #satori__creative_container .satori__input_group {
    padding-bottom: 4vw;
    margin-bottom: 4vw;
  }
  #satori__creative_container .satori__input_group label {
    font-size: 3.2vw;
  }
  #satori__creative_container .satori__input_group .satori__require,
  #satori__creative_container .satori__input_group .satori__not_require {
    display: block;
    margin-left: 0;
    width: 37px;
    padding: 6px 6px;
    margin-top: 1vw;
    text-align: center;
  }
  #satori__creative_container .satori__horiz_group .satori__input_group {
    padding-right: 4vw;
  }
  #satori__creative_container .satori__horiz_group .satori__input_group label {
    width: 100%;
  }
  #satori__creative_container .satori__horiz_group .satori__input_group .satori__require {
    display: inline-block;
  }
  #satori__creative_container #satori__privacy_policy_agreement_wrapper .satori__require {
    display: inline-block;
  }
  #satori__creative_container .satori__submit_group {
    width: 100%;
  }
  #satori__creative_container .satori__submit_group input[type=button] {
    padding: 15px 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
  }
  #satori__creative_container .form-btn-wrap {
    margin-top: 4vw;
  }
  #satori__creative_container .form_btn {
    width: 100%;
  }
  #satori__creative_container .form_btn input[type=submit] {
    padding: 15px 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
  }
  #satori__creative_container dl dt {
    font-size: 3.2vw;
  }
  #satori__creative_container dl dt span {
    font-size: 2.6vw;
    display: block;
    margin-left: 0;
    width: 32%;
    padding: 0.5vw 1.5vw;
    margin-top: 1vw;
  }
  .contact-page .top-task {
    padding: 1vw 0 14vw;
  }
  .thanks-contents {
    margin-top: 6vw;
  }
  #pagetop {
    width: 14vw;
    height: 14vw;
    bottom: 17%;
    right: 3%;
  }
  #pagetop img {
    width: 5.06667vw;
  }
  #header {
    top: 2%;
  }
  #header #logo {
    width: 42%;
  }
  #header .header-right-cont {
    width: 58%;
    text-align: right;
  }
  #header .header-right-cont .share-icon {
    width: 100%;
    margin-right: 0;
  }
  #header .header-right-cont .share-icon .inline {
    vertical-align: middle;
  }
  #header .header-right-cont .contact-icon {
    width: 14%;
    position: fixed;
    right: 3%;
    bottom: 6%;
  }
  #all_wrapp {
    margin: 3%;
  }
  #footer .copyright {
    font-size: 2.6vw;
    padding: 2vw 0;
  }
  .js-line_animate {
    width: 100%;
    display: block;
  }
  .js-line_animate .before {
    -webkit-animation: none;
            animation: none;
    display: none;
  }
  .js-line_animate.sc_item .before {
    -webkit-animation: none;
            animation: none;
  }
  .js-line_animate_target {
    -webkit-animation: none;
            animation: none;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  .js-line_animate_target.sc_item {
    -webkit-animation: none;
            animation: none;
  }
  .top-task {
    padding: 14vw 0 0;
  }
  .top-task:before {
    bottom: -106px;
    border-bottom: 48px solid transparent;
    border-right: 100vw solid transparent;
    border-left: 100vw solid #151414;
    border-top: 60px solid #151414;
  }
  .top-task .top-task-ttl {
    width: 96%;
    margin: 0 auto 12vw;
    font-size: 6.4vw;
    line-height: 1.2;
  }
  .top-task .top-task-ttl span {
    padding: 0;
  }
  .top-task .top-task-ttl:before {
    width: 100vw;
    left: -5%;
  }
  .top-task #satori__creative_container .satori__submit_group {
    margin-top: 27vmin;
    position: relative;
    z-index: 1;
  }
  .top-task .top-task-solution .top-task-solution-bg-text {
    font-size: 25vw;
    top: -23vw;
    right: -21vw;
  }
  .top-task .top-task-inner {
    width: 96%;
    margin: 0 auto 17vw;
  }
  .top-task .top-task-inner.mini {
    margin: 0 auto 6vw;
  }
  .top-task .top-task-inner .top-task-subttl {
    font-size: 5.9vw;
    margin-bottom: 2vw;
  }
  .top-task .top-task-solution .left {
    width: 100%;
  }
  .top-task .top-task-solution .right {
    width: 100%;
    position: relative;
    top: 0;
  }
  .top-task .top-task-solution .right .inview-mask-textwrap {
    padding: 13vw 6vw;
  }
  .top-task .top-task-solution .right .top-task-solution-ttl {
    font-size: 4.2vw;
    letter-spacing: 6px;
    margin-bottom: 4vw;
  }
  .top-task .top-task-solution .right p {
    font-size: 3.4vw;
    line-height: 1.5;
  }
  .top-task .top-task-solution .right p span {
    font-size: 4.3vw;
    margin-bottom: 7vw;
  }
  .top-task .top-task-resolution {
    margin-top: 13vw;
    width: 100%;
  }
  .top-task .top-task-resolution-ttl {
    font-size: 5.9vw;
    margin-bottom: 6vw;
  }
  .top-task .top-task-resolution-ttl.mini {
    margin-bottom: 6vw;
  }
  .top-task .top-task-resolution-ttl span {
    font-size: 4vw;
    display: block;
  }
  .top-task .top-task-resolution-list {
    width: 96%;
    margin: 0 auto 12vw;
  }
  .top-task .top-task-resolution-list li {
    width: 100%;
    padding-bottom: 3vw;
    padding-left: 0;
  }
  .top-task .top-task-resolution-list li .top-task-resolution-list-inner {
    width: 100%;
    height: 21vw;
    font-size: 3.8vw;
  }
  .top-task .top-task-resolution-list li .top-task-resolution-list-inner span {
    font-size: 4.6vw;
    width: 10vw;
    height: 10vw;
  }
  .top-task .top-task-resolution-secret {
    padding: 8vw 6vw;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-arrow {
    bottom: -16.5vw;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-left {
    width: 100%;
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-left .img-wrap {
    width: 50%;
    margin-right: 4%;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right {
    width: 100%;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right p {
    font-size: 3.4vw;
    margin-top: 6vw;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-ttl {
    width: 46%;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-ttl.sp_view {
    display: block;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-left {
    font-size: 4.2vw;
    display: block;
    text-align: center;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-left img {
    margin-right: 0;
    width: 26%;
    margin-bottom: 1vw;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-left span {
    display: block;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-right {
    font-size: 4vw;
    margin-bottom: 0;
    text-align: center;
    letter-spacing: 0;
    margin-top: 3vw;
  }
  .top-task .top-task-resolution-secret .top-task-resolution-secret-right-inner-right span {
    font-size: 2.6vw;
    letter-spacing: -0.5px;
  }
  .top-task .form-wrap {
    margin-top: 11vw;
  }
  .top-task .form-wrap .form-ttl {
    font-size: 5.5vw;
  }
  .top-task .form-wrap .form-wrap-inner {
    padding: 15vw 6vw;
  }
  .top-task .form-wrap .form-wrap-inner .oyo_document_image {
    width: 25vmin;
    bottom: 26vmin;
    right: 2vmin;
    z-index: 0;
  }
  .top-task .form-wrap.form-wrap-bg-gray .form-wrap-inner .free_ride_image {
    width: 25vmin;
    bottom: 26vmin;
    right: 2vmin;
    z-index: 0;
  }
  .top-organization {
    padding: 35vw 0 25vw;
  }
  .top-organization #satori__creative_container .satori__submit_group {
    margin-top: 27vmin;
    position: relative;
    z-index: 1;
  }
  .top-organization .top-task-solution .top-task-solution-bg-text {
    font-size: 25vw;
    top: -23vw;
    right: -69vw;
  }
  .top-organization .top-task-inner {
    width: 96%;
    margin: 0 auto 17vw;
  }
  .top-organization .top-task-inner.mini {
    margin: 0 auto 6vw;
  }
  .top-organization .top-task-inner .top-task-subttl {
    font-size: 5.9vw;
    margin-bottom: 2vw;
  }
  .top-organization .top-task-solution .left {
    width: 100%;
  }
  .top-organization .top-task-solution .right {
    width: 100%;
    position: relative;
    top: 0;
  }
  .top-organization .top-task-solution .right .inview-mask-textwrap {
    padding: 13vw 6vw;
  }
  .top-organization .top-task-solution .right .top-task-solution-ttl {
    font-size: 4.2vw;
    letter-spacing: 6px;
    margin-bottom: 4vw;
  }
  .top-organization .top-task-solution .right p {
    font-size: 3.4vw;
    line-height: 1.5;
  }
  .top-organization .top-task-solution .right p span {
    font-size: 4.3vw;
    margin-bottom: 7vw;
  }
  .top-organization .top-task-resolution {
    margin-top: 13vw;
    width: 100%;
  }
  .top-organization .top-task-resolution-ttl {
    font-size: 5.9vw;
    margin-bottom: 6vw;
  }
  .top-organization .top-task-resolution-ttl.mini {
    margin-bottom: 6vw;
  }
  .top-organization .top-task-resolution-ttl span {
    font-size: 4vw;
    display: block;
  }
  .top-organization .top-task-resolution-list {
    width: 96%;
    margin: 0 auto 12vw;
  }
  .top-organization .top-task-resolution-list li {
    width: 100%;
    padding-bottom: 3vw;
    padding-left: 0;
  }
  .top-organization .top-task-resolution-list li .top-task-resolution-list-inner {
    width: 100%;
    height: 21vw;
    font-size: 3.8vw;
  }
  .top-organization .top-task-resolution-list li .top-task-resolution-list-inner span {
    font-size: 4.6vw;
    width: 10vw;
    height: 10vw;
  }
  .top-organization .top-task-resolution-secret {
    padding: 8vw 6vw;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-arrow {
    bottom: -16.5vw;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-left {
    width: 100%;
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-left .img-wrap {
    width: 50%;
    margin-right: 4%;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right {
    width: 100%;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right p {
    font-size: 3.4vw;
    margin-top: 6vw;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-ttl {
    width: 46%;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-ttl.sp_view {
    display: block;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-left {
    font-size: 4.2vw;
    display: block;
    text-align: center;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-left img {
    margin-right: 0;
    width: 26%;
    margin-bottom: 1vw;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-left span {
    display: block;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-right {
    font-size: 4vw;
    margin-bottom: 0;
    text-align: center;
    letter-spacing: 0;
    margin-top: 3vw;
  }
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-right-inner-right span {
    font-size: 2.6vw;
    letter-spacing: -0.5px;
  }
  .top-organization .form-wrap {
    margin-top: 11vw;
  }
  .top-organization .form-wrap .form-ttl {
    font-size: 5.5vw;
  }
  .top-organization .form-wrap .form-wrap-inner {
    padding: 15vw 6vw;
  }
  .top-organization .form-wrap .form-wrap-inner .oyo_document_image {
    width: 25vmin;
    bottom: 26vmin;
    right: 2vmin;
    z-index: 0;
  }
  .top-organization .form-wrap.form-wrap-bg-gray .form-wrap-inner .free_ride_image {
    width: 25vmin;
    bottom: 26vmin;
    right: 2vmin;
    z-index: 0;
  }
  .top-event-info {
    padding: 31vw 0 14vw;
  }
  .top-event-info .top-event-info-inner .top-task-solution-bg-text {
    font-size: 25vw;
    top: -23vw;
    right: -21vw;
  }
  .top-event-info .top-task-inner {
    width: 96%;
    margin: 0 auto 17vw;
    margin: 0 auto 6vw;
  }
  .top-event-info .top-task-inner .top-task-subttl {
    font-size: 5.9vw;
    margin-bottom: 2vw;
  }
  .top-company {
    padding: 26vw 0 16vw;
  }
  .top-company:before {
    border-top: 40px solid transparent;
    border-bottom: 75px solid #f8f8f8;
    top: -40px;
  }
  .top-company .top-company-ttl {
    font-size: 5.4vw;
    padding-bottom: 2vw;
    margin-bottom: 6vw;
  }
  .top-company .top-company-ttl span {
    padding-bottom: 2vw;
  }
  .top-company .top-company-ttl span:before {
    width: 6vw;
    left: calc((100% - 6vw) / 2);
    height: 2px;
  }
  .top-company .top-company-inner2-inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .top-company dl {
    width: 100%;
    padding-right: 0;
    margin-bottom: 4vw;
  }
  .top-company dl dt {
    font-size: 4vw;
  }
  .top-company dl dd {
    font-size: 3.7vw;
  }
  .top-company .top-company-award-list {
    width: 100%;
    margin-right: 0;
    margin-bottom: 6vw;
  }
  .top-company .top-company-award-list li {
    font-size: 3.7vw;
    margin-left: 8%;
    margin-bottom: 2vw;
  }
  .top-company .top-company-book-list {
    margin-left: -6vw;
    /*margin-bottom: -6vw;*/
  }
  .top-company .top-company-book-list li {
    width: 50%;
    padding-left: 6vw;
    padding-bottom: 6vw;
  }
  .top-company .top-company-book-list li .img-wrap {
    width: 100%;
  }
  .top-banner-area {
    padding: 13vw 3%;
  }
  .top-client-area {
    padding-bottom: 4vw;
  }
  .top-client-area:before {
    bottom: -79px;
    border-bottom: 40px solid transparent;
    border-top: 40px solid #f8f8f8;
  }
  .top-client-area .top-task-resolution {
    margin-top: 13vw;
    width: 100%;
  }
  .top-client-area .top-task-resolution-ttl {
    font-size: 5.9vw;
    margin-bottom: 6vw;
  }
  .top-client-area .top-task-resolution-ttl.mini {
    margin-bottom: 6vw;
  }
  .top-client-area .top-task-resolution-ttl span {
    font-size: 4vw;
    display: block;
  }
  .top-client-area .top-task-resolution-list {
    width: 96%;
    margin: 0 auto 12vw;
  }
  .top-client-area .top-task-resolution-list li {
    width: 100%;
    padding-bottom: 3vw;
    padding-left: 0;
  }
  .top-client-area .top-task-resolution-list li .top-task-resolution-list-inner {
    width: 100%;
    height: 21vw;
    font-size: 3.8vw;
  }
  .top-client-area .top-task-resolution-list li .top-task-resolution-list-inner span {
    font-size: 4.6vw;
    width: 10vw;
    height: 10vw;
  }
  .top-client-area .top-client-area-inner {
    padding: 10vw 6vw;
  }
  .top-client-area .top-client-area-inner ul {
    margin-left: -9vw;
    margin-bottom: -9vw;
    padding: 0;
  }
  .top-client-area .top-client-area-inner ul li {
    width: 33.333%;
    padding-left: 9vw;
    padding-bottom: 9vw;
    list-style: none;
  }
  /*ページ内リンク用調整*/
  #business,
  #download,
  #organization,
  #download2,
  #company,
  #contact {
    padding-top: 150px;
    margin-top: -150px;
  }
}
@media screen and (min-width: 750px) and (max-width: 1119px) {
  .top-task .top-task-resolution-secret .top-task-resolution-secret-arrow,
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-arrow {
    bottom: -8.3vw;
  }
}
@media screen and (min-width: 750px) and (max-width: 959px) {
  .top-task .top-task-resolution-secret .top-task-resolution-secret-arrow,
  .top-organization .top-task-resolution-secret .top-task-resolution-secret-arrow {
    bottom: -15.5vw;
  }
}
/*=======================================

モビリティ　下層ページ

=======================================*/
/*ページタイトル*/
.neck {
  background: url(../img/maas/neck_market-research.jpg);
  background-size: cover;
  background-position: top right;
  padding: 50px 0 40px;
}
.neck h1 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 600;
  color: #fff;
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .neck h1 {
    font-size: 3.5rem;
  }
}

/*パンくず*/
.breadcrumbs {
  text-align: right;
  background: #E9E9E9;
  padding: 10px 15px 0;
}
.breadcrumbs li {
  display: inline-block;
  font-size: 1.2rem;
}
.breadcrumbs li::after {
  content: ">";
  display: inline-block;
  margin: 0 0 0 5px;
}
.breadcrumbs li a {
  display: inline-block;
}
.breadcrumbs li:last-child::after {
  display: none;
}

/*課題*/
.mobility-under__problem {
  background: #E9E9E9;
  position: relative;
  padding: 45px 0 30px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem {
    padding: 70px 0 50px;
  }
}
.mobility-under__problem .check__list {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .check__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}
.mobility-under__problem .check__list li {
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  background: rgba(255, 255, 255, 0.7);
  position: relative;
  width: 100%;
  margin: 0 0 30px;
  padding: 15px 20px 13px 50px;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .check__list li {
    width: calc(50% - 30px);
    margin: 0 15px 30px;
    min-height: 90px;
  }
}
.mobility-under__problem .check__list li .el_inner {
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .check__list li .el_inner {
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}
.mobility-under__problem .check__list li .el_inner::before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 18px;
  background: url(../img/maas/check-mark1.svg);
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: 4px;
  left: -29px;
}
.mobility-under__problem .pickup-txt {
  text-align: left;
  font-size: 1.6rem;
  margin: 0 0 40px;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .pickup-txt {
    padding: 0;
    text-align: center;
  }
}
.mobility-under__problem .pickup-txt .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__problem .u-page__inner {
  background: #fff;
  padding: 50px 30px;
  margin: 0 0 30px;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .u-page__inner {
    padding: 50px 64px;
  }
}
.mobility-under__problem .u-page__inner > ul {
  padding: 0;
}
.mobility-under__problem .u-page__inner > ul li {
  padding: 0 0 30px;
  margin: 0 0 30px;
  border-bottom: 1px solid #d4d4d4;
  text-align: center;
  list-style: none;
}
.mobility-under__problem .u-page__inner > ul li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}
.mobility-under__problem .u-page__inner .pickup-txt01 {
  padding: 70px 0 0;
  position: relative;
}
.mobility-under__problem .u-page__inner .pickup-txt01::before {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  border-top: 25px solid #CA1122;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  width: 0;
  height: 0;
  background: 0;
}
.mobility-under__problem .u-page__inner .pickup-txt01::after {
  display: none;
}
.mobility-under__problem .u-page__inner > h3 {
  font-size: 2.2rem;
  text-align: left;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 20px;
  border-bottom: 1px solid #000;
}
.mobility-under__problem .u-page__inner > .text__block {
  margin: 0 0 50px;
}
.mobility-under__problem .u-page__inner > .text__block .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__problem .u-page__scroll .u-page__scroll__inner {
  overflow: auto;
  padding: 0 0 20px;
}
.mobility-under__problem .u-page__scroll .u-page__scroll__inner .img__block img {
  height: auto;
  max-width: 767px;
  width: 767px;
}
@media screen and (min-width: 768px) {
  .mobility-under__problem .u-page__scroll .u-page__scroll__inner .img__block img {
    max-width: 1072px;
    width: 1072px;
  }
}

/*支援*/
.mobility-under__support {
  background: #f5f5f5;
  position: relative;
  padding: 50px 0 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .mobility-under__support {
    padding: 80px 0 50px;
  }
}
.mobility-under__support > div {
  position: relative;
  z-index: 1;
}
.mobility-under__support::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  border-right: 665px solid #eee;
  border-bottom: 670px solid transparent;
}
.mobility-under__support .pickup-txt {
  text-align: left;
  font-size: 1.6rem;
  margin: 0 0 40px;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .pickup-txt {
    padding: 0;
    text-align: center;
  }
}
.mobility-under__support .pickup-txt .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__support .pickup-txt01 {
  font-size: 2.4rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  text-align: center;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .pickup-txt01 {
    font-size: 3rem;
  }
}
.mobility-under__support .pickup-txt01::before {
  content: "";
  display: inline-block;
  width: 27px;
  height: 1px;
  background: #000;
  vertical-align: middle;
  margin: 0 5px 5px 0;
}
.mobility-under__support .pickup-txt01::after {
  content: "";
  display: inline-block;
  width: 27px;
  height: 1px;
  background: #000;
  vertical-align: middle;
  margin: 0 0 5px 5px;
}
.mobility-under__support .u-page__inner {
  background: #fff;
  padding: 50px 30px;
  margin: 0 0 30px;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__inner {
    padding: 50px 64px;
  }
}
.mobility-under__support .u-page__inner > ul {
  padding: 0;
}
.mobility-under__support .u-page__inner > ul li {
  padding: 0 0 30px;
  margin: 0 0 30px;
  border-bottom: 1px solid #d4d4d4;
  text-align: center;
  list-style: none;
}
.mobility-under__support .u-page__inner > ul li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}
.mobility-under__support .u-page__inner .pickup-txt01 {
  padding: 70px 0 0;
  position: relative;
}
.mobility-under__support .u-page__inner .pickup-txt01::before {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  border-top: 25px solid #CA1122;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  width: 0;
  height: 0;
  background: 0;
}
.mobility-under__support .u-page__inner .pickup-txt01::after {
  display: none;
}
.mobility-under__support .u-page__inner > h3 {
  font-size: 2.2rem;
  text-align: left;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 20px;
  border-bottom: 1px solid #000;
}
.mobility-under__support .u-page__inner > .text__block {
  margin: 0 0 50px;
}
.mobility-under__support .u-page__inner > .text__block .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__support .u-page__scroll .u-page__scroll__inner {
  overflow: auto;
  padding: 0 0 20px;
}
.mobility-under__support .u-page__scroll .u-page__scroll__inner .img__block img {
  height: auto;
  max-width: 767px;
  width: 767px;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__scroll .u-page__scroll__inner .img__block img {
    max-width: 1072px;
    width: 1072px;
  }
}
.mobility-under__support .u-page__steptext {
  margin: 0 0 30px;
}
.mobility-under__support .u-page__steptext ul {
  padding: 0;
  margin: 0;
}
.mobility-under__support .u-page__steptext ul li {
  list-style: none;
  text-indent: -18px;
  padding: 0 0 0 18px;
}
.mobility-under__support .u-page__steptext ul li::before {
  content: "";
  display: inline-block;
  text-indent: 0;
  margin: 0 10px 3px 0;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #aa812f;
}
.mobility-under__support .u-page__steptext ul.dots_none {
  text-indent: 0;
  padding: 0;
}
.mobility-under__support .u-page__steptext ul.dots_none li::before {
  display: none;
}
.mobility-under__support .u-page__text--poc .el_right {
  position: relative;
  padding: 0 0 0 90px;
  position: relative;
}
.mobility-under__support .u-page__text--poc .el_right .num {
  height: 100%;
  width: 60px;
  text-align: center;
  padding: 48px 15px 15px;
  color: #fff;
  background: #CA1122;
  position: absolute;
  top: 0;
  left: 0;
}
.mobility-under__support .u-page__text--poc .el_right .num span {
  display: inline-block;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 1px;
}
.mobility-under__support .u-page__text--poc .el_right dl {
  margin: 0 0 30px;
  position: relative;
  padding: 20px 15px;
  background: #fff3f4;
}
.mobility-under__support .u-page__text--poc .el_right dl::before {
  content: "";
  display: inline-block;
  width: 41px;
  height: 6px;
  background: #CA1122;
  position: absolute;
  top: 50%;
  left: -42px;
  bottom: auto;
  transform: translate(-50%, 0);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(-50%, 0);
}
.mobility-under__support .u-page__text--poc .el_right dl dt {
  font-size: 2rem;
  margin: 0 0 11px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.mobility-under__support .u-page__text--poc .el_right dl:first-child {
  margin-top: 0;
}
.mobility-under__support .u-page__text--poc .el_right dl:last-child {
  margin-bottom: 0;
}
.mobility-under__support .u-page__text--service-growth table {
  height: 100%;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  border-left: 1px solid #000;
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table {
    display: block;
    width: 100%;
  }
}
.mobility-under__support .u-page__text--service-growth table tbody {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tbody {
    display: block;
    width: 100%;
  }
}
.mobility-under__support .u-page__text--service-growth table tr {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr {
    display: block;
    width: 100%;
  }
}
.mobility-under__support .u-page__text--service-growth table tr th {
  height: 100%;
  width: 50px;
  background: #CA1122;
  color: #fff;
  border-bottom: 1px solid #fff;
}
.mobility-under__support .u-page__text--service-growth table tr th .inner {
  width: 100%;
  height: 100%;
  position: relative;
}
.mobility-under__support .u-page__text--service-growth table tr th .inner .num {
  position: absolute;
  top: -10px;
  left: -5px;
  display: inline-block;
  font-size: 1.4rem;
  background: #000;
  width: 24px;
  height: 24px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__text--service-growth table tr th .inner .num {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
  }
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr th .inner .num {
    position: absolute;
    top: 50%;
    left: -32px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__text--service-growth table tr th .inner .text {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    display: inline-block;
  }
  .mobility-under__support .u-page__text--service-growth table tr th .inner .text span {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr th {
    display: block;
    width: 100%;
    padding: 10px 10px 10px 42px;
  }
}
.mobility-under__support .u-page__text--service-growth table tr td {
  background: #f5f5f5;
  padding: 30px;
  border-bottom: 1px solid #000;
}
.mobility-under__support .u-page__text--service-growth table tr td ul {
  padding: 0;
}
.mobility-under__support .u-page__text--service-growth table tr td ul li {
  padding: 0 0 10px 15px;
  margin: 0 0 10px;
  border-bottom: 1px solid #d4d4d4;
  text-align: left;
  font-weight: bold;
  text-indent: -15px;
  list-style: none;
}
.mobility-under__support .u-page__text--service-growth table tr td ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: #aa812f;
  margin: 0 10px 0 0;
  vertical-align: 3px;
  text-indent: 0;
}
.mobility-under__support .u-page__text--service-growth table tr td ul li:last-child {
  padding: 0 0 10px 15px;
  margin: 0;
}
.mobility-under__support .u-page__text--service-growth table tr td.cell01 {
  width: 35%;
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr td.cell01 {
    width: 100%;
    padding: 15px;
  }
}
.mobility-under__support .u-page__text--service-growth table tr td.cell02 {
  width: calc(65% - 50px);
  background: #fff;
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr td.cell02 {
    width: 100%;
    padding: 15px;
  }
}
@media screen and (max-width: 767px) {
  .mobility-under__support .u-page__text--service-growth table tr td {
    display: block;
    width: 100%;
  }
}
.mobility-under__support .u-page__text--service-growth table tr:last-child th {
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--alliance {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% + 30px);
    margin: 0 0 -30px -15px;
  }
}
.mobility-under__support .u-page__image--alliance .item {
  width: 100%;
  padding: 15px;
  margin: 0 0 30px;
  border: 1px solid #f5f5f5;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--alliance .item {
    max-width: calc(50% - 30px);
    margin: 0 15px 30px;
  }
}
@media screen and (min-width: 992px) {
  .mobility-under__support .u-page__image--alliance .item {
    max-width: calc(33.3333333333% - 30px);
    padding: 30px;
    margin: 0 15px 30px;
  }
}
.mobility-under__support .u-page__image--alliance .item .img__block {
  text-align: center;
  margin: 0 0 10px;
  position: relative;
}
.mobility-under__support .u-page__image--alliance .item .img__block::before {
  content: "";
  display: block;
  width: 100%;
  height: 130px;
}
.mobility-under__support .u-page__image--alliance .item .img__block img {
  max-height: 110px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mobility-under__support .u-page__image--alliance .item h3 {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  padding: 0;
  margin: 0 0 10px;
}
.mobility-under__support .u-page__image--alliance .item p {
  text-align: center;
}
.mobility-under__support .u-page__image--alliance .item ul {
  margin: 0;
  padding: 0;
}
.mobility-under__support .u-page__image--alliance .item ul li {
  list-style: none;
  text-indent: -15px;
  padding-left: 15px;
}
.mobility-under__support .u-page__image--alliance .item ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: #aa812f;
  margin: 0 10px 0 0;
  vertical-align: 3px;
  text-indent: 0;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--ondemand01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 30px);
    margin: 0 0 -30px -15px;
  }
}
.mobility-under__support .u-page__image--ondemand01 .item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--ondemand01 .item {
    max-width: calc(50% - 15px);
    margin: 0 15px 30px;
  }
}
.mobility-under__support .u-page__image--ondemand01 .item h3 {
  font-size: 2rem;
  margin: 0 0 20px;
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.mobility-under__support .u-page__image--ondemand01 .item h3 span {
  display: inline-block;
  border-bottom: 1px solid #000;
}
.mobility-under__support .u-page__image--ondemand01 .item .img__block {
  text-align: center;
  margin: 0 0 30px;
}
.mobility-under__support .u-page__image--ondemand02 .column h3 {
  font-size: 2.3rem;
  letter-spacing: 2px;
  font-weight: 500;
  margin: 0 0 30px;
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.mobility-under__support .u-page__image--ondemand02 .column h3 span {
  display: inline-block;
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--ondemand02 .column .column__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--ondemand02 .column .column__inner .item {
    max-width: calc(50% - 15px);
    margin: 0 15px 30px;
  }
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item h4 {
  text-align: center;
  font-size: 1.8rem;
  margin: 0 0 15px;
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item h4 .num {
  font-size: 1.2rem;
  color: #AA812F;
  margin: 0 10px 0 0;
  line-height: 1;
  display: block;
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item h4 .num span {
  display: inline-block;
  font-size: 1.6rem;
  margin: 0 0 0 5px;
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item .img__block {
  text-align: center;
  margin: 0 0 30px;
  position: relative;
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item .img__block::before {
  content: "";
  display: inline-block;
  height: 220px;
}
.mobility-under__support .u-page__image--ondemand02 .column .column__inner .item .img__block img {
  max-height: 220px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mobility-under__support .u-page__image--ondemand02 .column:last-child {
  margin: 0 0 -30px;
}
.mobility-under__support .u-page__image--ondemand03 .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 30px;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_left {
  width: 40px;
  margin: 0 30px 0 0;
  position: relative;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_left .num {
  display: inline-block;
  width: 40px;
  height: 40px;
  background: #CA1122;
  color: #fff;
  font-size: 3rem;
  line-height: 1;
  text-align: center;
  padding: 7px 0 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mobility-under__support .u-page__image--ondemand03 .item .el_left .num span {
  display: inline-block;
  position: relative;
  z-index: 1;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_left .num::after {
  position: absolute;
  display: inline-block;
  content: "";
  border-top: 40px solid transparent;
  border-right: 40px solid rgba(0, 0, 0, 0.3);
  right: 0;
  bottom: 0;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_right {
  width: calc(100% - 40px);
}
.mobility-under__support .u-page__image--ondemand03 .item .el_right h3 {
  font-size: 1.8rem;
  border-bottom: 1px solid #000;
  padding: 0 0 2px;
  margin: 0px 0 9px;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_right ul {
  padding: 0;
}
.mobility-under__support .u-page__image--ondemand03 .item .el_right ul li {
  list-style: none;
}
.mobility-under__support .u-page__image--ondemand04 {
  overflow: auto;
  padding: 0 0 20px;
}
.mobility-under__support .u-page__image--ondemand04 .img__block img {
  height: auto;
  width: 767px;
  max-width: 767px;
}
@media screen and (min-width: 768px) {
  .mobility-under__support .u-page__image--ondemand04 .img__block img {
    width: 1072px;
    max-width: 1072px;
  }
}

/*表組*/
.mobility-under-table {
  width: 100%;
  min-width: 700px;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 5px;
}
.mobility-under-table thead tr th {
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 1rem;
  color: #CA1122;
}
.mobility-under-table thead tr td {
  text-align: center;
  font-weight: bold;
  padding: 1rem;
}
.mobility-under-table tbody tr th {
  padding: 1rem;
  background-color: #CA1122;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
  border-right: 1px solid #E9E9E9;
}
.mobility-under-table tbody tr th .img img {
  width: 100%;
  max-width: 10rem;
}
.mobility-under-table tbody tr td {
  padding: 1rem;
  border-bottom: 1px dashed #E9E9E9;
}
.mobility-under-table tbody tr:first-child td {
  border-top: 1px dashed #E9E9E9;
}

/*2列ブロック*/
@media screen and (min-width: 768px) {
  .u-page_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 991px;
    margin: 0 auto;
  }
}
.u-page_flex dl {
  width: 100%;
  background: #f5f5f5;
  border-radius: 10px;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .u-page_flex dl {
    max-width: calc(50% - 30px);
    margin: 0 15px 30px;
    padding: 20px 30px 15px;
  }
}
.u-page_flex dl dt {
  text-align: center;
  font-weight: bold;
  border-bottom: 1px solid #000;
  font-size: 20px;
  padding: 0 0 5px;
  margin: 0 0 10px;
}
.u-page_flex dl.red {
  background: #CA1122;
}
.u-page_flex dl.red * {
  color: #fff;
}
.u-page_flex dl.red dt {
  border-bottom: 1px solid #fff;
}

/*支援企業*/
.top-company_logo {
  padding: 60px 0 25px;
}
@media screen and (min-width: 768px) {
  .top-company_logo {
    padding: 100px 0 70px;
  }
}
.top-company_logo .top-company_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% + 30px);
  margin: 0 0 0 -15px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.top-company_logo .top-company_group .top-company_img {
  text-align: center;
  width: calc(50% - 30px);
  margin: 0 15px 30px;
}
@media screen and (min-width: 601px) {
  .top-company_logo .top-company_group .top-company_img {
    width: calc(33.3333333333% - 30px);
  }
}
@media screen and (min-width: 768px) {
  .top-company_logo .top-company_group .top-company_img {
    width: calc(25% - 30px);
  }
}

/*表組み*/
.feasibility-supportTable_scroll {
  overflow: auto;
}

.feasibility-supportTable {
  width: 100%;
  min-width: 1070px;
}
.feasibility-supportTable tr th {
  padding: 5px 0 10px 30px;
  vertical-align: top;
}
.feasibility-supportTable tr th .el_inner {
  margin: 0 auto;
  padding: 0 0 3px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  border-bottom: 2px solid #000;
}
.feasibility-supportTable tr th.th_title {
  padding: 5px 0 10px;
}
.feasibility-supportTable tr td {
  padding: 5px 0 5px 30px;
  vertical-align: top;
}
.feasibility-supportTable tr td .el_inner {
  margin: 0 auto;
  padding: 5px 10px;
  border: 1px solid #000;
}
.feasibility-supportTable tr td .el_inner .el_num {
  display: inline-block;
  border-radius: 100%;
  font-size: 12px;
  text-align: center;
  min-width: 28px;
  padding: 7px 0 8px;
  line-height: 1;
  margin: 0 5px 0 0;
  background: #E9E9E9;
  vertical-align: 2px;
}
.feasibility-supportTable tr td .el_inner.center {
  text-align: center;
}
.feasibility-supportTable tr td.td_title {
  position: relative;
}
.feasibility-supportTable tr td.td_title .el_inner {
  position: absolute;
  top: 5px;
  left: 0px;
  border: none;
  width: calc(100% - 0px);
  height: calc(100% - 10px);
  background: #CA1122;
  color: #fff;
}
.feasibility-supportTable tr td.td_title .el_inner span {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  height: 100%;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.feasibility-supportTable tr td.left_border {
  position: relative;
}
.feasibility-supportTable tr td.left_border::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  width: 30px;
  height: 1px;
  background: #000;
}
.feasibility-supportTable tr td.left_border_half::before {
  width: 15px;
  left: 15px;
}
.feasibility-supportTable tr td.top_border::after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 26px;
  left: 15px;
  width: 1px;
  height: 50px;
  background: #000;
}
.feasibility-supportTable tr.vertical_middle th {
  vertical-align: middle;
}
.feasibility-supportTable tr.vertical_middle td {
  vertical-align: middle;
}

/*============================================
ステップ
============================================*/
.mobility-under__step {
  position: relative;
  padding: 50px 0 60px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .mobility-under__step {
    padding: 80px 0 50px;
  }
}
.mobility-under__step > div {
  position: relative;
  z-index: 1;
}
.mobility-under__step::after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  border-left: 665px solid #eee;
  border-top: 670px solid transparent;
}
.mobility-under__step .u-page__steptitle {
  text-align: center;
  position: relative;
  margin: 0 0 15px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__steptitle {
    margin: 0 0 30px;
  }
}
.mobility-under__step .u-page__steptitle .left_arrow {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: url(../img/maas/u-page_leftarrow.svg);
  background-repeat: no-repeat;
  background-position: center left;
}
.mobility-under__step .u-page__steptitle .center_title {
  position: relative;
  z-index: 1;
  display: inline-block;
  background: #fff;
  padding: 2px 15px;
  font-size: 1.8rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__steptitle .center_title {
    font-size: 2.4rem;
  }
}
.mobility-under__step .u-page__steptitle .right_arrow {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: url(../img/maas/u-page_rightarrow.svg);
  background-repeat: no-repeat;
  background-position: center right;
}
.mobility-under__step .u-page__steptext {
  margin: 30px 0 30px;
}
.mobility-under__step .u-page__steptext h3 {
  border-left: 1px solid #707070;
  padding: 0 0 0 10px;
  margin: 0 0 10px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 2rem;
  height: 4.2rem;
}
.mobility-under__step .u-page__steptext ul {
  padding: 0;
}
.mobility-under__step .u-page__steptext ul li {
  text-indent: -15px;
  padding-left: 15px;
  list-style: none;
}
.mobility-under__step .u-page__steptext ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: #AA812F;
  margin: 0 10px 0 0;
  vertical-align: 3px;
  text-indent: 0;
}
.mobility-under__step .u-page__steptext ul li .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__step .u-page__stepscroll {
  overflow: auto;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner {
  width: 1200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 0 20px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase {
  width: 100%;
  max-width: calc(33.3333333333% - 10px);
  margin: 0 10px 0 0;
  background: #f8f8f8;
  padding: 0 20px 30px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase {
    max-width: calc(33.3333333333% - 30px);
    margin: 0 30px 0 0;
  }
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 2.2rem;
  background: #000;
  color: #fff;
  padding: 7px 0px 3px 28px;
  position: relative;
  width: calc(100% + 40px);
  margin: 0 0 0 -20px;
  font-weight: normal;
  height: 42px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3 .en {
  display: inline-block;
  font-size: 2rem;
  margin: 0 3px 0 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3 .en span {
  display: inline-block;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3 .jp {
  display: inline-block;
  font-size: 2.2rem;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3::before {
  content: "";
  display: inline-block;
  border-top: 21px solid transparent;
  border-bottom: 21px solid transparent;
  border-left: 20px solid #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h3::after {
  content: "";
  display: inline-block;
  border-top: 21px solid transparent;
  border-bottom: 21px solid transparent;
  border-left: 20px solid #000;
  position: absolute;
  top: 0;
  right: -20px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h4 {
  font-size: 2rem;
  font-weight: normal;
  padding: 2px 15px 2px 30px;
  position: relative;
  background: #D4C3A2;
  border-top: 1px solid #707070;
  margin: 30px 0 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase h4::before {
  content: "";
  display: inline-block;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #c5b494;
  position: absolute;
  top: 0;
  left: 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl {
  min-height: 256px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dt {
  margin: 15px 0 10px;
  font-size: 1.8rem;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dt::before {
  content: "";
  display: inline-block;
  margin: 0 10px 3px 0;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #aa812f;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dd {
  font-size: 1.5rem;
  margin: 0 0 5px;
  text-indent: -20px;
  padding: 0 0 0 20px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dd br {
  text-indent: none;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dd.arrow::before {
  content: "";
  display: inline-block;
  background: url(../img/maas/phase_arrow.svg);
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  margin: 0 5px 0 0;
  text-indent: 0;
  vertical-align: middle;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dd.start {
  position: relative;
  text-align: center;
  padding: 4px 2px;
  background: #CA1122;
  color: #fff;
  text-indent: 0;
  margin: 30px 0 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase dl dd.start::before {
  content: "";
  display: inline-block;
  border-top: 10px solid #000;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  position: absolute;
  top: -22px;
  left: 50%;
  bottom: auto;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase .under__text {
  background: #eee;
  border-bottom: 1px solid #cfcfcf;
  position: relative;
  min-height: 85px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase .under__text p {
  position: absolute;
  top: 50%;
  left: 31px;
  bottom: auto;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  font-size: 1.8rem;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase ul {
  padding: 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase ul li {
  list-style: none;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase01 {
  position: relative;
  z-index: 2;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase01 h3 {
  background: #828282;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase01 h3::before {
  display: none;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase01 h3::after {
  border-left: 20px solid #828282;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase02 {
  position: relative;
  z-index: 1;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase02 h3 {
  background: #4b4849;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase02 h3::after {
  border-left: 20px solid #4b4849;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase03 h3 {
  background: #b4101f;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner .phase.phase03 h3::after {
  border-left: 20px solid #b4101f;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner--ondemand .phase dl {
  min-height: 378px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 {
  width: 1200px;
  margin: 0 0 10px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table {
  width: 100%;
  height: 100%;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr {
  height: 100%;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr th {
  background: #000;
  vertical-align: middle;
  width: 10%;
  text-align: center;
  border-bottom: 2px solid #fff;
  color: #fff;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td {
  vertical-align: middle;
  width: 18%;
  height: 100%;
  padding: 0 30px 2px 15px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td .inner {
  color: #fff;
  background: #CA1122;
  height: 100%;
  position: relative;
  padding: 10px 0 10px 15px;
  min-height: 100px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td .inner::after {
  content: "";
  display: inline-block;
  border-top: 50px solid transparent;
  border-bottom: 50px solid transparent;
  border-left: 30px solid #CA1122;
  position: absolute;
  top: 0;
  right: -30px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td .inner .num {
  font-size: 1.2rem;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td .inner .num span {
  display: inline-block;
  font-size: 1.8rem;
  margin: 0 0 0 4px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell01 td .inner p {
  font-size: 1.6rem;
  line-height: 1.4;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td {
  padding: 40px 15px 20px 15px;
  position: relative;
  vertical-align: top;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td::before {
  content: "";
  display: inline-block;
  width: 70px;
  height: 70px;
  background: url(../img/maas/stepup_arrow.png);
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  top: -36px;
  right: -20px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td:last-child::before {
  display: none;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td ul {
  padding: 0;
  margin: 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td ul li {
  list-style: none;
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 20px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td ul li .el_num {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tbody tr.cell02 td ul li .el_num img {
  max-width: 11px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 table tfoot th {
  padding: 15px 15px 0 0;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 .img__block {
  margin: auto;
  max-width: 767px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02 .img__block {
    max-width: 1072px;
  }
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02.u-page__stepscroll__inner02--poc table tbody tr.cell01 td .inner p {
  font-size: 2rem;
  letter-spacing: 1px;
}
.mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02.u-page__stepscroll__inner02--alliance {
  width: 767px;
  margin: 0 auto 10px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__stepscroll .u-page__stepscroll__inner02.u-page__stepscroll__inner02--alliance {
    width: 1078px;
  }
}
.mobility-under__step .pickup-txt {
  text-align: left;
  font-size: 1.6rem;
  margin: 0 0 40px;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .pickup-txt {
    padding: 0;
    text-align: center;
  }
}
.mobility-under__step .pickup-txt .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__step .u-page__inner {
  background: #fff;
  padding: 50px 30px;
  margin: 0 0 30px;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__inner {
    padding: 50px 64px;
  }
}
.mobility-under__step .u-page__inner > ul {
  padding: 0;
}
.mobility-under__step .u-page__inner > ul li {
  padding: 0 0 30px;
  margin: 0 0 30px;
  border-bottom: 1px solid #d4d4d4;
  text-align: center;
  list-style: none;
}
.mobility-under__step .u-page__inner > ul li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}
.mobility-under__step .u-page__inner .pickup-txt01 {
  padding: 70px 0 0;
  position: relative;
}
.mobility-under__step .u-page__inner .pickup-txt01::before {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  border-top: 25px solid #CA1122;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  width: 0;
  height: 0;
  background: 0;
}
.mobility-under__step .u-page__inner .pickup-txt01::after {
  display: none;
}
.mobility-under__step .u-page__inner > h3 {
  font-size: 2.2rem;
  text-align: left;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 20px;
  border-bottom: 1px solid #000;
}
.mobility-under__step .u-page__inner > .text__block {
  margin: 0 0 50px;
}
.mobility-under__step .u-page__inner > .text__block .strong {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 242, 160, 0)), color-stop(60%, #d4c3a2), to(#d4c3a2));
  background: linear-gradient(rgba(255, 242, 160, 0) 60%, #d4c3a2 60%, #d4c3a2);
}
.mobility-under__step .u-page__scroll .u-page__scroll__inner {
  overflow: auto;
  padding: 0 0 20px;
}
.mobility-under__step .u-page__scroll .u-page__scroll__inner .img__block img {
  height: auto;
  max-width: 767px;
  width: 767px;
}
@media screen and (min-width: 768px) {
  .mobility-under__step .u-page__scroll .u-page__scroll__inner .img__block img {
    max-width: 1072px;
    width: 1072px;
  }
}

/*ステップレイアウト2*/
.u-page__stepblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 20px);
  margin: 0 0 0 -10px;
}
.u-page__stepblock .item {
  width: calc(50% - 20px);
  margin: 0 10px 30px;
}
@media screen and (min-width: 768px) {
  .u-page__stepblock .item {
    width: calc(25% - 20px);
  }
}

.stepblockTitle {
  margin: 0 0 20px;
}
.stepblockTitle p {
  font-size: 4.3vw;
  color: #fff;
  background: #CA1122;
  height: 100%;
  position: relative;
  padding: 10px;
}
@media screen and (min-width: 601px) {
  .stepblockTitle p {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .stepblockTitle p {
    font-size: 1.8rem;
    max-width: calc(100% - 20px);
    padding: 10px 0 10px 15px;
  }
}
@media screen and (min-width: 768px) {
  .stepblockTitle p::after {
    content: "";
    display: inline-block;
    border-top: 26px solid transparent;
    border-bottom: 26px solid transparent;
    border-left: 20px solid #CA1122;
    position: absolute;
    top: 0;
    right: -20px;
  }
}

.stepblockImg {
  text-align: center;
  margin: 0 0 20px;
}

.stepblockList {
  margin: 0;
  padding: 0;
}
.stepblockList li {
  list-style: none;
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 20px;
}
.stepblockList li .el_num {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.stepblockList li .el_num img {
  max-width: 11px;
}

/*============================================
資料ダウンロード
============================================*/
.mobility-under__download {
  background: url(../img/maas/contact_background.jpg);
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  color: #fff;
  padding: 50px 0 40px;
}
@media screen and (min-width: 768px) {
  .mobility-under__download {
    padding: 80px 0 60px;
  }
}
.mobility-under__download .img__block {
  margin: 0 0 30px;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .mobility-under__download .u-page__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.mobility-under__download .u-page__inner .item {
  width: 100%;
}
.mobility-under__download .u-page__inner .item h2 {
  font-size: 2.8rem;
  margin: 0 0 20px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .mobility-under__download .u-page__inner .item h2 {
    text-align: left;
  }
}
.mobility-under__download .u-page__inner .item p {
  margin: 0 0 40px;
  text-align: center;
  font-size: 1.5rem;
}
@media screen and (min-width: 992px) {
  .mobility-under__download .u-page__inner .item p {
    text-align: left;
    font-size: 1.6rem;
  }
}
.mobility-under__download .u-page__inner .item.item01 {
  margin: 0 0 30px;
}
@media screen and (min-width: 992px) {
  .mobility-under__download .u-page__inner .item.item01 {
    margin: 0 60px 0 0;
  }
}
.mobility-under__download .u-page__inner .item.item02 {
  text-align: center;
  margin: 0 0 30px;
}
@media screen and (min-width: 992px) {
  .mobility-under__download .u-page__inner .item.item02 {
    max-width: 381px;
  }
}

@media screen and (min-width: 768px) {
  .btn__separate {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.btn__separate a {
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .btn__separate a {
    max-width: calc(50% - 15px);
    margin: 0 15px 20px;
  }
}

.mobility__btn01 {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #CA1122;
  border: 1px solid #CA1122;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .mobility__btn01 {
    padding: 16px 10px;
  }
}
.mobility__btn01:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122 !important;
}

.mobility__btn02 {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #000;
  border: 1px solid #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .mobility__btn02 {
    padding: 16px 10px;
  }
}
.mobility__btn02 span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 35px;
}
.mobility__btn02 span::before {
  content: "";
  display: inline-block;
  width: 27px;
  height: 22px;
  background: url(../img/maas/icon_contact.svg);
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.mobility__btn02:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122 !important;
}
.mobility__btn02:hover span::before {
  background: url(../img/maas/icon_contact_red.svg);
  background-repeat: no-repeat;
  background-size: 100% auto;
}

/*ダウンロードボタン*/
.mobility__btn--download {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #CA1122;
  border: 1px solid #CA1122;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .mobility__btn--download {
    padding: 16px 10px;
  }
}
.mobility__btn--download span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 25px;
}
.mobility__btn--download span::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 25px;
  background: url(../img/ico_download_white.png) no-repeat center center/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.mobility__btn--download:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122 !important;
}
.mobility__btn--download:hover span::before {
  background: url(../img/ico_download.png) no-repeat center center/100% auto;
}

/*お問い合わせボタン*/
.mobility__btn--contact {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #000;
  border: 1px solid #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .mobility__btn--contact {
    padding: 16px 10px;
  }
}
.mobility__btn--contact span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 28px;
}
.mobility__btn--contact span::before {
  content: "";
  display: inline-block;
  width: 21px;
  height: 25px;
  background: url(../img/maas/icon_contact.svg) no-repeat center center/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.mobility__btn--contact:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122 !important;
}
.mobility__btn--contact:hover span::before {
  background: url(../img/maas/icon_contact_red.svg) no-repeat center center/100% auto;
}

/*コンサルティング*/
.mobility-under__consulting {
  background: url(../img/maas/mobility-under_consulting_bg.jpg);
  background-size: cover;
  background-position: top center;
  overflow: hidden;
  padding: 50px 0 30px;
}
@media screen and (min-width: 768px) {
  .mobility-under__consulting {
    padding: 80px 0 50px;
  }
}
.mobility-under__consulting .u-page__inner {
  padding: 10px 0 0;
}
@media screen and (min-width: 992px) {
  .mobility-under__consulting .u-page__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}
.mobility-under__consulting .u-page__inner .item {
  margin: 0 0 30px;
  width: 100%;
  color: #fff;
}
@media screen and (min-width: 992px) {
  .mobility-under__consulting .u-page__inner .item {
    max-width: calc(33.3333333333% - 30px);
    margin: 0 15px 30px;
  }
}
.mobility-under__consulting .u-page__inner .item .img__block {
  text-align: center;
  margin: 0 0 30px;
}
.mobility-under__consulting .u-page__inner .item .img__block img {
  display: inline-block;
  max-width: 214px;
}
.mobility-under__consulting .u-page__inner .item h3 {
  font-size: 1.9rem;
  margin: 0 0 15px;
  text-align: center;
  font-weight: normal;
}
.mobility-under__consulting .u-page__inner .item p {
  font-size: 1.6rem;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .mobility-under__consulting .u-page__inner .item p {
    text-align: center;
  }
}
.mobility-under__consulting .u-page__inner .item p.left {
  text-align: left !important;
}
@media screen and (min-width: 992px) {
  .mobility-under__consulting .u-page__inner.u-page__inner--4col .item {
    max-width: calc(50% - 30px);
    margin: 0 15px 30px;
  }
}
.mobility-under__consulting .u-page__inner.u-page__inner--4col .item p {
  text-align: left;
  max-width: 420px;
  margin: auto;
  padding: 0 0 0 15px;
  text-indent: -15px;
}

/*支援事例*/
.mobility-under__supportcase {
  background: #f5f5f5;
  padding: 50px 0 60px;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase {
    padding: 80px 0;
  }
}
.mobility-under__supportcase .supportcase__title {
  border-bottom: 1px solid #707070;
  padding: 0 15px 20px;
  margin: 0 0 40px;
  font-weight: normal;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .supportcase__title {
    border-left: 1px solid #707070;
    border-bottom: none;
    padding: 0 0 0 30px;
  }
}
.mobility-under__supportcase .supportcase__title .top_text {
  display: block;
  font-size: 1.6rem;
  margin: 0 0 4px;
}
.mobility-under__supportcase .supportcase__title .main_text {
  display: block;
  font-size: 1.9rem;
  margin: 0 0 15px;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .supportcase__title .main_text {
    font-size: 2.9rem;
  }
}
.mobility-under__supportcase .supportcase__title .under_text {
  display: block;
  font-size: 1.8rem;
}
.mobility-under__supportcase .u-page__inner {
  background: #fff;
  border-top: 2px solid #D4C3A2;
  padding: 40px 15px 10px;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 992px) {
  .mobility-under__supportcase .u-page__inner {
    padding: 40px 70px;
  }
}
.mobility-under__supportcase .u-page__inner h4.type01 {
  text-align: center;
  font-weight: normal;
  font-size: 2.4rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner h4.type01 {
    font-size: 3rem;
    margin: 0 0 40px;
  }
}
.mobility-under__supportcase .u-page__inner h4.type02 {
  border-top: 3px solid #D4C3A2;
  text-align: center;
  margin: 20px 0;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner h4.type02 {
    margin: 0 0 36px;
  }
}
.mobility-under__supportcase .u-page__inner h4.type02 span {
  background: #D4C3A2;
  display: inline-block;
  font-size: 2.3rem;
  min-width: 220px;
  max-width: 80%;
  padding: 6px 0 0;
  position: relative;
  font-weight: normal;
  vertical-align: top;
  height: 43px;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner h4.type02 span {
    min-width: 258px;
  }
}
.mobility-under__supportcase .u-page__inner h4.type02 span::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: -21px;
  border-top: 43px solid #D4C3A2;
  border-left: 21px solid transparent;
}
.mobility-under__supportcase .u-page__inner h4.type02 span::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: -21px;
  border-top: 43px solid #D4C3A2;
  border-right: 21px solid transparent;
}
.mobility-under__supportcase .u-page__inner table * {
  vertical-align: top;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}
.mobility-under__supportcase .u-page__inner02 dl {
  width: 100%;
  padding: 20px 0 10px;
  border-top: 1px solid #707070;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner02 dl {
    max-width: calc(50% - 30px);
    margin: 0 15px 30px;
  }
}
.mobility-under__supportcase .u-page__inner02 dl dt {
  margin: 0 0 15px;
  font-weight: normal;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner02 dl dt {
    margin: 0 0 30px;
  }
}
.mobility-under__supportcase .u-page__inner02 dl dt .main_text {
  display: block;
  font-size: 1.9rem;
  margin: 0 0 5px;
  color: #483e2f;
}
.mobility-under__supportcase .u-page__inner02 dl dt .sub_text {
  display: block;
  font-size: 1.2rem;
  color: #a5967f;
}
.mobility-under__supportcase .u-page__inner02 dl dd {
  font-size: 1.6rem;
  margin: 0 0 15px;
}
.mobility-under__supportcase .u-page__inner02 ul {
  margin: 0;
  padding: 0;
}
.mobility-under__supportcase .u-page__inner02 ul li {
  list-style: none;
  text-indent: -15px;
  padding-left: 15px;
}
.mobility-under__supportcase .u-page__inner02 ul li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: #aa812f;
  margin: 0 10px 0 0;
  vertical-align: 3px;
  text-indent: 0;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}
.mobility-under__supportcase .u-page__inner03 .item {
  text-align: center;
  width: 100%;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .mobility-under__supportcase .u-page__inner03 .item {
    max-width: calc(33.3333333333% - 30px);
    margin: 0 15px 30px;
  }
}
.mobility-under__supportcase .u-page__inner03 .item h5 {
  padding: 0;
  margin: 0 0 15px;
}
.mobility-under__supportcase .u-page__inner03 .item h5 span {
  display: inline-block;
  font-size: 16px;
  width: 100%;
  color: #fff;
  background-color: #B4101F;
  padding: 4px 7px;
  border-radius: 30px;
}
.mobility-under__supportcase .u-page__inner03 .item h5 + .img__block {
  border: 1px solid #E9E9E9;
  padding: 10px;
  -webkit-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}
.mobility-under__supportcase .u-page__inner03 .item .img__block {
  text-align: center;
}
.mobility-under__supportcase .u-page__inner03 .item .img__block img {
  display: inline-block;
}

/*===================================================================
top-evx
===================================================================*/
.top-evt {
  overflow: hidden;
  background: url(../img/maas/top_ei_bg.jpg);
  background-position: center center;
  background-size: cover;
  padding: 50px 0 20px;
}
@media screen and (min-width: 768px) {
  .top-evt {
    padding: 115px 0 85px;
  }
}

.top-evtWrap {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .top-evtWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.top-evtWrap .top-evtWrap__top {
  width: 100%;
  margin-bottom: 30px;
}
.top-evtWrap .top-evtWrap__top .top-evtImg {
  display: block;
}
@media screen and (min-width: 768px) {
  .top-evtWrap .top-evtWrap__top .top-evtImg {
    display: none;
  }
}
.top-evtWrap .top-evtWrap__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .top-evtWrap .top-evtWrap__left {
    max-width: 50%;
  }
}
.top-evtWrap .top-evtWrap__left .top-evtImg {
  display: block;
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .top-evtWrap .top-evtWrap__left .top-evtImg {
    display: none;
  }
}
.top-evtWrap .top-evtWrap__right {
  width: 100%;
  display: none;
}
@media screen and (min-width: 768px) {
  .top-evtWrap .top-evtWrap__right {
    display: block;
    max-width: calc(50% - 30px);
    margin: 0 0 0 30px;
  }
}

.top-evtImg {
  text-align: center;
  margin: 0 0 30px;
  line-height: 1;
}
.top-evtImg img {
  max-width: 62%;
  padding-left: 12%;
}
@media screen and (min-width: 768px) {
  .top-evtImg img {
    min-width: 105%;
    padding-left: 20%;
  }
}

.top-evtHeadline {
  color: #fff;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.4;
  margin: 0 0 20px;
  width: 100%;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.top-evtHeadline .sub_text {
  max-width: 20vw;
  margin: 0px 2vw 0 0;
}
@media screen and (min-width: 768px) {
  .top-evtHeadline .sub_text {
    max-width: 6vw;
    margin: 0px 2vw 0 0;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtHeadline .sub_text {
    max-width: 100px;
    margin: 0 20px 0 0;
  }
}
.top-evtHeadline .main_text {
  font-size: 5.5vw;
  letter-spacing: -1px;
}
@media screen and (min-width: 768px) {
  .top-evtHeadline .main_text {
    font-size: 2.5vw;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtHeadline .main_text {
    font-size: 4.1rem;
    white-space: nowrap;
  }
}
.top-evtHeadline .main_text span {
  font-size: 6.5vw;
  letter-spacing: 1px;
}
@media screen and (min-width: 768px) {
  .top-evtHeadline .main_text span {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtHeadline .main_text span {
    font-size: 4.8rem;
  }
}
.top-evtHeadline .main_text .d-block {
  display: block;
}
@media screen and (min-width: 768px) {
  .top-evtHeadline .main_text .d-block {
    display: none;
  }
}

.top-evtPrice {
  color: #fff;
  margin: 0 0 30px;
}
.top-evtPrice dt {
  border-bottom: 1px solid #88afd1;
  padding: 0 0 10px;
  margin: 0 0 15px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .top-evtPrice dt {
    text-align: left;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtPrice dt {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 0 2px;
  }
}
.top-evtPrice dt .main_text {
  display: block;
  font-size: 2.7rem;
  font-weight: 500;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  letter-spacing: 1px;
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .top-evtPrice dt .main_text {
    font-size: 3rem;
    margin: 0;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtPrice dt .main_text {
    margin: 0 10px 0 0;
  }
}
.top-evtPrice dt .sub_text {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
}
@media screen and (min-width: 768px) {
  .top-evtPrice dt .sub_text {
    font-size: 1.6rem;
  }
}
.top-evtPrice dt .sub_text .d-block {
  display: block;
}
@media screen and (min-width: 768px) {
  .top-evtPrice dt .sub_text .d-block {
    display: none;
  }
}
@media screen and (min-width: 1400px) {
  .top-evtPrice dd {
    text-align: right;
  }
}
.top-evtPrice dd .main_text {
  display: inline-block;
  font-size: 1.7rem;
  font-weight: bold;
  margin: 0 15px 0 0;
}
@media screen and (min-width: 1400px) {
  .top-evtPrice dd .main_text {
    margin: 0 0 0 15px;
  }
}
.top-evtPrice dd .main_text span {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: normal;
  margin: 0 0 0 6px;
}

.top-evtText {
  color: #fff;
  margin: 0 0 40px;
}

.top-evtIndex {
  margin-bottom: 25px;
}
.top-evtIndex .top-evtIndexTitle {
  font-weight: bold;
  color: #fff;
  border-bottom: 1px solid #fff;
  padding: 0 0 5px;
  margin: 0 0 10px;
}
.top-evtIndex p {
  color: #fff;
}
.top-evtIndex table {
  margin: 20px 0;
}
.top-evtIndex table tbody tr th {
  color: #fff;
  font-weight: bold;
}
.top-evtIndex table tbody tr td {
  padding: 0 0 0 15px;
  color: #fff;
}

.top-evtBtn {
  padding: 0 0 15px;
}
@media screen and (min-width: 768px) {
  .top-evtBtn {
    padding: 0;
  }
}
@media screen and (min-width: 992px) {
  .top-evtBtn {
    max-width: 618px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.top-evtBtn .top-evtBtnItem {
  width: 100%;
  margin: 0 0 15px;
}
@media screen and (min-width: 768px) {
  .top-evtBtn .top-evtBtnItem {
    max-width: 293px;
    margin: 0;
  }
}
@media screen and (min-width: 992px) {
  .top-evtBtn .top-evtBtnItem {
    margin: 0 15px 0 0;
  }
}
.top-evtBtn .top-evtBtnItem .evtBtn01 {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 15px 10px;
  position: relative;
  z-index: 1;
  background: rgb(245, 208, 136);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(245, 208, 136)), to(rgb(255, 239, 207)));
  background: linear-gradient(0deg, rgb(245, 208, 136) 0%, rgb(255, 239, 207) 100%);
  border: 1px solid rgb(245, 208, 136);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
.top-evtBtn .top-evtBtnItem .evtBtn01 .main_text {
  display: inline-block;
}
.top-evtBtn .top-evtBtnItem .evtBtn01 .el_link {
  position: absolute;
  top: 5px;
  right: 5px;
  max-width: 13px;
  line-height: 1;
}
.top-evtBtn .top-evtBtnItem .evtBtn01:hover {
  opacity: 1;
  background: rgb(212, 177, 109);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(212, 177, 109)), to(rgb(255, 218, 145)));
  background: linear-gradient(0deg, rgb(212, 177, 109) 0%, rgb(255, 218, 145) 100%);
}
.top-evtBtn .top-evtBtnItem .evtBtn02 {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px;
  position: relative;
  z-index: 1;
  background: #000;
  border: 1px solid #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .top-evtBtn .top-evtBtnItem .evtBtn02 {
    padding: 17px 10px;
  }
}
.top-evtBtn .top-evtBtnItem .evtBtn02 .main_text {
  display: inline-block;
}
.top-evtBtn .top-evtBtnItem .evtBtn02:hover {
  opacity: 1;
  background: #fff;
  border: 1px solid #CA1122;
  color: #CA1122 !important;
}
@media screen and (min-width: 992px) {
  .top-evtBtn .top-evtBtnItem:last-child {
    margin: 0 0 0 15px;
  }
}

/*===================================================================
EVX
===================================================================*/
/*アプローチ*/
.evxApproach {
  position: relative;
  padding: 17px 0 30px;
}
@media screen and (min-width: 768px) {
  .evxApproach {
    padding: 17px 0 43px;
  }
}
.evxApproach .evxApproachBefore {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 75vw;
  background: url(../img/maas/evx_approac_bg01.jpg) no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .evxApproach .evxApproachBefore {
    height: 383px;
  }
}
@media screen and (min-width: 992px) {
  .evxApproach .evxApproachBefore {
    height: 453px;
  }
}
.evxApproach .evxApproachAfter {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 75vw);
  background: url(../img/maas/evx_approac_bg02.jpg) no-repeat;
  background-position: right bottom;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .evxApproach .evxApproachAfter {
    height: calc(100% - 383px);
  }
}
@media screen and (min-width: 992px) {
  .evxApproach .evxApproachAfter {
    height: calc(100% - 453px);
  }
}
.evxApproach .evxApproachAfter::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/maas/evx_approac_bg02.svg) no-repeat;
  background-position: right bottom;
  background-size: 40%;
}
@media screen and (min-width: 1400px) {
  .evxApproach .evxApproachAfter::before {
    background-size: auto;
  }
}
.evxApproach .width-1200 {
  position: relative;
  z-index: 3;
}
.evxApproach .breadcrumbs {
  background: none;
  padding: 0;
  margin: 0 0 10vw;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .evxApproach .breadcrumbs {
    margin: 0 0 70px;
  }
}
.evxApproach .breadcrumbs li a {
  color: #fff;
}

.evxApproachWrap {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .evxApproachWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.evxApproachWrap .evxApproachWrap__left {
  width: 100%;
}
@media screen and (min-width: 1400px) {
  .evxApproachWrap .evxApproachWrap__left {
    position: relative;
    top: -10px;
  }
}
.evxApproachWrap .evxApproachWrap__left .evxApproachWrap__leftInner {
  min-height: 63vw;
}
@media screen and (min-width: 768px) {
  .evxApproachWrap .evxApproachWrap__left .evxApproachWrap__leftInner {
    min-height: 318px;
    max-width: 595px;
  }
}
@media screen and (min-width: 992px) {
  .evxApproachWrap .evxApproachWrap__left .evxApproachWrap__leftInner {
    min-height: 388px;
  }
}
.evxApproachWrap .evxApproachWrap__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .evxApproachWrap .evxApproachWrap__right {
    display: block;
    max-width: 457px;
    margin: 0 0 0 30px;
  }
}
@media screen and (min-width: 1400px) {
  .evxApproachWrap .evxApproachWrap__right {
    margin: 0 60px 0 87px;
  }
}

.evxApproacHeadline {
  margin: 0 0 12px;
  text-align: center;
  color: #fff;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 600;
}
.evxApproacHeadline .main_text {
  display: inline-block;
  line-height: 1.4;
  font-size: 6.5vw;
}
@media screen and (min-width: 768px) {
  .evxApproacHeadline .main_text {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 1400px) {
  .evxApproacHeadline .main_text {
    font-size: 4.9rem;
  }
}

.evxApproacText {
  margin: 0 0 22px;
  font-size: 3vw;
  text-align: center;
  color: #fff;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .evxApproacText {
    font-size: 1.5vw;
  }
}
@media screen and (min-width: 1400px) {
  .evxApproacText {
    font-size: 1.8rem;
  }
}

.evxApproacText02 {
  text-align: center;
  margin: 0 0 30px;
}
.evxApproacText02 img {
  max-width: 60%;
}
@media screen and (min-width: 768px) {
  .evxApproacText02 img {
    max-width: 439px;
  }
}

.evxApproacText03 {
  max-width: 587px;
}
.evxApproacText03 p {
  margin: 0 0 25px;
}
.evxApproacText03 p .el_red {
  color: #B4101F;
  font-weight: bold;
}

.evxApproacImg {
  text-align: center;
  margin: 0 0 32px;
  line-height: 1;
}
.evxApproacImg img {
  -webkit-box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1200px) {
  .evxApproacImg img {
    -webkit-box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.15);
            box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 767px) {
  .evxApproacImg img {
    max-width: 50%;
  }
}

.evxApproacStatus {
  background: rgba(50, 50, 50, 0.05);
  padding: 15px 35px;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .evxApproacStatus {
    background: rgba(255, 255, 255, 0.9);
  }
}
.evxApproacStatus table tbody tr th {
  font-size: 1.5rem;
  font-weight: bold;
  padding: 5px 0;
  vertical-align: top;
  line-height: 1.4;
  width: 70px;
}
.evxApproacStatus table tbody tr td {
  font-size: 1.5rem;
  padding: 5px 0;
  vertical-align: top;
  line-height: 1.4;
}

/*アプローチ*/
.evxContent {
  padding: 60px 0 30px;
  background: #f5f5f5 url(../img/maas/evx_content_bg.svg) no-repeat;
  background-position: right top;
  background-size: 40%;
}
@media screen and (min-width: 768px) {
  .evxContent {
    padding: 86px 0 52px;
  }
}
@media screen and (min-width: 1400px) {
  .evxContent {
    background-size: auto;
  }
}

.evxContentWrap {
  width: 100%;
  background: #fff;
  padding: 30px 30px 0;
  overflow: hidden;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .evxContentWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 70px 60px 40px;
  }
}
.evxContentWrap .evxContentWrap__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .evxContentWrap .evxContentWrap__left {
    max-width: 528px;
    margin: 0 15px 0 0;
  }
}
.evxContentWrap .evxContentWrap__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .evxContentWrap .evxContentWrap__right {
    max-width: 538px;
    margin: 0px 0 0 5px;
  }
}

.evxContentList {
  padding: 0 0 20px;
}
.evxContentList dt {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  margin: 0 0 10px;
}
.evxContentList dt .sub_text {
  line-height: 1;
  display: inline-block;
  background: #B4101F;
  font-size: 1.5rem;
  font-weight: normal;
  padding: 5px 5px 5px 10px;
  position: relative;
  color: #fff;
  margin: 0 0 10px;
}
.evxContentList dt .sub_text span {
  font-size: 2rem;
  display: inline-block;
  margin: 0 0 0 2px;
}
.evxContentList dt .sub_text::after {
  content: "";
  display: inline-block;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 15px solid #B4101F;
  position: absolute;
  top: 0;
  right: -15px;
}
.evxContentList dt .main_text {
  display: block;
  font-weight: 600;
  font-size: 2.2rem;
  line-height: 1.4;
}
.evxContentList dt .main_text span {
  font-size: 1.7rem;
}
.evxContentList dd {
  margin: 0 0 10px;
  font-size: 1.5rem;
}
.evxContentList dd p {
  padding: 0 0 0 15px;
  text-indent: -15px;
}

.evxContentList02 {
  padding: 24px 0 20px;
  margin: 0;
  border-top: 1px solid #707070;
}
.evxContentList02 li {
  list-style: none;
  padding: 0 0 10px 30px;
  position: relative;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 600;
  line-height: 1.4;
}
.evxContentList02 li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 15px;
  height: 15px;
  background: #B4101F;
}
.evxContentList02 li::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 4px;
  left: 0;
  border-top: 15px solid transparent;
  border-right: 15px solid #750000;
}

/*ボタンエリア*/
.evxBtn {
  background: #BB1222;
  padding: 55px 0 25px;
}

.evxBtnWrap {
  width: 100%;
  padding: 0 0 15px;
}
@media screen and (min-width: 992px) {
  .evxBtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
    padding: 0;
  }
}
.evxBtnWrap .evxBtnWrapItem {
  width: 100%;
  margin: 0 0 15px;
}
@media screen and (min-width: 992px) {
  .evxBtnWrap .evxBtnWrapItem {
    width: calc(33.3333333333% - 30px);
    margin: 0 15px 30px;
  }
}

.evtBtnAmazon {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px 2px;
  position: relative;
  z-index: 1;
  background: rgb(245, 208, 136);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(245, 208, 136)), to(rgb(255, 239, 207)));
  background: linear-gradient(0deg, rgb(245, 208, 136) 0%, rgb(255, 239, 207) 100%);
  border: 2px solid #22303D;
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .evtBtnAmazon {
    padding: 29px 10px 15px;
  }
}
.evtBtnAmazon .main_text {
  display: inline-block;
}
.evtBtnAmazon .el_link {
  position: absolute;
  top: 5px;
  right: 5px;
  max-width: 13px;
  line-height: 1;
}
.evtBtnAmazon:hover {
  opacity: 1;
  background: rgb(212, 177, 109);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(212, 177, 109)), to(rgb(255, 218, 145)));
  background: linear-gradient(0deg, rgb(212, 177, 109) 0%, rgb(255, 218, 145) 100%);
}

.evtBtnRakuten {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 14px 10px 2px;
  position: relative;
  z-index: 1;
  background: #fff;
  border: 2px solid #750000;
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .evtBtnRakuten {
    padding: 29px 10px 15px;
  }
}
.evtBtnRakuten .main_text {
  display: inline-block;
}
.evtBtnRakuten .el_link {
  position: absolute;
  top: 5px;
  right: 5px;
  max-width: 13px;
  line-height: 1;
}
.evtBtnRakuten:hover {
  opacity: 1;
  background: #ffcbcb;
}

.evtBtnKinokuniya {
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
  text-align: center;
  padding: 7px 10px 0px;
  position: relative;
  z-index: 1;
  background: #fff;
  border: 2px solid #00409A;
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff !important;
  font-size: 1.9rem;
}
@media screen and (min-width: 768px) {
  .evtBtnKinokuniya {
    padding: 22px 10px 13px;
  }
}
.evtBtnKinokuniya .main_text {
  display: inline-block;
}
.evtBtnKinokuniya .el_link {
  position: absolute;
  top: 5px;
  right: 5px;
  max-width: 13px;
  line-height: 1;
}
.evtBtnKinokuniya:hover {
  opacity: 1;
  background: #cbd7ff;
}

/*=======================
資料ダウンロード完了
=======================*/
.pdfWrap {
  background: #fafafa;
  padding: 30px 15px;
}
@media screen and (min-width: 768px) {
  .pdfWrap {
    padding: 50px 30px;
  }
}

.pdfName {
  text-align: center;
  font-size: 1.7rem;
  font-weight: bold;
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .pdfName {
    font-size: 2rem;
  }
}

.pdfLink {
  text-align: center;
}
.pdfLink a {
  display: inline-block;
  font-size: 2rem;
  color: #CA1122 !important;
  border-bottom: 1px solid #CA1122;
  padding: 5px 0 5px 30px;
  background: url(../img/ico_download.png) no-repeat left center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.pdfLink a:hover {
  opacity: 0.6;
}

/*=======================
コラム
=======================*/
/*2カラム*/
.layout {
  display: block;
}
@media screen and (min-width: 768px) {
  .layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.layout .layout__left {
  width: 100%;
}
.layout .layout__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .layout .layout__right {
    min-width: 270px;
    max-width: 270px;
    margin: 0 0 0 30px;
    min-height: 200px;
  }
}
@media screen and (min-width: 992px) {
  .layout .layout__right {
    margin: 0 0 0 60px;
  }
}

.sideMenu {
  position: sticky;
  top: 130px;
}
.sideMenu ul {
  padding: 0 0 15px;
}
.sideMenu ul li {
  list-style: none;
  padding: 0;
  margin: 0 auto 15px;
}
.sideMenu ul li a {
  padding: 15px;
  display: block;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
}

/* column_title */
.column_title {
  background: none;
}
.column_title .column_title_l {
  width: 100%;
  float: none;
  min-height: auto;
  margin: 0 0 30px;
}
.column_title .column_title_l .column_theme img {
  max-width: 154px;
  display: inline-block;
}
.column_title .column_title_l h1 {
  line-height: 1.4;
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .column_title .column_title_l h1 {
    font-size: 2.5rem;
  }
}
.column_title .column_title_r {
  width: 100%;
  float: none;
  padding: 0 5px 0 0;
  margin: 0 0 15px;
}
.column_title .box_summary {
  background: url(../img/column/bg_01.png) no-repeat right 90%;
  background-size: cover;
  overflow: hidden;
  padding: 3rem 3rem 1.5rem;
  margin: 0;
}
.column_title .box_summary .title_summary {
  margin: 0 0 15px;
  font-size: 2rem;
}
.column_title .box_summary .text_summary {
  padding: 0;
  margin: 0;
}
.column_title .box_summary .text_summary p {
  font-size: 1.5rem !important;
}

/*=======================================================================
エディタ　レイアウト
=======================================================================*/
#main_contents_in .layout_opinion {
  font-size: 1.6rem;
  /*===============
  太字タグ
  ===============*/
  /*===============
  iタグ
  ===============*/
  /*===============
  リンクタグ
  ===============*/
  /*===============
  リストタグ
  ===============*/
  /*===============
  番号付きリストタグ
  ===============*/
  /*===============
  引用タグ単語
  ===============*/
  /*===============
  引用タグ長文
  ===============*/
  /*===============
  見出しタグ
  ===============*/
  /*===============
  強調タグ
  ===============*/
  /*===============
  テーブルタグ
  ===============*/
  /*===============
  imgタグ
  ===============*/
  /*===============
  CVエリア
  ===============*/
}
#main_contents_in .layout_opinion strong {
  font-weight: bold;
}
#main_contents_in .layout_opinion b {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #ff8c8c));
  background: linear-gradient(transparent 75%, #ff8c8c 75%);
}
#main_contents_in .layout_opinion i {
  font-style: italic;
  font-weight: bold;
  background: #ffe8e8;
  color: #000;
}
#main_contents_in .layout_opinion a {
  display: block;
  padding: 0.8rem 1.5rem;
  background: #efefef;
  border-radius: 0.5rem;
  margin: 0.5rem 0 1rem;
  color: #CA1122;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#main_contents_in .layout_opinion a:hover {
  opacity: 0.7;
}
#main_contents_in .layout_opinion ul,
#main_contents_in .layout_opinion ol,
#main_contents_in .layout_opinion table,
#main_contents_in .layout_opinion h1,
#main_contents_in .layout_opinion h2,
#main_contents_in .layout_opinion h3,
#main_contents_in .layout_opinion h4,
#main_contents_in .layout_opinion h5,
#main_contents_in .layout_opinion h6 {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
#main_contents_in .layout_opinion ul a,
#main_contents_in .layout_opinion ol a,
#main_contents_in .layout_opinion table a,
#main_contents_in .layout_opinion h1 a,
#main_contents_in .layout_opinion h2 a,
#main_contents_in .layout_opinion h3 a,
#main_contents_in .layout_opinion h4 a,
#main_contents_in .layout_opinion h5 a,
#main_contents_in .layout_opinion h6 a {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  text-decoration: underline;
}
#main_contents_in .layout_opinion ul a:hover,
#main_contents_in .layout_opinion ol a:hover,
#main_contents_in .layout_opinion table a:hover,
#main_contents_in .layout_opinion h1 a:hover,
#main_contents_in .layout_opinion h2 a:hover,
#main_contents_in .layout_opinion h3 a:hover,
#main_contents_in .layout_opinion h4 a:hover,
#main_contents_in .layout_opinion h5 a:hover,
#main_contents_in .layout_opinion h6 a:hover {
  text-decoration: none;
  opacity: 1;
}
#main_contents_in .layout_opinion ul {
  padding: 0;
  margin: 3rem 0;
}
#main_contents_in .layout_opinion ul li {
  list-style: none;
  padding: 0 0 0 1.5rem;
  margin: 0 0 0.5rem;
  position: relative;
}
#main_contents_in .layout_opinion ul li::before {
  content: "";
  display: inline-block;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 100%;
  background: #CA1122;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
#main_contents_in .layout_opinion ol {
  padding: 0 0 0 1.8rem;
  margin: 3rem 0;
}
#main_contents_in .layout_opinion ol li {
  padding: 0;
  margin: 0 0 0.5rem;
  position: relative;
}
#main_contents_in .layout_opinion q {
  padding: 0 2rem;
  margin: 0;
  position: relative;
  display: inline-block;
  border-radius: 0.5rem;
}
#main_contents_in .layout_opinion q::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 0.1rem;
  left: 0.9rem;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #707070;
  line-height: 1;
}
#main_contents_in .layout_opinion q::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: 0.1rem;
  right: 0.9rem;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #707070;
  line-height: 1;
}
#main_contents_in .layout_opinion blockquote {
  padding: 1.5rem 3.5rem;
  margin: 2.5rem 0 3rem;
  background: #E9E9E9;
  position: relative;
  display: block;
  border-radius: 0.5rem;
}
#main_contents_in .layout_opinion blockquote p {
  margin: 0;
}
#main_contents_in .layout_opinion blockquote::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 0.9rem;
  left: 1.5rem;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #707070;
}
#main_contents_in .layout_opinion blockquote::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: 0.2rem;
  right: 1.5rem;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #707070;
}
#main_contents_in .layout_opinion h1 {
  margin: 3rem 0 1.5rem;
  font-size: 2rem;
  padding: 2rem 0;
  color: #CA1122;
  border-top: solid 0.2rem #CA1122;
  border-bottom: solid 0.2rem #CA1122;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  #main_contents_in .layout_opinion h1 {
    font-size: 2.4rem;
    padding: 2.4rem 0;
  }
}
#main_contents_in .layout_opinion h2 {
  margin: 3rem 0 1.5rem;
  font-size: 1.8rem;
  padding: 1rem 1.5rem;
  color: #000;
  background: #f5f5f5;
  border-left: solid 0.5rem #CA1122;
}
@media screen and (max-width: 767px) {
  #main_contents_in .layout_opinion h2 {
    font-size: 2.2rem;
  }
}
#main_contents_in .layout_opinion h3 {
  margin: 3rem 0 1.5rem;
  font-size: 1.8rem;
  padding: 0 1.5rem;
  color: #000;
  background: none;
  border-left: solid 0.3rem #CA1122;
}
@media screen and (max-width: 767px) {
  #main_contents_in .layout_opinion h3 {
    font-size: 2rem;
  }
}
#main_contents_in .layout_opinion h4 {
  margin: 3rem 0 1.5rem;
  font-size: 1.7rem;
  padding: 0.5rem 2rem;
  background: #ffe8e8;
  position: relative;
}
#main_contents_in .layout_opinion h4::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 3rem;
  border: 0.9rem solid transparent;
  border-top: 0.9rem solid #ffe8e8;
  width: 0;
  height: 0;
}
#main_contents_in .layout_opinion h5 {
  margin: 3rem 0 1.5rem;
  padding: 0 0 0.5rem;
  font-size: 1.7rem;
  border-bottom: 0.1rem dashed #000;
}
#main_contents_in .layout_opinion h5 + h6 {
  margin-top: 0;
}
#main_contents_in .layout_opinion h6 {
  margin: 3rem 0 1.5rem;
  padding: 0 0 0.5rem;
  font-size: 1.4rem;
  display: inline-block;
  border-bottom: 0.1rem solid #000;
}
#main_contents_in .layout_opinion em {
  font-family: "Times New Roman", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "ＭＳ Ｐゴシック", serif;
  font-style: italic;
  font-size: 1.5rem;
  color: #000;
}
#main_contents_in .layout_opinion p em {
  font-size: 1.5rem;
  color: #000;
}
#main_contents_in .layout_opinion table {
  border-collapse: collapse;
  width: 100%;
  margin: 3rem 0;
  border-top: 1px solid #E9E9E9;
  border-left: 1px solid #E9E9E9;
}
@media screen and (max-width: 767px) {
  #main_contents_in .layout_opinion table:not(.horizontal) {
    display: block;
    border-top: none;
    border-left: none;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) tbody {
    display: block;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) tr {
    border-left: 0.1rem solid #E9E9E9;
    display: block;
    width: 100%;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) tr:first-child {
    border-top: 0.1rem solid #E9E9E9;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) th {
    width: 100%;
    display: block;
    text-align: left;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) td {
    width: 100%;
    display: block;
    text-align: left;
  }
  #main_contents_in .layout_opinion table:not(.horizontal) caption {
    display: block;
  }
}
#main_contents_in .layout_opinion table th {
  border-right: 0.1rem solid #E9E9E9;
  border-bottom: 0.1rem solid #E9E9E9;
  background: #f5f5f5;
  color: #000;
  padding: 1.5rem;
  width: 33%;
  font-weight: bold;
  font-size: 1.6rem;
}
#main_contents_in .layout_opinion table td {
  border-right: 0.1rem solid #E9E9E9;
  border-bottom: 0.1rem solid #E9E9E9;
  padding: 1.5rem;
  font-size: 1.6rem;
}
#main_contents_in .layout_opinion table caption {
  color: #707070;
  padding: 0 0 1.2rem;
  text-align: center;
  font-size: 1.5rem;
  /*
  padding: 0 0 1rem;
  text-align: left;
  caption-side: top;
  width: 100%;
  border-bottom: 0.2rem solid variable.$color-main;
  margin: 0 0 12px;
  font-weight: bold;
  font-size: 1.8rem;
  */
}
#main_contents_in .layout_opinion figure {
  text-align: center;
  margin: 3rem 0;
}
#main_contents_in .layout_opinion figure img {
  display: inline-block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 50rem;
}
#main_contents_in .layout_opinion figcaption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
  text-align: center;
}
#main_contents_in .layout_opinion .headline {
  text-align: center;
  margin: 5rem 0 1.5rem;
  font-weight: bold;
}
#main_contents_in .layout_opinion .mini {
  font-size: 1.3rem;
  text-align: center;
}
#main_contents_in .layout_opinion .btn {
  text-align: center;
  margin: 0 0 5rem;
}
#main_contents_in .layout_opinion .btn .mobility__btn--download {
  background: #CA1122;
  padding: 1.4rem 1rem;
  margin: 0 auto;
  color: #fff;
  border-radius: 0;
}
#main_contents_in .layout_opinion .btn .mobility__btn--download:hover {
  background: #fff;
  opacity: 1;
}
#main_contents_in .layout_opinion iframe {
  display: block;
  margin: 0 auto 3rem;
}

/*=======================================================================
タームリスト
=======================================================================*/
.category_list {
  width: 100%;
  padding: 0;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .category_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 2rem);
    margin: 0 0 3rem -1rem;
  }
}
.category_list li {
  text-align: center;
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .category_list li {
    max-width: calc(33.3333333333% - 2rem);
    margin: 0 1rem 2rem;
  }
}
.category_list li a {
  display: block;
  padding: 1rem;
  font-size: 1.5rem;
  font-weight: 500;
  border: 1px solid #22303D;
  color: #22303D;
  background-image: url(../img/maas/phase_arrow_black.png);
  background-repeat: no-repeat;
  background-position: center right 1rem;
  background-size: 1.1rem auto;
}
@media screen and (min-width: 768px) {
  .category_list li a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .category_list li a:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  .box_anchor {
    text-align: center;
  }
}
.box_anchor ul {
  list-style: none;
}
@media screen and (min-width: 768px) {
  .box_anchor ul {
    display: inline-block;
  }
}
.box_anchor ul li {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .box_anchor ul li {
    display: inline-block;
    padding: 0 35px;
  }
}
.box_anchor ul li a {
  display: inline-block;
  padding: 0 25px 0 0;
  font-weight: bold;
  background: url("../img/ico_arrow_05.png") no-repeat right center;
}
@media screen and (min-width: 768px) {
  .box_anchor ul li a {
    display: inline-block;
    padding: 0 26px 0 0;
  }
}

.box_service_01 {
  background: url("../img/service/bg_01.jpg") no-repeat 0 0;
  background-size: cover;
  padding: 25px;
  margin: 0 0 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .box_service_01 {
    background-position: top right;
    padding: 100px 0 0 0;
  }
}
.box_service_01 .title_service_01 {
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_01 .title_service_01 {
    text-align: right;
    padding-right: 125px;
  }
}
.box_service_01 .title_service_02 {
  color: #fff;
  font-size: 32px;
  line-height: 1.2;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_01 .title_service_02 {
    text-align: right;
    padding-right: 125px;
  }
}
.box_service_01 .text_service_01 {
  color: #fff;
  font-size: 16px;
  padding: 20px 0;
}
@media screen and (min-width: 768px) {
  .box_service_01 .text_service_01 {
    padding: 160px 0 0 0;
    color: #000;
  }
}

.box_service_02,
.box_service_04 {
  background: url("../img/maas/image1_sp.jpg") no-repeat top;
  background-size: cover;
  padding: 25px;
  margin: 0 0 50px;
}
.box_service_02 .title_service_01,
.box_service_04 .title_service_01 {
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_02 .title_service_01,
  .box_service_04 .title_service_01 {
    color: #000;
  }
}
.box_service_02 .title_service_02,
.box_service_04 .title_service_02 {
  color: #fff;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.2;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_02 .title_service_02,
  .box_service_04 .title_service_02 {
    color: #000;
  }
}
.box_service_02 .text_service_01,
.box_service_04 .text_service_01 {
  color: #fff;
  font-size: 16px;
  padding: 20px 0;
}
@media screen and (min-width: 768px) {
  .box_service_02 .text_service_01,
  .box_service_04 .text_service_01 {
    color: #000;
  }
}

@media screen and (min-width: 768px) {
  .box_service_02 {
    padding: 80px 0 0 0;
    background-position: top left;
  }
}
@media screen and (min-width: 768px) {
  .box_service_02 .title_service_01 {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    padding-left: 125px;
  }
}
@media screen and (min-width: 768px) {
  .box_service_02 .title_service_02 {
    color: #fff;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.2;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    padding-left: 125px;
  }
}
@media screen and (min-width: 768px) {
  .box_service_02 .text_service_01 {
    font-size: 16px;
    padding: 140px 0 0 0;
  }
}

.box_service_03 {
  background: url("../img/service/bg_03.jpg") no-repeat 0 0;
  background-size: cover;
  padding: 25px;
  margin: 0 0 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .box_service_03 {
    padding: 100px 0 0 0;
    background-position: top right;
  }
}
.box_service_03 .title_service_01 {
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_03 .title_service_01 {
    text-align: right;
    padding-right: 125px;
    color: #fff;
  }
}
.box_service_03 .title_service_02 {
  color: #fff;
  font-size: 32px;
  line-height: 1.2;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .box_service_03 .title_service_02 {
    text-align: right;
    padding-right: 125px;
    color: #fff;
  }
}
.box_service_03 .text_service_01 {
  color: #fff;
  font-size: 16px;
  padding: 20px 0;
}
@media screen and (min-width: 768px) {
  .box_service_03 .text_service_01 {
    padding: 160px 0 0 0;
    color: #000;
  }
}

.box_service_04 {
  position: relative;
  background-size: 1590px;
}
@media screen and (min-width: 768px) {
  .box_service_04 {
    padding: 60px 0 0 0;
    background-position: top center;
    background-size: cover;
    min-height: 447px;
  }
}
@media screen and (min-width: 768px) {
  .box_service_04 .title_service_01 {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    padding-left: 125px;
  }
}
.box_service_04 .title_service_02 {
  font-size: 25px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  color: #fff;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .box_service_04 .title_service_02 {
    font-size: 35px;
    padding-left: 35px;
  }
}
@media screen and (min-width: 768px) {
  .box_service_04 .text_service_01 {
    font-size: 16px;
    padding: 40px 30px 0 15px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #fff;
    max-width: 850px;
  }
}

a.invalid {
  pointer-events: none;
}

.thum_whitepaper {
  position: relative;
  text-align: center;
  display: block;
  background: #fafafa;
  margin: 0 auto 10px;
}
.thum_whitepaper::after {
  padding-top: 56%;
  content: "";
  display: block;
}
.thum_whitepaper img {
  margin: auto;
  width: auto;
  height: auto;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.box {
  clear: both;
  float: none;
}
@media screen and (min-width: 768px) {
  .box.box--sepa {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .box .box_l {
    width: 490px;
    width: calc(60% - 25px);
  }
}
@media screen and (min-width: 768px) {
  .box .box_r {
    width: 490px;
    width: calc(40% - 25px);
  }
}

ul.list_2 {
  margin: 35px 0 0 0;
  padding: 0;
  list-style: none;
}
@media screen and (min-width: 768px) {
  ul.list_2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 2px);
    margin: 0 0 0 -1px;
  }
}
ul.list_2 li {
  margin: 0 0 15px 0;
  padding: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  ul.list_2 li {
    margin: 0 1px 30px;
    padding: 0;
    width: calc(50% - 2px);
  }
}
@media screen and (min-width: 992px) {
  ul.list_2 li {
    width: calc(33.3333333333% - 2px);
  }
}
ul.list_2 li a {
  display: block;
}
@media screen and (min-width: 768px) {
  ul.list_2 li a {
    display: block;
  }
}
ul.list_3 {
  margin: 35px 0 0 0;
  padding: 0;
  list-style: none;
}
@media screen and (min-width: 768px) {
  ul.list_3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 2px);
    margin: 0 0 0 -1px;
  }
}
ul.list_3 li {
  margin: 0 0 15px 0;
  padding: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  ul.list_3 li {
    margin: 0 1px 30px;
    padding: 0;
    width: calc(33.3333333333% - 2px);
  }
}
ul.list_3 li a {
  display: block;
}
@media screen and (min-width: 768px) {
  ul.list_3 li a {
    display: block;
  }
}
ul.list_event {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 768px) {
  ul.list_event {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
ul.list_event li {
  list-style: none;
  margin: 0;
  padding: 40px 0;
  border-bottom: 1px dotted #333;
}
@media screen and (min-width: 768px) {
  ul.list_event li {
    width: calc((100% - 60px) / 3);
    list-style: none;
    margin-right: 30px;
    padding: 10px 0;
    border-bottom: 1px dotted #333;
  }
}
@media screen and (min-width: 768px) {
  ul.list_event li:nth-of-type(3n) {
    margin-right: 0;
  }
}
ul.list_event li a {
  display: block;
}
@media screen and (min-width: 768px) {
  ul.list_event .alignHeight-event a .btn_event_list {
    padding: 20px 0 0;
    margin-top: auto;
  }
}

.thum_list_3_s {
  width: 300px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .thum_list_3_s {
    width: 100%;
  }
}
.thum_list_3_s img {
  width: 300px;
  height: auto;
}
@media screen and (min-width: 768px) {
  .thum_list_3_s img {
    width: 100%;
    height: auto;
  }
}

.box_event_r {
  padding: 20px 0 0 0;
}
#main_contents_in .box_event_r p {
  font-size: 14px;
  margin: 0;
}
.box_tab ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  margin: 15px 0 0 0;
}
@media screen and (min-width: 768px) {
  .box_tab ul {
    padding: 0;
    margin: 0;
  }
}
.box_tab ul li {
  width: 50%;
  margin-right: 3px;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .box_tab ul li {
    max-width: 200px;
    margin-right: 3px;
    list-style: none;
  }
}
.box_tab ul li:nth-child(2) {
  margin-right: 0;
}
.box_tab ul li a {
  color: #fff;
  background: #7f7f7f;
  display: block;
  padding: 15px;
  text-align: center;
  font-size: 14px;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .box_tab ul li a {
    color: #fff;
    background: #7f7f7f;
    display: block;
    padding: 15px;
    text-align: center;
  }
}
.box_tab ul li a:hover {
  background: #ca1122;
}
.box_tab ul li.current a {
  background: #ca1122;
}
.event .box {
  margin-bottom: 35px;
}
.event .box_tab {
  margin-bottom: 35px;
}
.box_info {
  border: 3px solid #f5f5f5;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .box_info {
    padding: 20px 20px 0;
  }
}
@media screen and (min-width: 768px) {
  .box_info dl {
    display: table;
  }
}
.box_info dl dt {
  padding: 0 0 2px 0;
}
@media screen and (min-width: 768px) {
  .box_info dl dt {
    width: 160px;
    padding: 0 0 20px 0;
    display: table-cell;
  }
}
.box_info dl dd {
  padding: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .box_info dl dd {
    padding: 0 0 10px 10px;
    display: table-cell;
  }
}
.box_info dl dd p {
  margin: 0 !important;
}

.thanksTtl {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  color: #ca1122;
  font-weight: bold;
  font-size: 30px;
  margin: 0;
  line-height: 1.2;
  letter-spacing: 5px;
  border-bottom: 1px solid #ccc;
  background: none !important;
  position: relative;
}
.thanksTtl:before {
  content: "";
  display: inline-block;
  height: 1px;
  width: 105px;
  background: #ca1122;
  position: absolute;
  left: 0;
  bottom: -1px;
}

.box_bottom {
  padding: 25px 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box_bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.box_bottom dl {
  width: 100%;
  max-width: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.box_bottom dt {
  background: #607d8b;
  width: 80px;
  font-size: 11px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  line-height: 1;
  padding: 5px 0;
}
@media screen and (min-width: 768px) {
  .box_bottom dt {
    padding: 5px 0;
  }
}
.box_bottom dd {
  font-size: 14px;
  margin: 0 0 0 10px;
}
.sns {
  margin: 15px 0 0 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (min-width: 768px) {
  .sns {
    margin: 0 auto 0 0;
  }
}
.sns h5 {
  background: #607d8b;
  width: 80px;
  font-size: 11px;
  font-weight: bold;
  float: left;
  text-align: center;
  color: #fff;
  line-height: 1;
  padding: 5px 0;
}

.addtoany_shortcode {
  display: inline-block;
  margin: 0;
}

.box_download {
  clear: both;
  margin: 50px auto;
  padding: 25px;
  background: url("../img/column/bg_download.jpg") no-repeat 0 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .box_download {
    height: 500px;
  }
}

.title_download_01 {
  margin: 0 auto 0 auto;
  color: #fff;
  text-align: center;
  border-bottom: 1px solid #fff;
  border-top: 1px solid #fff;
  font-size: 17px;
  padding: 5px 0;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .title_download_01 {
    margin: 50px auto 0 auto;
    width: 422px;
    font-size: 22px;
  }
}

.title_download_02 {
  margin: 20px auto 0 auto;
  color: #fff;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width: 768px) {
  .title_download_02 {
    font-size: 35px;
  }
}

.title_download_03 {
  margin: 25px auto 0 auto;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .title_download_03 {
    width: 800px;
    margin: 25px auto 50px auto;
    text-align: center;
  }
}

.btn_download {
  margin: 25px auto 0 auto;
}
@media screen and (min-width: 768px) {
  .btn_download {
    width: 418px;
    margin: 50px auto;
  }
}

.btn_download a {
  width: 100%;
  display: block;
  text-align: center;
  color: #fff;
  background: url("../img/column/ico_download.png") no-repeat 30px center #ca1122;
  padding: 15px 0;
}
@media screen and (min-width: 768px) {
  .btn_download a {
    width: 418px;
    padding: 15px 0;
  }
}

ul.list_consultant {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 768px) {
  ul.list_consultant {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
ul.list_consultant li {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 50px 0;
  padding: 0 0 0 0;
}
@media screen and (min-width: 768px) {
  ul.list_consultant li {
    width: calc(50% - 10px);
  }
}
ul.list_consultant li a {
  display: block;
}
.thum_list_consultant {
  width: 170px;
  margin: 0 auto;
}
.thum_list_consultant img {
  max-width: 100%;
}

.text_list_consultant {
  padding: 20px 0 0 0;
}
@media screen and (min-width: 768px) {
  li.list_5_secondBox,
  ul.list_consultant li {
    width: calc(50% - 10px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 50px 0 !important;
    padding: 0;
    float: left !important;
  }
}

@media screen and (min-width: 768px) {
  li.list_5_secondBox .thum_list_consultant,
  .thum_list_consultant {
    width: 170px;
    float: left;
  }
}

@media screen and (min-width: 768px) {
  li.list_5_secondBox .text_list_consultant,
  .text_list_consultant {
    padding: 0 0 0 190px;
  }
}

.name_01 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 25px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  word-break: break-all;
}
@media screen and (min-width: 768px) {
  .name_01 {
    text-align: left;
  }
}

.name_02 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 16px;
  font-weight: bold;
  color: #ca1122;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .name_02 {
    text-align: left;
  }
}

.name_03 {
  font-size: 14px;
}

.name_04 {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .name_04 {
    text-align: left;
  }
}

.name_05 {
  font-size: 12px;
  color: #ca1122;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .name_05 {
    text-align: left;
  }
}

ul.list_5 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 20px);
  margin: 0 0 0 -10px;
}
@media screen and (min-width: 992px) {
  ul.list_5 {
    width: calc(100% + 40px);
    margin: 0 0 0 -20px;
  }
}
ul.list_5 li {
  width: calc(50% - 20px);
  margin: 0 10px 45px;
}
@media screen and (min-width: 601px) {
  ul.list_5 li {
    width: calc(33.3333333333% - 20px);
  }
}
@media screen and (min-width: 768px) {
  ul.list_5 li {
    width: calc(25% - 20px);
  }
}
@media screen and (min-width: 992px) {
  ul.list_5 li {
    width: calc(20% - 40px);
    margin: 0 20px 45px;
  }
}
ul.list_5 li a {
  display: block;
}
ul.list_5 li img {
  width: 100%;
  height: auto;
  max-width: 100%;
}

.box_message {
  padding: 20px 0 0 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .box_message {
    background: url("../img/consultant/bg_message.png") no-repeat 0 0;
    padding: 40px 30px;
  }
}

.title_message2 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .title_message2 {
    width: 255px;
    float: left;
  }
}
.title_message2 span {
  padding-bottom: 5px;
  border-bottom: 1px solid #ca1122;
}
.text_message {
  padding: 20px 0 0 0;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .text_message {
    padding: 0 0 0 255px;
  }
}

.title_message {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 16px;
  font-weight: bold;
  color: #ca1122;
}
.title_message span {
  color: #000;
}
.thum_list_3 {
  line-height: 0;
  margin: 0;
  padding: 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .thum_list_3 {
    line-height: 0;
    margin: 0;
    padding: 0;
    position: relative;
    max-height: 200px;
    overflow: hidden;
  }
}
@media screen and (min-width: 601px) {
  .thum_list_3 img {
    width: 100%;
  }
}

.column .thum_list_3:before {
  /*
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 70%;
  background: -moz-linear-gradient(bottom, #000, transparent);
  background: -webkit-linear-gradient(bottom, #000, transparent);
  background: linear-gradient(to top, #000, transparent);
  opacity: 0.7;
  */
}

.works .thum_list_3 img,
#top_02 .thum_list_3 img {
  max-width: inherit;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .works .thum_list_3 img,
  #top_02 .thum_list_3 img {
    display: block;
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .works .thum_list_3,
  #top_02 .thum_list_3 {
    background: #ddd;
  }
}

.btn_bk_01 {
  border: 1px solid #000;
  padding: 15px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: url("../img/ico_arrow_03.png") no-repeat right 20px center;
}
.btn_bk_02 {
  padding: 0;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: url("../img/ico_arrow_03.png") no-repeat 40px center;
}
@media screen and (min-width: 768px) {
  .btn_bk_02 {
    background-position: 65px center;
  }
}

/*===================
ダウンロード
===================*/
.downloadThum {
  margin: 0 0 40px;
}

.downloadEditor {
  margin: 0 0 40px;
}

.downloadPoint {
  margin: 0 0 40px;
}
.downloadPoint p {
  font-weight: bold;
  margin: 0 0 10px !important;
}

/*===================
イベン/セミナー
===================*/
#main_contents_in .eventContactform h3 {
  margin: 2em 0 0;
}
@media screen and (min-width: 768px) {
  #main_contents_in .eventContactform h3 {
    margin: 2em 0;
  }
}
#main_contents_in .eventContactform .box_privacy {
  padding: 15px 15px 10px;
  font-size: 13px;
}
@media screen and (min-width: 768px) {
  #main_contents_in .eventContactform .required,
  #main_contents_in .eventContactform .any {
    padding: 5px 10px 3px;
    margin-left: 5px;
    line-height: 1;
  }
}
#main_contents_in .eventContactform table.table_form {
  display: block;
}
#main_contents_in .eventContactform table.table_form tbody {
  display: block;
}
#main_contents_in .eventContactform table.table_form tr {
  display: block;
}
#main_contents_in .eventContactform table.table_form th {
  display: block;
  width: 100%;
  text-align: left;
  padding: 15px 15px 5px;
}
#main_contents_in .eventContactform table.table_form td {
  display: block;
  width: 100%;
  text-align: left;
  padding: 5px 15px 15px;
}
#main_contents_in .eventContactform input[type=submit] {
  line-height: 1;
}

.seminarCopy {
  font-size: 17px;
  font-weight: bold;
  margin: 0 0 20px;
}

.seminarThum {
  margin: 0 0 50px;
}

.seminarEditor {
  margin: 0 0 50px;
}

.seminarCurriculumHead {
  line-height: 1;
  margin: 0;
}
.seminarCurriculumHead .el_text {
  display: inline-block;
  padding: 7px 10px 6px;
  background-color: #CA1122;
  color: #fff;
  font-weight: bold;
  font-size: 15px;
}

.seminarCurriculum {
  margin: 0 0 60px;
  padding: 20px 20px 10px;
  border: 2px solid #eeeeee;
}
.seminarCurriculum .seminarCurriculumList {
  padding: 0 0 10px;
  margin: 0;
}
.seminarCurriculum .seminarCurriculumList li {
  padding: 0;
  margin: 0 0 10px;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.seminarCurriculum .seminarCurriculumList li .el_num {
  color: #CA1122;
  font-weight: bold;
  margin: 0 3px 0 0;
}
.seminarCurriculum p {
  font-size: 12px !important;
  margin: 0 !important;
}

.seminarTeacher .seminarTeacherList {
  padding: 0 0 20px;
}
.seminarTeacher .seminarTeacherList .seminarTeacherListItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 30px;
}
.seminarTeacher .seminarTeacherList .seminarTeacherListItem .seminarTeacherListItem__left {
  width: 100%;
  max-width: 100px;
  margin: 0 15px 0 0;
}
@media screen and (min-width: 768px) {
  .seminarTeacher .seminarTeacherList .seminarTeacherListItem .seminarTeacherListItem__left {
    max-width: 200px;
    margin: 0 30px 0 0;
  }
}
.seminarTeacher .seminarTeacherList .seminarTeacherListItem .seminarTeacherListItem__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .seminarTeacher .seminarTeacherList .seminarTeacherListItem .seminarTeacherListItem__right {
    max-width: 100%;
  }
}

.seminarTeacherListThum {
  text-align: center;
  line-height: 1;
}
.seminarTeacherListThum img {
  display: inline-block;
}

.seminarTeacherListName {
  font-size: 15px;
  font-weight: bold;
  margin: 0 0 2px;
}

.seminarTeacherListText {
  font-size: 13px;
}

/*SATORI CSS*/
.seminarSatori {
  width: calc(100% + 10px);
  margin: 0 0 0 -5px !important;
}
.seminarSatori .satori__custom_form .satori__notes {
  font-size: 14px;
}
.seminarSatori .satori__custom_form .satori__input_group {
  margin: 0 0 20px;
}
.seminarSatori .satori__custom_form .satori__input_group .satori__error_messages {
  color: #CA1122;
  font-size: 14px;
}
.seminarSatori .satori__custom_form .satori__horiz_group > label,
.seminarSatori .satori__custom_form .satori__input_group > label {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.8;
  color: #000;
  display: block;
  margin-bottom: 0.5rem;
}
.seminarSatori .satori__custom_form .satori__horiz_group > label:first-child,
.seminarSatori .satori__custom_form .satori__input_group > label:first-child {
  font-weight: bold;
}
.seminarSatori .satori__custom_form .satori__horiz_group > label .satori__require,
.seminarSatori .satori__custom_form .satori__input_group > label .satori__require {
  font-size: 10px;
  color: #fff;
  background: #CA1122;
  display: inline-block !important;
  padding: 8px 10px 6px;
  margin: 0 0 0 10px !important;
  line-height: 1;
  border-radius: 0;
  white-space: nowrap;
  vertical-align: middle;
}
.seminarSatori .satori__custom_form .satori__horiz_group > label .satori__not_require,
.seminarSatori .satori__custom_form .satori__input_group > label .satori__not_require {
  font-size: 10px;
  color: #fff;
  background: #969696;
  display: inline-block !important;
  padding: 8px 10px 6px;
  margin: 0 0 0 10px !important;
  line-height: 1;
  border-radius: 0;
  white-space: nowrap;
  vertical-align: middle;
}
.seminarSatori .satori__custom_form a,
.seminarSatori .satori__custom_form a:visited {
  color: #CA1122;
}
.seminarSatori .satori__custom_form a:hover,
.seminarSatori .satori__custom_form a:visited:hover {
  color: #CA1122;
  opacity: 0.7;
}
.seminarSatori .satori__custom_form textarea,
.seminarSatori .satori__custom_form input[type=text],
.seminarSatori .satori__custom_form input[type=tel],
.seminarSatori .satori__custom_form input[type=email],
.seminarSatori .satori__custom_form input[type=url],
.seminarSatori .satori__custom_form input[type=number],
.seminarSatori .satori__custom_form select {
  margin-right: 5px !important;
  padding: 3px !important;
  border: 1px solid #ccc !important;
  background-color: #fff !important;
  vertical-align: middle !important;
  padding: 13px 15px !important;
  font-size: 14px !important;
  width: 100% !important;
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: 0 !important;
  color: #000 !important;
  height: auto !important;
  line-height: 1 !important;
}
.seminarSatori .satori__custom_form ul.list_form input[type=email],
.seminarSatori .satori__custom_form ul.list_form input[type=text] {
  display: block !important;
  margin-top: 5px !important;
}
.seminarSatori .satori__custom_form input[type=checkbox],
.seminarSatori .satori__custom_form input[type=radio] {
  display: inline-block !important;
}
.seminarSatori .satori__custom_form input[type=checkbox] + label,
.seminarSatori .satori__custom_form input[type=radio] + label {
  display: inline-block !important;
}
.seminarSatori .satori__custom_form .satori__btn {
  background: #CA1122;
  color: #fff;
  border-radius: 0;
}
.seminarSatori .satori__custom_form .satori__btn.cancel {
  background: #f5f5f5;
  color: #000;
  border-radius: 0;
}
.seminarSatori .satori__custom_form .satori__privacy_policy_url {
  font-size: 12px !important;
}

#main_contents_in .seminarSatori p {
  margin-bottom: 0;
}

ul.list_form li {
  margin: 0;
}
ul.list_form > li {
  margin: 0 0 40px;
}
ul.list_form .form_checkbox {
  padding: 0;
}
ul.list_form .form_checkbox li {
  list-style: none;
}
ul.list_form .form_checkbox li input {
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  ul.list_form .form_checkbox li input {
    font-size: 14px;
  }
}
ul.list_form .form_checkbox li label {
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  ul.list_form .form_checkbox li label {
    font-size: 14px;
  }
}

/*CONTACT SATORI CSS*/
.contactSatori .contactSatoriWrap {
  max-width: 700px;
  margin: 0 auto;
}
.contactSatori .satori__custom_form .satori__notes {
  font-size: 14px;
}
.contactSatori .satori__custom_form .satori__input_group {
  margin: 0 0 20px;
}
.contactSatori .satori__custom_form .satori__input_group .satori__error_messages {
  color: #CA1122;
  font-size: 14px;
}
.contactSatori .satori__custom_form .satori__horiz_group > label,
.contactSatori .satori__custom_form .satori__input_group > label {
  margin: 0;
  padding: 0;
  font-size: 16px !important;
  line-height: 1.8;
  color: #000;
  display: block;
  margin-bottom: 0.5rem;
}
.contactSatori .satori__custom_form .satori__horiz_group > label:first-child,
.contactSatori .satori__custom_form .satori__input_group > label:first-child {
  font-weight: bold;
}
.contactSatori .satori__custom_form .satori__horiz_group > label .satori__require,
.contactSatori .satori__custom_form .satori__input_group > label .satori__require {
  font-size: 12px;
  width: auto !important;
  color: #fff;
  text-align: center;
  background: #CA1122;
  display: inline-block !important;
  padding: 6px 10px 6px !important;
  margin: 0 0 2px 10px !important;
  line-height: 1;
  border-radius: 0;
  white-space: nowrap;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .contactSatori .satori__custom_form .satori__horiz_group > label .satori__require,
  .contactSatori .satori__custom_form .satori__input_group > label .satori__require {
    padding: 6px 10px 6px !important;
    margin: 0 0 2px 10px !important;
  }
}
.contactSatori .satori__custom_form .satori__horiz_group > label .satori__not_require,
.contactSatori .satori__custom_form .satori__input_group > label .satori__not_require {
  font-size: 12px;
  width: auto !important;
  color: #fff;
  text-align: center;
  background: #969696;
  display: inline-block !important;
  padding: 6px 10px 6px !important;
  margin: 0 0 2px 10px !important;
  line-height: 1;
  border-radius: 0;
  white-space: nowrap;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .contactSatori .satori__custom_form .satori__horiz_group > label .satori__not_require,
  .contactSatori .satori__custom_form .satori__input_group > label .satori__not_require {
    padding: 6px 10px 6px !important;
    margin: 0 0 2px 10px !important;
  }
}
.contactSatori .satori__custom_form a,
.contactSatori .satori__custom_form a:visited {
  color: #CA1122;
}
.contactSatori .satori__custom_form a:hover,
.contactSatori .satori__custom_form a:visited:hover {
  color: #CA1122;
  opacity: 0.7;
}
.contactSatori .satori__custom_form textarea,
.contactSatori .satori__custom_form input[type=text],
.contactSatori .satori__custom_form input[type=tel],
.contactSatori .satori__custom_form input[type=email],
.contactSatori .satori__custom_form input[type=url],
.contactSatori .satori__custom_form input[type=number],
.contactSatori .satori__custom_form select {
  margin-right: 5px !important;
  padding: 3px !important;
  border: 1px solid #ccc !important;
  background-color: #fff !important;
  vertical-align: middle !important;
  padding: 13px 15px !important;
  font-size: 14px !important;
  width: 100% !important;
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: 0 !important;
  color: #000 !important;
  height: auto !important;
  line-height: 1 !important;
}
.contactSatori .satori__custom_form ul.list_form input[type=email],
.contactSatori .satori__custom_form ul.list_form input[type=text] {
  display: block !important;
  margin-top: 5px !important;
}
.contactSatori .satori__custom_form input[type=checkbox],
.contactSatori .satori__custom_form input[type=radio] {
  display: inline-block !important;
}
.contactSatori .satori__custom_form input[type=checkbox] + label,
.contactSatori .satori__custom_form input[type=radio] + label {
  display: inline-block !important;
}
.contactSatori .satori__custom_form .satori__btn {
  background: #CA1122;
  color: #fff;
  border-radius: 0;
}
.contactSatori .satori__custom_form .satori__btn.cancel {
  background: #f5f5f5;
  color: #000;
  border-radius: 0;
}
.contactSatori .satori__custom_form .satori__privacy_policy_url {
  font-size: 12px !important;
}
/*# sourceMappingURL=maas.css.map */