@charset "UTF-8";
/* -----------------------------------------------------------------------------
  header footer
----------------------------------------------------------------------------- */
button, input[type="submit"], input[type="button"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

#main_column {
  min-height: calc(100vh - 110px);
}

footer,
header {
  overflow: hidden;
  padding: 20px;
  z-index: 4;
  width: 100%;
}

footer {
  position: relative;
}

header {
  background: rgba(255, 255, 255, 0.8);
  position: fixed;
}

.logo {
  position: relative;
}

footer .logo.pc-left {
  width: 160px;
  position: absolute;
  left: 0;
  bottom: 0;
  float: none;
}

footer .logo p {
  margin: 0;
}

footer .logo p.txt {
  margin: 0;
  line-height: 1;
  padding-top: 5px;
  display: inline-block;
}

header .inner,
footer .inner {
  position: relative;
  overflow: hidden;
}

.inner {
  overflow: visible;
}

footer .logo img {
  max-width: 100%;
  height: auto;
}

.logo img {
  max-width: 180px;
  height: auto;
}

.nav {
  padding: 10px 0;
}

header .nav li {
  padding: 0px;
  text-align: center;
  margin: 0 15px;
}

footer .nav li {
  padding: 0px;
  margin-right: 20px;
  width: auto;
  text-align: center;
}

/* fixボタンあるとき
@media screen and (max-width: 1200px) {
  footer .inner {
    padding-right: 160px;
  }
}
*/
footer nav {
  width: calc(100% - 210px);
}

footer .nav {
  padding: 85px 10px 0;
}

.nav li.btn {
  padding: 0px;
  width: auto;
  height: 44px;
}

.nav li.btn a {
  padding: 7px 30px;
}

.nav li a {
  padding: 7px 0 0;
  font-size: 15px;
  border-radius: 100px;
  display: block;
  line-height: 2;
  letter-spacing: 0.5px;
}

.nav li.privacymark {
  margin-bottom: 0;
  margin-right: 0;
  align-items: center;
}

.nav li a.privacymark-link {
  padding: 0;
  line-height: normal;
}

footer .nav li a {
  font-size: 13px;
}

.nav li a {
  color: #575959;
}

footer .nav li a,
.mv3 footer .nav li a,
.mv2 footer .nav li a,
.mv1 footer .nav li a {
  color: #fff;
}

header .nav li.btn {
  margin-left: 5%;
  margin-right: 0;
}

.main-logo {
  background: #fff;
  position: relative;
  z-index: 3;
  padding-top: 140px;
}

/*--------------------------
hov_line
--------------------------*/
.nav li a {
  display: inline-block;
  position: relative;
  text-decoration: none;
}

.nav li a span::after {
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
  width: 0;
}

header .nav li.btn a span::after {
  background: transparent;
}

.nav li a span::after {
  background: #575959 none repeat scroll 0 0;
}

footer .nav li a span::after,
.mv1 footer .nav li a span::after,
.mv2 footer .nav li a span::after,
.mv3 footer .nav li a span::after {
  background: #fff none repeat scroll 0 0;
}

footer {
  background: url(../images/bg-grd-blue3.jpg);
  background-position: center bottom;
  margin-top: -70px;
}

footer,
.mv1 footer,
.mv2 footer,
.mv3 footer {
  background: transparent;
}

.nav li a span:hover::after {
  left: 0;
  width: 100%;
}

/* -----------------------------------------------------------------------------
  drawer-nav
----------------------------------------------------------------------------- */
body.drawer--left .drawer-nav {
  left: -320px;
  width: 320px;
  background: rgba(255, 255, 255, 0.8);
}

body.drawer--left.drawer-open .drawer-hamburger {
  left: 320px;
}

nav.drawer-nav ul {
  line-height: 1;
  padding: 80px 20px;
}

nav.drawer-nav ul li {
  margin-bottom: 1.5rem;
  line-height: 1;
}

nav.drawer-nav li a span.txt-small {
  display: inline-block;
  font-size: 15px;
  line-height: 1.5;
  text-transform: none;
  padding: 0;
  width: 100%;
}

nav.drawer-nav li a span.txt-small::before {
  width: 0;
  height: 0;
}

/* -----------------------------------------------------------------------------
  FONT
----------------------------------------------------------------------------- */
*,
body {
  font-family: "Noto Sans JP","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

p {
  color: #4d4d4d;
}

p.txt.large {
  font-size: 18px;
  letter-spacing: 2px;
  line-height: 2.4;
}

.tabs dl,
ul.list,
p.txt {
  line-height: 2.4;
  font-size: 16px;
}

h2 {
  font-weight: 500;
  font-size: 28px;
  letter-spacing: 2px;
  line-height: 120%;
}

h2.gradient {
  font-size: 40px;
  margin-bottom: 0;
}

h3 {
  font-weight: 500;
  font-size: 22px;
  letter-spacing: 2px;
  line-height: 120%;
  margin-bottom: 1rem;
}

.title-en span,
.title-en {
  font-family: Century Gothic, sans-serif;
  font-weight: bold;
  color: #2e58ac;
  margin-bottom: 8px;
  font-size: 20px;
  letter-spacing: 1px;
  line-height: 1.2;
}

/*テキストグラデーション*/
.gradient {
  font-weight: bold;
  color: #451add;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

.case .gradient {
  color: #451add;
  background: linear-gradient(to right, #07bba4 25%, #5100dc 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  .gradient, .case .gradient {
    background: none;
    background-clip: inherit;
  }
  /* IE11 */
}

header .nav li.btn a {
  color: #fff;
}

/*背景グラデーション*/
.bg-gradient {
  background: #1484df;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
}

/* ボタン·グラデーション */
.bg-or {
  background: #e6611e;
  background: linear-gradient(0deg, #e6611e 0%, #f09d15 100%);
}

.bg-or2 {
  background: #f99822;
  background: linear-gradient(90deg, #f99822 0%, #ee6a55 35%);
}

.bg-or:hover {
  background: linear-gradient(0deg, #f09d15 0%, #e6611e 100%);
  background-size: 200% 200%;
  -webkit-animation: or-animation 0s ease infinite;
  animation: or-animation 1s ease infinite;
}

.bg-or2:hover {
  background: linear-gradient(221deg, #ff745e, #ffcd00);
  background-size: 400% 400%;
  -webkit-animation: or-animation 0s ease infinite;
  animation: or-animation 2s ease infinite;
}

.bg::after,
.bg::before {
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
}

.bg {
  position: relative;
}

.bg-in-wh {
  background: rgba(255, 255, 255, 0.9);
  padding: 5px;
  border-radius: 50%;
  position: absolute;
  width: calc( 100% - 10px);
  height: calc( 100% - 10px);
  top: 5px;
  left: 5px;
}

.bg-in-wh:hover {
  background: white;
}

.bg-green {
  background: #00ffdf;
  background: linear-gradient(90deg, #00ffdf 0%, #40968b 35%);
  background-size: 200% 200%;
  display: block;
  overflow: hidden;
  z-index: 4;
}

.bg-green:hover {
  background: #00ffdf;
  background: linear-gradient(0deg, #00ffdf 0%, #40968b 100%);
  background-size: 200% 200%;
  -webkit-animation: or-animation 2s ease infinite;
  animation: or-animation 2s ease infinite;
}

@-webkit-keyframes or-animation {
  0% {
    background-position: 82% 0%;
  }
  50% {
    background-position: 19% 100%;
  }
  100% {
    background-position: 82% 0%;
  }
}

@keyframes or-animation {
  0% {
    background-position: 82% 0%;
  }
  50% {
    background-position: 19% 100%;
  }
  100% {
    background-position: 82% 0%;
  }
}

.btn {
  border-radius: 100px;
  display: inline-block;
}

.btn {
  border-radius: 100px;
  display: inline-block;
  line-height: 2;
  letter-spacing: 1px;
  color: #fff;
}

.btn a {
  color: #fff;
  padding: 7px 30px;
  display: inline-block;
  width: 100%;
}

.large.btn {
  line-height: 1.2;
  width: 440px;
  max-width: 90%;
  margin: 0 auto 70px;
}

.large.btn a {
  font-size: 26px;
  padding: 15px 0px;
}

.large.btn a .small {
  font-size: 18px;
}

.tel-logo::before {
  width: 51px;
  height: 51px;
  background: url(../images/tel-logo.png);
  background-repeat: no-repeat;
}

.tel-logo::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30px;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.btn-fix {
  line-height: 1.2;
  width: 160px;
  height: 160px;
  max-width: 100%;
  border-radius: 50%;
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 100;
}

.btn-fix span {
  padding-top: 97px;
  display: block;
  text-align: center;
  color: #fff;
}

.btn-fix.bg-green span {
  color: #4da197;
}

.btn-fix .tel-logo::before {
  width: 160px;
  height: 160px;
  background: url(../images/tel-logo-large.png);
  background-repeat: no-repeat;
  left: 0;
  background-position: center 20px;
  background-size: 46% auto;
}

.btn-fix.bg-green .tel-logo::before {
  background: url(../images/logo-phone.png);
  background-repeat: no-repeat;
  left: 0;
  background-position: center 20px;
  background-size: 46% auto;
}

.btn-fix a {
  font-size: 18px;
  padding: 0px;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 50%;
}

/* box-shadow */
.shadow {
  box-shadow: 0px 17px 16px -8px rgba(0, 0, 0, 0.35);
}

.shadow-card {
  box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1), 0px 0px 18px 15px rgba(10, 10, 10, 0.02);
}

header {
  box-shadow: 2px 23px 68px 5px rgba(3, 62, 140, 0.1);
}

.card-box.shadow-card {
  box-shadow: 2px 23px 56px 5px rgba(3, 62, 140, 0.16);
}

.section2 {
  background: url(../images/bg-grd-blue.jpg);
  background-position: center 0;
}

.section3 {
  background: url(../images/bg-grd-blue3.jpg);
  background-position: center 0;
}

.section4 {
  background: url(../images/bg-grd-blue3.jpg);
  background-position: center 3200px;
}

.section {
  background: url(../images/bg-grd-blue.jpg);
  background-position: center center;
  max-width: 100%;
}

.bg-single {
  background: url(../images/bg-grd-blue.jpg);
  background-position: center center;
  max-width: 100%;
  background-repeat: no-repeat;
}

.section0 {
  background: url(../images/bg-grd-blue3.jpg);
  background-position: center bottom;
  background-repeat: no-repeat;
  max-width: 100%;
}

.pdg-b70.section0 {
  background: url(../images/bg-grd-blue.jpg);
  background-position: center center;
  padding-top: 30px;
}

.bg-grd {
  background: url(../images/bg-grd-blue.jpg);
  background-position: center center;
  max-width: 100%;
}

/* -----------------------------------------------------------------------------
  page-layout
----------------------------------------------------------------------------- */
.section {
  z-index: 4;
}

.bg-img {
  width: 100%;
}

.text_header {
  margin: 70px auto 60px;
  text-align: center;
  position: relative;
}

/* ----------------------------------
  特徴
  scene-box
-------------------------------------*/
.hd.scene-box:hover,
.scene-box.active {
  background: #1484df;
  background: linear-gradient(to right, #5100dc 5%, #1484df 50%);
}

.hd.scene-box:hover span, .hd.scene-box:hover p, .hd.scene-box:hover h3,
.scene-box.active span,
.scene-box.active p,
.scene-box.active h3 {
  color: #fff;
}

.scene-box .icon {
  display: block;
  position: absolute;
  top: 25px;
  left: 30px;
  padding-top: 30px;
}

.scene-box .icon::before {
  position: absolute;
  top: 0px;
  left: 10px;
  content: "";
  width: 51px;
  height: 51px;
}

.scene-box.scene1 .icon::before {
  background: url(../images/scene1.png);
  background-repeat: no-repeat;
}

.scene-box.scene1.active .icon::before {
  background: url(../images/scene1wh.png);
  background-repeat: no-repeat;
}

.scene-box.scene2 .icon::before {
  background: url(../images/scene2.png);
  background-repeat: no-repeat;
}

.scene-box.scene2.active .icon::before {
  background: url(../images/scene2wh.png);
  background-repeat: no-repeat;
}

.scene-box.scene3 .icon::before {
  background: url(../images/scene3.png);
  background-repeat: no-repeat;
}

.scene-box.scene3.active .icon::before {
  background: url(../images/scene3wh.png);
  background-repeat: no-repeat;
}

.scene-box.scene4 .icon::before {
  background: url(../images/scene4.png);
  background-repeat: no-repeat;
}

.scene-box.scene4.active .icon::before {
  background: url(../images/scene4wh.png);
  background-repeat: no-repeat;
}

.scene-box.scene5 .icon::before {
  background: url(../images/scene5.png);
  background-repeat: no-repeat;
}

.scene-box.scene5.active .icon::before {
  background: url(../images/scene5wh.png);
  background-repeat: no-repeat;
}

.bg-img.section2 {
  background: url(../images/bg-grd-blue2.jpg);
  background-position: center 0;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}

.scene-box p,
.scene-box h3 {
  padding-left: 90px;
  display: block;
}

.scene-box {
  position: relative;
  padding: 32px 30px 30px;
  margin: 0 auto 30px;
  border-radius: 5px;
  background: #fff;
  color: #043ea2;
}

/* ----------------------------------
  slider-two ここ
-------------------------------------*/
#slider-two .scene-box {
  position: relative;
  padding: 15px 30px;
  margin: 0 auto;
  margin-bottom: 5px;
  border-radius: 5px;
  color: #043ea2;
}

#slider-two .ls-nav-prev, #slider-two .ls-nav-next {
  display: none;
}

#slider-two .active .txt {
  letter-spacing: 0px;
}

/* ----------------------------------
  アイコンslider-two
-------------------------------------*/
.i-h2.text_header {
  margin-bottom: 0;
}

.i-h2 {
  background: url(../images/i-h2.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  padding-bottom: 150px;
}

.i-h3 {
  background: url(../images/hh3.png);
  background-position: 30px 0;
  background-repeat: no-repeat;
}

/* ----------------------------------
  活用事例
  card-box
-------------------------------------*/
.sec-contact .card-box {
  background-color: rgba(255, 255, 255, 0.9);
}

.card-box {
  position: relative;
  padding-right: 30px;
  margin: 0 auto 70px;
  border-radius: 5px;
  background-color: #fff;
  color: #043ea2;
}

.card-box p {
  color: #043ea2;
}

.card-box h3 {
  margin-bottom: 30px;
}

.card-box.center h3 {
  margin: 0 auto 30px;
}

.card-box img {
  margin: 70px auto 40px;
}

.sec-modal-video .card-box img {
  margin: 0px auto;
  display: block;
}

.box-inner {
  padding: 64px 0 40px 60px;
}

.v-box-wrapper {
  padding: 0 60px 60px;
  width: 100%;
  justify-content: center;
}

.v-box-wrapper h3 {
  padding: 5vh 20px;
  width: calc(90% - 320px);
}

.video-box {
  position: relative;
  overflow: hidden;
  background: black;
  width: 320px;
  border: 3px solid #1976d2;
  margin: 0 20px;
}

.video-box::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 0px solid #fff;
  z-index: 4;
}

.card-box .video-box img {
  margin: 0px auto;
  width: 320px;
  height: auto;
  /*object-fit: cover;*/
}

.video-box img {
  opacity: 0.6;
}
.video-box .js-modal-btn::before,
.video-box a::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/play.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 25% auto;
  z-index: 4;
  opacity: 0.6;
}
.video-box .js-modal-btn:hover::before,
.video-box a:hover::before {
  opacity: 1;
}

/* -----------------------------------------------------------------------------
  リスト スタイル
----------------------------------------------------------------------------- */
ul.list li {
  position: relative;
  padding: 0 0 0 1rem;
}

ul.list.tp-o li {
  position: relative;
  padding: 0 0 0 1.5rem;
}

ul.list li:before {
  content: '';
  position: absolute;
  border-radius: 50%;
  top: 20px;
  left: 0;
}

ul.list li:before {
  width: 3px;
  height: 3px;
  background: #1976d2;
  border: 1px solid #1976d2;
}

ul.list li.icon {
  padding: 0 0 0 0.5rem;
}

ul.list li.icon::before {
  background: transparent;
  border: 0;
}

ul.list.tp-o li:before {
  top: 12px;
  width: 17px;
  height: 17px;
  background: rgba(25, 118, 210, 0);
  border: 1px solid #1976d2;
}

/* 事例 */
ul.list.case > li {
  padding: 0 0 0 80px;
}

ul.list.case > li span.gradient {
  padding-left: 35px;
}

ul.list.case > li .tel-logo-s {
  left: 85px;
}

ul.list.case > li ul li .tel-logo-s {
  left: 10px;
}

.tel-logo-s {
  position: absolute;
  top: 8px;
  width: 30px;
  height: 30px;
  background: url(../images/logo-phone.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 25px auto;
}

ul.list.case > li:after,
ul.list.case > li:before {
  content: '';
  position: absolute;
  width: 70px;
  height: 30px;
  top: 5px;
  left: 0;
  border-radius: 80px;
}

ul.list.case > li:before {
  transform: none;
  top: 0;
  left: 0;
  padding: 0;
  background: transparent;
  font-weight: bold;
  color: #1976d2;
  font-size: 16px;
  text-align: center;
  z-index: 2;
  border: 0px;
}

ul.list.case > li::after {
  border: 2px solid #1976d2;
}

ul.list.case > li:nth-child(1)::after {
  border: 0px;
  background: #1484df;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
}

ul.list.case > li:nth-child(1):before {
  content: '対 象';
  color: #fff;
}

ul.list.case > li:nth-child(2):before {
  content: '課 題';
}

ul.list.case > li:nth-child(3):before {
  content: '対 策';
}

ul.list.case > li.case3-li:before {
  content: '導入企業実績';
}

.typ2 ul.list.case li:last-child {
  padding-bottom: 0;
}

/* -----------------------------------------------------------------------------
  マージン margin・padding
----------------------------------------------------------------------------- */
.pdg-t70 {
  padding-top: 70px;
}

.pdg-b70 {
  padding-bottom: 70px;
}

.pdg-b30 {
  padding-bottom: 30px;
}

.pdg-b1 {
  padding-bottom: 1px;
}

.pdg-t30 {
  padding-top: 30px;
}

/* -----------------------------------------------------------------------------
  タブ切り替え
----------------------------------------------------------------------------- */
.tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

.tabs label {
  padding: 0 5px 0 0;
}

/*タブのスタイル*/
.tab_item {
  width: calc( 50% - 5px);
  line-height: 40px;
  font-size: 30px;
  text-align: center;
  color: #fff;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  position: relative;
  position: relative;
  letter-spacing: 4px;
}

.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 60px;
  clear: both;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0);
}

/*選択されているタブのコンテンツのみを表示*/
#outline:checked ~ #outline_content,
#history:checked ~ #history_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tab_item:before {
  opacity: 0;
}

.tabs input:checked + .tab_item:before {
  opacity: 1;
}

.tab1.tab_item:before {
  background: url(../images/hh2_l.png);
  background-position: right 0;
  background-repeat: no-repeat;
}

.tab2.tab_item:before {
  background: url(../images/hh2_r.png);
  background-position: -1px 1px;
  background-repeat: no-repeat;
}

.tab1.tab_item:before,
.tab2.tab_item:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 30px;
  top: 0;
  left: 0;
}

.tab_item .tabsbtn span,
.tab_item .tabsbtn {
  background: #1484df;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
  display: inline-block;
}

.tab_item .tabsbtn {
  border-radius: 5px;
  padding: 3px;
}

.tab_item .tabsbtn span {
  border-radius: 3px;
  padding: 0 30px;
  color: #265ede;
  position: relative;
  z-index: 2;
  background: #f5fafd;
}

.tabs input:checked + .tab_item .tabsbtn span {
  background: #1484df;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
  color: #fff;
}

.tab_item .tabsbtn span:hover,
.tabs input:checked + .tab_item .tabsbtn {
  background: #1484df;
  background: linear-gradient(to right, #1484df 25%, #5100dc 75%);
  color: #fff;
  border: 0px;
}

.tabsbtn {
  margin-top: 30px;
}

.tab_content {
  text-align: center;
}

.tab_content div {
  margin: 70px auto 0;
  width: 600px;
  max-width: 100%;
}

.tab_content .cert-block div {
  margin-top: 0;
}

.tab_content dl {
  text-align: left;
  display: flex;
}

.tab_content dt, .tab_content dd {
  text-align: left;
  display: inline-block;
  vertical-align: top;
}

.tab_content dt {
  width: 25%;
}

.tab_content dd {
  width: 75%;
}

/* -----------------------------------------------------------------------------
  メインビジュアルDEMO
----------------------------------------------------------------------------- */
.img-demo {
  position: fixed;
  top: 0px;
  margin: 0 auto;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  width: 100%;
}

#main_column {
  position: relative;
  z-index: 3;
  padding-top: 110px;
}

.ls-fullscreen-wrapper {
  z-index: 1;
  position: relative;
}

.mv-over {
  background: url(../images/section1-top.png);
  background-position: center 0;
  height: 100vh;
  width: 100%;
  display: block;
  overflow: hidden;
  position: relative;
  z-index: 4;
}

.mv3 .main-logo {
  padding-top: 70px;
}

.mv2 .ls-layers {
  overflow: visible;
}

/* contact */
.contact textarea,
.contact input {
  width: 90%;
  appearance: none;
  background: #fff;
  border-radius: 0;
  font-size: 14px;
  letter-spacing: .05em;
  -webkit-transition: border-color .1s linear;
  transition: border-color .1s linear;
  border: 1px solid #ccc;
  padding: 5px;
}
.cf::before, .cf::after {
  content: " ";
  display: table;
}

.contact .colLeft dd {
  margin-left: 12em;
}

.contact dt {
  width: 22em;
  float: left;
  clear: left;
}

.contact .len4{
  float: left;
  clear: left;
  width: 6em;
  margin-bottom: 0.6em;
}
.contact .b_y_lbl{
  float: left;
  margin-top: 0.2em;
  margin-left: 1em;
  width: 2em;
}
.contact .len2 {
  float: left;
  width: 4em;
}
.contact .b_m_lbl{
  float: left;
  margin-top: 0.2em;
  margin-left: 0.3em;
  width: 2em;
}
::placeholder{
  color:#ccc
}


.contact dt, .contact dd {
  padding: 5px 0;
  margin-bottom: 10px;
}

dt .attention, td .attention {
  padding-left: 1rem;
  font-weight: 800;
  color: red;
}

.contact dt {
  vertical-align: top;
  padding: 0 5px;
}

.contact caption,
.contact dd,
.contact dt {
  text-align: left;
}

.contact .confirm dl {
  border: 1px solid #ccc;
}

.confirm dt, .confirm dd {
  min-height: 23px;
  padding: 10px;
  margin-bottom: 0;
  border-bottom: 1px solid #ccc;
}

.confirm dt.bdr-b0 {
  border-bottom: 0;
}

.confirm dd {
  margin-left: 180px;
  padding-left: 1.5em;
}

.confirm dt:last-child,
.confirm dd:last-child {
  border-bottom: none;
}

.confirm dd {
  border-left: 1px solid #ccc;
}

.confirm dt {
  width: 180px;
}

.contact .section_inner .col50 .col100 .btn_bg {
  width: 100%;
}

.contact .section_inner input.btn_bg,
.contact .section_inner .btn_bg {
  height: auto;
  padding: 10px;
  border-radius: 100px;
  margin-top: 20px;
  display: inline-block;
}

input.btn_bg {
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
}

.contact-btn .col50 {
  padding: 0 10px 10px 10px;
}

.contact-btn .col100 {
  width: 900px;
  padding: 0 10px 10px 10px;
}

.section_inner {
  overflow: hidden;
  max-width: 900px;
  width: 100%;
  margin: 0 auto 60px;
  text-align: left;
  font-weight: lighter;
  font-size: 15px;
}

.section_inner input[type="checkbox"]:checked + label::before {
  background-color: #EE6A55 !important;
  box-shadow: 0 0 0 4px #fff inset;
}

.section_inner input[type="checkbox"] + label {
  cursor: pointer;
  line-height: 30px;
}

.section_inner input[type="checkbox"] + label::before {
  background-color: #fff;
  border: 1px solid #EE6A55;
  border-radius: 9px;
  content: "";
  display: inline-block;
  height: 16px;
  margin: 0 10px 0 0;
  transition: all 0.2s ease 0s;
  vertical-align: middle;
  width: 16px;
}

.section_inner input[type="radio"]:checked + label::before {
  background-color: #EE6A55 !important;
  box-shadow: 0 0 0 4px #fff inset;
}

.section_inner input[type="radio"] + label {
  cursor: pointer;
  line-height: 30px;
}

.section_inner input[type="radio"] + label::before {
  background-color: #fff;
  border: 1px solid #EE6A55;
  border-radius: 9px;
  content: "";
  display: inline-block;
  height: 16px;
  margin: -4px 10px 0 0;
  transition: all 0.2s ease 0s;
  vertical-align: middle;
  width: 16px;
}

.section_inner .colRight p label a {
  text-decoration: underline;
}

::selection {
  background: #EE6A55;
  text-shadow: none;
}

.section_inner .btn_bg {
  background-color: #EE6A55;
  border: 0px solid #EE6A55;
  color: #ffffff;
  font-size: 16px;
  height: 32px;
  padding: 0;
  text-align: center;
  width: 300px;
  cursor: pointer;
}

.section_inner .btn_bg.bg-or2 {
  background: linear-gradient(90deg, #f99822 0%, #ee6a55 35%);
  padding: 1em 0 1em 0;
}

.section_inner .colRight p label a:hover {
  color: #333;
  text-decoration: none;
}

.section_inner .colRight p label a:hover {
  color: #333;
  text-decoration: none;
}

.section_inner input[type="checkbox"] {
  display: none;
}

.fr {
  float: right;
}

.fwn {
  font-weight: normal;
}

.mt14 {
  margin-top: 1.4em !important;
}

.tar {
  text-align: right !important;
}

.privacy dt {
  font-weight: bold;
}

.privacy dt.fwn {
  font-weight: normal;
}

#privacy.privacy dt li dt {
  font-weight: 300;
}

.page-single p,
.page-single ul,
.page-single ol,
.page-single li,
.page-single dt,
.page-single dd {
  font-family: "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 171%;
  color: #666;
}

.page-single p {
  margin-bottom: 1em;
}

.page-single ol {
  list-style-type: double-circled-decimal;
  list-style-position: inside;
}

.page-single .bg-wh {
  padding: 70px 60px;
}

.page-single p a,
.page-single li a,
.page-single dd a {
  text-decoration: underline;
}

.page-single p a:hover,
.page-single li a:hover,
.page-single dd a:hover {
  text-decoration: none;
}

/*

.page-single li ol{
  margin-top: 1rem;
}
.page-single ol li ul{
  margin:1rem 0;
}

.page-single ol li ol{
  margin:1rem 0;
}
.page-single .h4{
  font-weight: bold;
}
*/
.page-single ol li ul li {
  margin-top: 0;
}

.page-single ol ul > li {
  text-indent: 0;
  padding-left: 0;
}

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

	privacy

================================================= */
/*	 common
---------------------------------------------- */
@media screen and (max-width: 640px) {
  h1 {
    font-size: 18px;
  }
  h2 {
    font-size: 16px;
  }
}

.page-single {
  /* .privacy li dl dl dd {margin-left:1em;} */
}

.page-single p {
  margin-bottom: 1em;
}

.page-single ol {
  list-style-type: decimal;
  list-style-position: inside;
}

.page-single ol li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-top: 1.5em;
}

.page-single ol li dl dt {
  display: inline;
}

.page-single ol li dl dd dl dt {
  display: block;
}

.page-single ol ol {
  list-style-type: none;
  padding-left: 0;
}

.page-single ol ol li {
  text-indent: -1.4em;
  padding-left: 1.6em;
  margin-top: 0;
}

.page-single li dl {
  margin-bottom: 0.5em;
  display: inline;
}

.page-single li dl dd {
  text-indent: 0;
}

.page-single li dl ol,
.page-single li dl dl {
  margin-bottom: 0.5em;
}

.page-single ol li dl dd dl dd > ol,
.page-single ol li dl dd dl dd > span {
  padding-left: 1.5em;
  display: block;
}

.page-single ol li dl dd dl .minus_indent {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.page-single aside {
  background: #F1F1F1;
  padding: 20px;
  margin-top: 2em;
}

.page-single aside dd {
  margin-left: 0.5em;
}

.notes {
  font-size: 12px;
  line-height: 1.4;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (min-width: 971px) {
  section {
    width: 900px;
    margin: auto;
    padding: 0 30px;
  }
}

@media screen and (max-width: 640px) {
  .page-single li dl dl dd {
    margin-left: 0;
  }
  .page-single aside {
    padding: 10px;
  }
  .page-single ol li dl dd dl .low_indent {
    padding-left: 1.6em;
    text-indent: -1.6em;
  }
}

.sec-news {
  padding: 90px 70px;
  width: 100%;
  overflow: visible;
  position: relative;
  z-index: 36;
}

.sec-news .col_wrapper {
  margin: 0 -15px;
}

.sec-news .col25 {
  height: auto;
}

.sec-news .col25 > div {
  padding: 15px;
}

.sec-news .bg_img_wrapper {
  height: 150px;
}

.sec-news .col_in_text .date {
  font-family: Century Gothic, sans-serif;
}

.sec-news .col_in_text .category,
.sec-news .col_in_text .hov {
  font-family: "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.8;
  font-weight: 300;
}

.sec-news .col_in_text .hov {
  display: inline-block;
}

.sec-news .date {
  width: 86px;
  display: inline-block;
}

.sec-news .category {
  color: #fff;
  font-size: 10px;
  text-align: center;
  border-radius: 2px;
  padding: 4px 0px;
  letter-spacing: 1.5px;
  display: inline-block;
  width: 90px;
}

.sec-news .card-box li a {
  color: #3c3c3c;
}

.sec-news .card-box a {
  color: #5100dc;
}

.sec-news .h3 {
  font-size: 14px;
  line-height: 1;
  display: block;
  padding-left: 20px;
  margin-left: 180px;
  margin-top: -25px;
}

.sec-news .hov-line-fst a span.hov::after {
  background: #fff;
}

.sec-news .sec-inner {
  padding: 40px;
  width: 900px;
  margin: 0 auto;
}

.sec-news li {
  position: relative;
  padding: 15px;
  border-bottom: 1px solid #e4e4e4;
  font-size: 14px;
  line-height: 1rem;
  min-height: 60px;
}

.sec-news li:last-child {
  border-bottom: 0px solid #e4e4e4;
}

.sec-news .shadow {
  -webkit-box-shadow: 0px 31px 61px -58px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0px 31px 61px -58px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 31px 61px -58px rgba(0, 0, 0, 0.15);
}

.sec-news .external-link:before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  background-image: url(../images/scene1.png);
  background-size: contain;
  vertical-align: middle;
}

.news-txt p {
  margin-bottom: 1rem;
  line-height: 1.8;
  font-size: 16px;
}

.news-box-inner {
  padding: 52px;
}

.news-txt img.myimg {
  height: auto;
  width: 80%;
}

.textR {
  position: absolute;
  right: 40px;
  top: 40px;
}

.page .i-h2 {
  padding-bottom: 80px;
}

.page .i-h2 {
  background: url(../images/i-h2.png);
  background-position: center 115px;
  background-repeat: no-repeat;
}

.privacy h2 {
  font-size: 37px;
}

#slider-two .scene-box.scene1 .icon::before,
#slider-two .scene-box.scene2 .icon::before,
#slider-two .scene-box.scene3 .icon::before,
#slider-two .scene-box.scene4 .icon::before,
#slider-two .scene-box.scene5 .icon::before {
  background: none;
}

#slider-two .scene-box.scene1.active .icon::before,
#slider-two .scene-box.scene2.active .icon::before,
#slider-two .scene-box.scene3.active .icon::before,
#slider-two .scene-box.scene4.active .icon::before,
#slider-two .scene-box.scene5.active .icon::before {
  background: url(../images/i-scene.png);
  background-repeat: no-repeat;
}

#slider-two .scene-box {
  left: 10px;
  border-radius: 20px;
  margin-bottom: 10px;
}

#slider-two .scene-box .icon {
  top: 0;
  padding-top: 17px;
  font-size: 16px;
  font-weight: bold;
  font-style: italic;
}

#slider-two .scene-box.active .icon {
  padding-top: 40px;
}

#slider-two .scene-box h3 {
  padding: 0px 0 0 40px;
  margin-bottom: 0;
}

#slider-two .scene-box p {
  padding-left: 40px;
}

#slider-two .scene-box.active h3 {
  padding-top: 20px;
}

#slider-two .scene-box .icon::before {
  top: 0px;
  left: -17px;
  width: 18px;
  height: 58px;
}

#slider-two .scene-box.active:after, #slider-two .scene-box.active:before {
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  right: 100%;
  top: 50%;
}

#slider-two .scene-box.active:after {
  border-color: transparent;
  border-top-width: 10px;
  border-bottom-width: 10px;
  border-left-width: 15px;
  border-right-width: 15px;
  margin-top: -10px;
  border-right-color: #5100DC;
}

#slider-two .scene-box.active:before {
  border-color: transparent;
  border-top-width: 14px;
  border-bottom-width: 14px;
  border-left-width: 21px;
  border-right-width: 21px;
  margin-top: -14px;
  margin-right: 4px;
  border-right-color: transparent;
}

::selection {
  background: #043ea2;
  text-shadow: none;
}

.typ2.card-box img {
  margin: 52px auto 0px;
}

/* イメージエリア */
.typ2 .col-img {
  flex: 0 0 35%;
  max-width: 35%;
  margin: 0 auto;
}

.typ2 .col-txt {
  flex: 0 0 65%;
  max-width: 65%;
}

/* movieエリア */
.typ2 .video-box {
  width: 330px;
  margin: 0;
  height: 170px;
}

.typ2 .video-box img {
  margin: 0px auto;
  width: 100%;
  height: 100%;
}

.typ2 .v-box-wrapper .col-txt {
  width: calc(100% - 280px);
  width: auto;
  flex: auto;
  text-align: center;
}

.video-box-txt {
  text-align: left;
  display: inline-block;
}

.typ2 .v-box-wrapper h3 {
  width: auto;
  text-align: justify;
  margin-bottom: 0;
}

.typ2 .v-box-wrapper .col-txt h3 {
  padding: 0;
}

.typ2 .reverse.v-box-wrapper .col-txt {
  padding: 45px 0 0 0;
}

.typ2 .v-box-wrapper .col-txt {
  padding: 45px 0 0 0px;
}

.typ2 .case4 .v-box-wrapper {
  padding-top: 30px;
}

.typ2 .v-box-wrapper {
  padding: 0px 52px 52px;
  border-top: 0px solid #dce6f2;
  justify-content: space-between;
}

.typ2 .col-img.v-box {
  padding-right: 60px;
}

/* .col-img.illust */
.typ2 .col-img.illust {
  padding: 0 0 0 52px;
}

.typ2 .reverse .col-img.illust {
  padding: 0 52px 0 0;
}

.typ2.case1 .col-img.illust {
  padding: 0 52px 0 0;
}

.typ2.case3 .col-img.illust {
  padding: 0 52px 0 0;
}

.typ2.case4 .col-img.illust {
  padding: 0 0 0 52px;
}

.col-img img {
  margin: 0 auto;
  padding: 0;
}

.typ2.case3 .box-inner {
  padding-bottom: 27px;
}

.typ2 .box-inner {
  padding: 52px 52px 27px;
}

.typ2.case2 .col-txt {
  padding-right: 52px;
}

.typ2.case2 .box-inner {
  padding: 52px 0 27px 52px;
}

.typ2.reverse .box-inner {
  padding-right: 27px;
}

.typ2 ul.list.case {
  text-align: justify;
}

.typ2 .box-inner.pdg60 {
  padding: 60px;
}

/* 画像に動画を差替え*/
.typ2.card-box .col-img .video-box {
  margin: 64px auto 0;
  width: 100%;
  height: auto;
}

.typ2.card-box .video-box img {
  margin: 0 auto;
}

.typ2 ul.list.case > li::after,
.typ2 ul.list.case > li::before {
  width: 57px;
}

.typ2 ul.list.case > li.case3-li::after,
.typ2 ul.list.case > li.case3-li::before {
  width: 120px;
}

.typ2 ul.list.case > li.case3-li {
  padding: 0 0 0 130px;
}

.typ2 ul.list.case > li {
  padding: 2px 0 0 65px;
}

.typ2 ul.list.case > li .tel-logo-s {
  left: 65px;
}

.typ2 ul.list.case > li ul li .tel-logo-s {
  left: 0;
}

.typ2 .tel-logo-s {
  background: url(../images/logo-phone.png);
  background-size: 20px auto;
  background-repeat: no-repeat;
}

.typ2 ul.list.case > li span.gradient {
  text-indent: 1.5em;
  padding: 0;
}

.typ2 ul.list.case > li li span.gradient {
  text-indent: 1em;
}

.typ2 ul.list.case li {
  line-height: 1.8;
  padding-bottom: 0.5rem;
}

.typ2 ul.list.case li::before {
  line-height: 2;
}

.typ2 ul.list.case > li::after,
.typ2 ul.list.case > li::before {
  height: 24px;
}

.typ2 ul.list li ul.list li::before {
  top: 15px;
}

/* 修正 */
.red {
  border: 1px solid #d00000;
}

.card-box {
  padding-right: 0px;
  border-radius: 10px;
}

.pdg-r30 {
  padding-right: 30px;
}

.pdg-l60 {
  padding-right: 30px;
}

.pdg-r60 {
  padding-right: 30px;
}

.pdg-btm20 {
  padding-bottom: 20px;
}

.inner {
  max-width: 980px;
  width: 980px;
}

.inner.page {
  padding: 0 70px;
}

.inner.page h2 {
  margin: 0 0 40px 0;
}

.sec-news a.link-inline {
  display: inline-block;
  position: relative;
  font-size: 14px;
  line-height: 1rem;
  width: auto;
}

.sec-img .card-box {
  overflow: hidden;
  padding: 0;
}

.radius {
  border-radius: 10px;
}

.sec-news.inner.bg-grd {
  width: 100%;
  max-width: 100%;
}

.sec-news.inner.bg-grd .card-box {
  width: 980px;
}

.section3 .inner.pdg-t70.visible {
  padding-top: 0;
}

.btn.large {
  position: relative;
  z-index: 100;
}

.bg-gradient.large.btn {
  background: #1484df;
  background: linear-gradient(90deg, #1484df 0%, #5100dc 35%);
}

.bg-gradient.large.btn:hover {
  border-radius: 100px;
  background: #1484df;
  background: linear-gradient(-90deg, #1484df 0%, #5100dc 100%);
  background-size: 200% 200%;
  -webkit-animation: or-animation 2s ease infinite;
  animation: or-animation 2s ease infinite;
}

.bg-gradient.large.btn {
  width: 400px;
  line-height: 2;
  margin-bottom: 0;
}

.bg-gradient.large.btn a {
  padding: 15px 0 15px 30px;
  border-radius: 100px;
}

.ls-fullscreen-wrapper {
  z-index: 1;
  position: relative;
  background: url(../images/bg-grd-blue.jpg);
  background-position: center center;
  max-width: 100%;
}

.mv-bg .ls-fullscreen-wrapper {
  background: #fff;
}

.mv-bg .ls-container {
  box-shadow: 2px 23px 68px 5px rgba(3, 62, 140, 0.1);
}

.card-box img {
  margin: 45px auto 40px;
}

.feature2 .pdg-r30 {
  padding-right: 60px;
}

.col-img {
  flex: 0 0 40%;
  max-width: 40%;
}

.col-txt {
  flex: 0 0 60%;
  max-width: 60%;
}

.feature1 .col-img,
.feature3 .col-img {
  padding-right: 30px;
}

.feature2 .col-img {
  padding-left: 60px;
}

.feature2 .col-img {
  flex: 0 0 28%;
  max-width: 28%;
}

.feature2 .col-txt {
  flex: 0 0 72%;
  max-width: 72%;
}

.feature2 img {
  width: 180px;
  max-width: 100%;
}

/* モーダルボタン追加*/
button.js-modal-btn {
  position: relative;
  z-index: 4;
  cursor: pointer;
  border: 4px solid #fff;
  height: 100%;
  width: 100%;
}

#feature .card-box img {
  margin: 52px auto;
}

.f-sec1 .col-img,
.f-sec2 .col-img,
.f-sec3 .col-img {
  padding: 0 52px;
}

.f-sec1.card-box {
  padding: 00;
}

.f-sec1 .box-inner {
  padding: 52px 0 0 52px;
}

.f-sec2 .box-inner {
  padding: 52px 0 0 52px;
}

.f-sec2 .col-txt {
  margin-left: -52px;
}

.f-sec3 .box-inner {
  padding: 52px 0 0 52px;
}

.contact-page .flex {
  margin-top: 30px;
  width: 90%;
}

.contact-page .colLeft dd {
  margin-left: 0;
  width: 100%;
}

.contact-page label {
  padding: 0;
}

.contact-page .contact dt {
  padding: 0;
  margin-bottom: 5px;
}

.contact-page .section_inner {
  margin-bottom: 0;
}

.contact-page .contact textarea, .contact-page .contact input {
  padding: 8px;
}

.contact-page select {
  margin: 0 auto 30px;
  width: 60%;
  padding: 10px;
  letter-spacing: 1.5px;
}

.tabs dl, ul.list, p.txt {
  font-size: 15px;
  letter-spacing: 0;
}

/*--------------------------
hov_line
--------------------------*/
.sec-news .card-box li a {
  color: #043ea2;
}

.sec-news a.link-inline,
.hov_line a {
  line-height: 2;
}

.hov_line a {
  display: inline-block;
  position: relative;
  text-decoration: none;
  letter-spacing: 0.5px;
}

.hov_line a span::after {
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
  width: 0;
}

.hov_line a span:hover::after {
  left: 0;
  width: 100%;
}

.hov_line a span::after {
  background: #043ea2;
}

.sec-news .col_in_text a:hover .hov {
  opacity: 0.6;
}

/* 下層　*/
.page-single .bg-wh {
  padding-left: 130px;
  padding-right: 130px;
}

.inner.page,
.sec-news {
  padding-left: 0;
  padding-right: 0;
}

.card-box .news-box-inner {
  color: inherit;
}

.news-txt p {
  font-size: 14px;
  font-family: "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.8;
  font-weight: 300;
}

.new {
  position: absolute;
  top: -8px;
  left: -20px;
  background: url(../images/new-bbl.png);
  background-position: center 0;
  background-repeat: no-repeat;
  width: 66px;
  height: 66px;
}

/* news一覧　*/
.sec-news .news-list ul {
  padding: 60px 52px 0;
}

.sec-news .news-list li:first-child {
  border-top: 1px solid #e4e4e4;
}

/* newsコントロール　*/
.mediaviewer-controls {
  text-align: center;
  margin: 0 52px;
  padding: 20px 0px;
}

.mediaviewer-controls.control-top {
  border-bottom: 1px solid #e4edf6;
}

.mediaviewer-controls.control-bottom {
  border-top: 1px solid #e4edf6;
}

.mediaviewer-controls {
  text-align: center;
}

.sec-news .mediaviewer-controls li {
  border-bottom: 0;
  font-size: 14px;
  min-height: auto;
  display: inline-block;
  padding: 0;
  vertical-align: middle;
}

.sec-news .mediaviewer-controls a {
  padding: 15px;
  cursor: pointer;
  display: inline-block;
}

.sec-news .mediaviewer-controls .center a {
  padding: 0 15px;
}

.icon-arrow-left,
.icon-arrow-right {
  width: 15px;
}

.icon-arrow-left a,
.icon-arrow-right a {
  width: 100%;
}

.icon-arrow-left a::before,
.icon-arrow-left a::after,
.icon-arrow-right a::before,
.icon-arrow-right a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  display: inline-block;
}

.icon-arrow-left a::before {
  width: 10px;
  height: 10px;
  border-top: 1px solid #043ea2;
  border-right: 1px solid #043ea2;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  left: 0;
}

.icon-arrow-right a::before {
  width: 10px;
  height: 10px;
  border-top: 1px solid #043ea2;
  border-right: 1px solid #043ea2;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 0;
}

.mediaviewer-controls .center a {
  opacity: 1;
}

.news-btn a:hover,
.mediaviewer-controls .center a:hover {
  opacity: 0.6;
}

.mediaviewer-controls a {
  opacity: 0.6;
}

.mediaviewer-controls a:hover {
  opacity: 1;
}

/* news 一覧ボタン*/
.news-btn {
  text-align: right;
}

.news-btn a {
  display: inline-block;
}

.sec-news .card-box a {
  color: inherit;
}

.service-block .col2 {
  flex: 0 0 48%;
  max-width: 48%;
}

.service-block .card-box {
  padding: 52px;
}

.section-first {
  background-color: #fff;
  overflow: hidden;
}

/* 最終確認後に削除または変更する　*/
.btn-fix {
  display: none;
}

.typ2 .v-box-wrapper .col-txt,
.typ2 .reverse.v-box-wrapper .col-txt {
  padding: 35px 0px;
}

/*--------------------------
20210312 追加　あとでSASSマージする
--------------------------*/
body header{
  z-index: 100;
 }
/* TOP DEMO MOVIE BLOCK　*/
 .ls-thumbnail-wrapper {
    position: absolute;
    width: 50%;
    margin: 0 auto;
    height: 600px;
    top: 10px;
    left: 48%;
}
.ls-thumbnail-slide{
  float: none;
  height: auto !important;
}
.ls-thumbnail-slide a{
    height: 93px !important;
    width: 550px !important;
    display: block;
}
.ls-thumbnail-slide a{
    position: relative;
}

.ls-thumbnail-slide img{
    height: 125px;
    width: 550px ;
    margin: 0;
    opacity: 1 !important;

}
@media screen and (max-width: 780px) {
  .ls-thumbnail-slide a{
    height: 93px !important;
    width: 250px !important;
    display: block;
}


}


.ls-thumbnail-slide img.ls-thumb-active{
    height: 150px;
    position: absolute;
    left:0;
    top:0;
    width: 550px;
    height: 150px;
}
.ls-thumbnail-slide a span{
    display: block;
    height: 89px;
    width: 550px;
    position: relative;
}
.ls-thumbnail-slide a.ls-thumb-1{
    background:no-repeat url(../images/demo_movie/slider-img1.png);
    display: block;
    z-index: 10;
    height:auto;
}
.ls-thumbnail-slide a.ls-thumb-2 {
    background:no-repeat url(../images/demo_movie/slider-img2.png);
     display: block;
    z-index: 10;
    height:auto;
}
.ls-thumbnail-slide a.ls-thumb-3{
    background:no-repeat url(../images/demo_movie/slider-img3.png);
     display: block;
    z-index: 10;
    height:auto;
}
.ls-thumbnail-slide a.ls-thumb-4{
    background:no-repeat url(../images/demo_movie/slider-img4.png);
     display: block;
    z-index: 10;
    height:auto;
}
.ls-thumbnail-slide a.ls-thumb-5 {
    background:no-repeat url(../images/demo_movie/slider-img5.png);
     display: block;
    z-index: 10;
    height:auto;
}



body #container #main_column #slider-demo-movie .ls-thumbnail-slide a.ls-thumb-1 img.ls-thumb-active{
    background:no-repeat url(../images/demo_movie/slider-img1-2.png)!important;
    background-size:100% auto!important;
    display: block;
    z-index: 10!important;
    height: 150px!important;
    width:550px!important;
}
html body #container #main_column #slider-demo-movie .ls-thumbnail-slide a.ls-thumb-2 img.ls-thumb-active{
    background:no-repeat url(../images/demo_movie/slider-img2-2.png);
    background-size:100% auto!important;
     display: block;
    z-index: 10!important;
    height: 150px!important;
    width:550px!important;
}
html body #container #main_column #slider-demo-movie .ls-thumbnail-slide a.ls-thumb-3 img.ls-thumb-active{
    background:no-repeat url(../images/demo_movie/slider-img3-2.png);
    background-size:100% auto!important;
     display: block;
    z-index: 10!important;
    height: 150px!important;
    width:550px!important;
}
html body #container #main_column #slider-demo-movie .ls-thumbnail-slide a.ls-thumb-4 img.ls-thumb-active{
    background:no-repeat url(../images/demo_movie/slider-img4-2.png);
    background-size:100% auto!important;
     display: block;
   z-index: 10!important;
   height: 150px!important;
    width:550px!important;
}
html body #container #main_column #slider-demo-movie .ls-thumbnail-slide a.ls-thumb-5 img.ls-thumb-active{
    background:no-repeat url(../images/demo_movie/slider-img5-2.png);
    background-size:100% auto!important;
     display: block;
    z-index: 10!important;
    height: 150px!important;
    width:550px!important;
}

.ls-thumbnail-slide a:hover{
  opacity: 0.7;
}
#slider-three .ls-nav-prev,#slider-three .ls-nav-next{
  display:none;
}
.justify-center{
  justify-content: center;
}
.add-pdg{
  padding-bottom: 40px;
}
.shadow-card.add-pdg .card-box{
  margin-bottom: 0;
}

/* リクルートページのインデントで使用 */
dl .dd_indent {
  margin-left: 1.5em;
}
