@charset "UTF-8";

/* ===== reset.css ===== */

/* CSS Document */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

.l-migrated, .l-migrated, .l-migrated div, .l-migrated span, .l-migrated object, .l-migrated iframe, .l-migrated h1, .l-migrated h2, .l-migrated h3, .l-migrated h4, .l-migrated h5, .l-migrated h6, .l-migrated p, .l-migrated blockquote, .l-migrated pre, .l-migrated abbr, .l-migrated address, .l-migrated cite, .l-migrated code, .l-migrated del, .l-migrated dfn, .l-migrated em, .l-migrated img, .l-migrated ins, .l-migrated kbd, .l-migrated q, .l-migrated samp, .l-migrated small, .l-migrated strong, .l-migrated sub, .l-migrated sup, .l-migrated var, .l-migrated b, .l-migrated i, .l-migrated dl, .l-migrated dt, .l-migrated dd, .l-migrated ol, .l-migrated ul, .l-migrated li, .l-migrated fieldset, .l-migrated form, .l-migrated label, .l-migrated legend, .l-migrated table, .l-migrated caption, .l-migrated tbody, .l-migrated tfoot, .l-migrated thead, .l-migrated tr, .l-migrated th, .l-migrated td, .l-migrated article, .l-migrated aside, .l-migrated canvas, .l-migrated details, .l-migrated figcaption, .l-migrated figure, .l-migrated footer, .l-migrated header, .l-migrated hgroup, .l-migrated menu, .l-migrated nav, .l-migrated section, .l-migrated summary, .l-migrated time, .l-migrated mark, .l-migrated audio, .l-migrated video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

.l-migrated {
    line-height:1;
}

.l-migrated article,.l-migrated aside,.l-migrated details,.l-migrated figcaption,.l-migrated figure,.l-migrated footer,.l-migrated header,.l-migrated hgroup,.l-migrated menu,.l-migrated nav,.l-migrated section { 
    display:block;
}

.l-migrated nav ul {
    list-style:none;
}

.l-migrated blockquote, .l-migrated q {
    quotes:none;
}

.l-migrated blockquote:before, .l-migrated blockquote:after, .l-migrated q:before, .l-migrated q:after {
    content:'';
    content:none;
}

.l-migrated a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
.l-migrated ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
.l-migrated mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

.l-migrated del {
    text-decoration: line-through;
}

.l-migrated abbr[title], .l-migrated dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

.l-migrated table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
.l-migrated hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

.l-migrated input, .l-migrated select {
    vertical-align:middle;
}
/* ===== common.css ===== */
.l-migrated .header {
  --primary-color: #3851c0;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 51;
  box-shadow: 0px 10px 40px 0px rgba(0, 0, 0, .1);
  width: 100%
}

.l-migrated .header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 80px;
  padding: 0 30px
}

@media screen and (max-width:768px) {
  .l-migrated .header__inner {
    height: 70px;
    padding: 0 20px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start
  }
}

.l-migrated .header__logo--gugen {
  width: 160px;
  line-height: 1
}

@media screen and (max-width:768px) {
  .l-migrated .header__logo--gugen {
    width: 100px
  }
}

.l-migrated .header__logo--falconnect {
  width: 273px;
  line-height: 1
}

@media screen and (max-width:768px) {
  .l-migrated .header__logo--falconnect {
    width: 150px;
    margin-top: 8px
  }
}

.l-migrated .header__menu {
  width: 70px;
  height: 70px;
  background: url(/assets/migrated/images/product/falconnect/header_menu.svg) no-repeat center/100% #222;
  position: absolute;
  top: 0;
  right: 0
}

@media print,
screen and (min-width:769px) {
  .l-migrated .header__menu {
    display: none !important
  }
}

.l-migrated .header__menu.is-open {
  background-image: url(/assets/migrated/images/product/falconnect/header_close.svg)
}

@media print,
screen and (min-width:769px) {
  .l-migrated .header__nav ul {
    display: flex;
    align-items: center;
    min-width: 720px;
    margin-left: 20px;
    margin-right: 20px
  }

  .l-migrated .header__nav ul li {
    text-align: center
  }

  .l-migrated .header__nav ul li+li {
    margin-left: 60px
  }

  .l-migrated .header__nav ul li a {
    font-size: 1.4rem;
    font-weight: bold;
    color: #222;
    white-space: nowrap;
  }

  .l-migrated .header__nav ul li a:hover {
    text-decoration: underline
  }

  .l-migrated .header__nav ul li small {
    display: block;
    font-size: .85em
  }
}

@media screen and (max-width:768px) {
  .l-migrated .header__nav {
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    padding: 0 20px;
    border-top: solid 1px #e6e6e6;
    display: none
  }

  .l-migrated .header__nav.is-open {
    display: block
  }

  .l-migrated .header__nav ul {
    padding-top: 40px;
    border-top: solid 1px #e6e6e6
  }

  .l-migrated .header__nav ul li a:not(.submenu__product-item) {
    border-bottom: solid 1px #e6e6e6;
    display: flex;
    align-items: center;
    width: 100%;
    height: 60px;
    font-size: 1.6rem;
    font-weight: bold;
    color: inherit;
  }

  .l-migrated .header__nav ul li a:not(.submenu__product-item)::after {
    content: "";
    width: 30px;
    height: 30px;
    border-radius: 15px;
    position: absolute;
    right: 30px;
    background: url(/assets/migrated/images/product/falconnect/arrow.svg) no-repeat center/12px;
    background-color: var(--primary-color)
  }

  .l-migrated .header__nav ul li small {
    margin-left: .4em
  }

  .l-migrated .header__nav ul:nth-child(1) a:not(.submenu__product-item),
  .l-migrated .header__nav ul:nth-child(2) a:not(.submenu__product-item) {
    border-top: 1px solid #e6e6e6
  }

  .l-migrated .header__nav ul .submenu {
    display: flex;
    flex-direction: column;
    row-gap: 9.3333333333vw;
    padding-top: 5.3333333333vw;
    padding-bottom: 8.5333333333vw
  }

  .l-migrated .header__nav ul .submenu__product {
    display: flex;
    flex-direction: column
  }

  .l-migrated .header__nav ul .submenu__product--pushlog {
    --product-color: #00af84
  }
  .l-migrated .header__nav ul .submenu__product--falconnect {
    --product-color: #3851c0;
  }

  .l-migrated .header__nav ul .submenu__product-label {
    display: block;
    margin-bottom: 5.3333333333vw;
    color: var(--product-color);
    font-weight: 700;
    font-size: 4.8vw
  }

  .l-migrated .header__nav ul .submenu__product-item {
    display: flex;
    align-items: center;
    column-gap: 2.1333333333vw;
    color: inherit;
    font-size: 4vw;
  }

  .l-migrated .header__nav ul .submenu__product-item::before {
    content: "";
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    background-image: url("/assets/migrated/images/common/arrow_blue.svg");
    background-size: 100% auto;
    background-position: center
  }

  .l-migrated .header__nav ul .submenu__product-item:not(:last-of-type) {
    margin-bottom: 4vw
  }

  .l-migrated .header__nav ul .toggle-menu .toggle-menu-trigger::after {
    rotate: 90deg;
    transition-property: rotate;
    transition-duration: 400ms
  }

  .l-migrated .header__nav ul .toggle-menu.is-open .toggle-menu-trigger::after {
    rotate: -90deg
  }
}

@media screen and (min-width: 769px)and (max-width: 1080px) {
  .l-migrated .header .header__logo--gugen {
    width: 110px;
    flex-shrink: 0
  }

  .l-migrated .header .header__logo--falconnect {
    width: 180px
  }

  .l-migrated .header .header__nav ul li+li {
    margin-left: 25px
  }
}

.l-migrated .pc {
  display: block
}

.l-migrated .sp {
  display: none
}

.l-migrated .header__inner {
  box-sizing: border-box
}

.l-migrated .nav--mail {
  line-height: 1;
  max-width: 186px;
  width: 273px;
  background: #00b4e6;
  padding: 15px 30px;
  text-align: right;
  height: 44px;
  border-radius: 22px;
  color: #fff;
  position: relative;
  font-weight: bold;
  font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
  .l-migrated .nav--mail.pc {
    display: none
  }
}

@media screen and (max-width: 768px) {
  .l-migrated .nav--mail.sp {
    display: block
  }
}

.l-migrated .nav--mail::before {
  position: absolute;
  content: "";
  width: 22px;
  height: 25px;
  top: 32%;
  left: 12%;
  background-image: url(/assets/migrated/images/common/ico_mail.png);
  background-repeat: no-repeat;
  background-size: contain
}

.l-migrated .nav--mail a {
  width: 100%;
  display: block
}

.l-migrated .nav--mail:hover {
  opacity: .7;
  -webkit-transition: all .2s ease;
  -o-transition: all .2s ease;
  -webkit-transition: all .2s ease;
  -o-transition: all .2s ease;
  transition: all .2s ease
}

.l-migrated .header b {
  font-size: 1.4rem
}

.l-migrated nav ul ul {
  display: block
}

.l-migrated .has-child {
  position: relative;
  padding: 30px 0
}

.l-migrated nav li.has-child ul {
  position: absolute;
  left: 0;
  top: 83px;
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: stretch;
  padding-top: 30px;
  padding-bottom: 30px;
  width: 560px;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  background: -o-linear-gradient(bottom, #e6fdff, #FFF);
  background: -webkit-gradient(linear, left bottom, left top, from(#e6fdff), to(#FFF));
  background: linear-gradient(to top, #e6fdff, #FFF);
  -webkit-box-shadow: 2px 9px 15px 0px rgba(0, 0, 0, .1);
  box-shadow: 2px 9px 15px 0px rgba(0, 0, 0, .1)
}

.l-migrated .has-child-ttl:hover {
  color: #00b4e6;
  cursor: pointer
}

.l-migrated nav li.has-child:hover>ul,
.l-migrated nav li.has-child ul li:hover>ul,
.l-migrated nav li.has-child:active>ul {
  visibility: visible;
  opacity: 1
}

.l-migrated nav li.has-child ul li:active>ul {
  visibility: visible;
  opacity: 1
}

.l-migrated nav li.has-child ul li a {
  color: #000
}

.l-migrated nav li.has-child ul li a:hover,
.l-migrated nav li.has-child ul li a:active {
  opacity: .7;
  -webkit-transition: all .2s ease;
  -o-transition: all .2s ease;
  transition: all .2s ease
}

.l-migrated .has-child>.nav_pc_contents01_subbox>li {
  margin-left: 0;
  padding-left: 20px;
  padding-right: 20px
}

.l-migrated .has-child>.nav_pc_contents01_subbox>li:not(:last-of-type) {
  border-right: 1px solid #c4e1e9
}

.l-migrated .has-child>.nav_pc_contents01_subbox>li.--pushlog {
  --product-color: #00af84
}

.l-migrated .has-child>.nav_pc_contents01_subbox>li.--falconnect {
  --product-color: #3851c0
}

.l-migrated .nav_pc_contents01_sub>.pulldown_inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  column-gap: 20px;
  width: 100%;
  height: 86px;
  margin: 0 auto;
  position: relative;
  text-align: left
}

.l-migrated .pulldown_inner {
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--product-color)
}

.l-migrated .pulldown_contents01 img {
  max-width: fit-content;
  width: 100px
}

.l-migrated .nav_pc_submenu {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  margin-top: 24px
}

.l-migrated .nav_pc_submenu-item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 8px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1
}

.l-migrated .nav_pc_submenu-item::after {
  content: "";
  width: 14px;
  height: 12px;
  background-image: url(/assets/migrated/images/common/arrow_blue.svg);
  background-size: contain;
  background-repeat: no-repeat
}

@media screen and (max-width: 768px) {
  .l-migrated .header__nav .pc {
    display: none
  }
}

@media screen and (max-width: 768px) {
  .l-migrated .header__nav .sp {
    display: block
  }
}

@media print,
screen and (min-width: 769px) {
  .l-migrated .header__nav ul li+li {
    margin-left: 40px
  }

  .l-migrated .header__nav ul li a {
    font-size: 1.6rem;
    font-weight: bold
  }
}

@media print,
screen and (max-width: 768px) {
  .l-migrated .nav--mail {
    line-height: 1;
    max-width: 200px;
    background: #00b4e6;
    padding: 15px 30px;
    text-align: right;
    height: 45px;
    border-radius: 22px;
    color: #fff;
    position: relative;
    margin: 30px auto 0
  }

  .l-migrated .nav--mail::before {
    left: 17%
  }

  .l-migrated .header__nav ul li .products_sp a::after {
    background: none;
    background-color: none
  }

  .l-migrated .products_txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 20px 0 5px
  }

  .l-migrated .header__nav {
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    padding: 0 20px 150px;
    border-top: solid 1px #e6e6e6;
    display: none;
    overflow-y: auto
  }
}


/* FOOTER */

.l-migrated .footer {
  background: #71737f;
  padding: 75px 0 40px;
  color: #fff;
}
.l-migrated .footer  .footer_ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  text-align: left;
  font-size: initial;
}

.l-migrated .footer__inner {
  margin-left: auto;
  margin-right: auto
}

@media print,screen and (min-width: 769px) {
  .l-migrated .footer__inner {
    width:1260px
  }
}

@media screen and (min-width: 769px)and (max-width:1280px) {
  .l-migrated .footer__inner {
    width:1080px
  }
}

@media screen and (max-width: 768px) {
  .l-migrated .footer__inner {
    padding-left:5.3333333333vw;
    padding-right: 5.3333333333vw
  }
}

.l-migrated .footer__inner .footer_inner01 {
  width: 34%;
  border-right: 1px solid #fff;
}
.l-migrated .footer_inner02 {
  width: 60%;
}
.l-migrated .footer__lead {
  font-size: 2.4rem;
  font-weight: bold;
  margin-top: 10px;
  color: #fff;
  letter-spacing: .1em;
  text-align: left;
  margin-bottom: 30px;
}
.l-migrated .footer__logo {
  max-width: 344px;
  margin: 0;
}
.l-migrated .footer__copy {
  font-size: 1.2rem;
  margin-top: 50px;
  color: #fff;
  display: block;
  text-align: center;
  letter-spacing: 1px;
}
.l-migrated .footer_ul01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  line-height: 1.6;
}
.l-migrated .footer_ul01 li a {
  color: #fff;
}

.l-migrated .footer_ul01 li .pc{
  width: 30%;
}
.l-migrated .txt_bold {
  font-weight:bold;
  margin-bottom: 20px;
  font-size: 1.8rem;
  color: inherit;
}
.l-migrated .footer_small {
  margin-bottom: 8px;
  font-size: initial;
}
.l-migrated .footer_small a {
  color: #fff;
}
.l-migrated .footer_small01 {
  margin-bottom: 10px;
}
.l-migrated .footer .footer_inner01 .footer__detai {
  line-height: 2;
}
.l-migrated .footer .footer_inner01 .footer__detai p {
  color: #fff;
}
.l-migrated .footer_privacy {
  display: block;
  text-align: left;
}
@media print, screen and (max-width: 1280px) {
.l-migrated .footer__inner .footer_inner01 {
  width: 36%;
  border-right: 1px solid #fff;
  text-align: left;
}
}
@media print, screen and (max-width: 768px) {
.l-migrated .footer {
  background: #71737f;
  padding: 10vw 0 40px;
  text-align: center;
  color: #fff;
}
.l-migrated .footer .sp ul {
  width: 100%;
  text-align: left;
}
.l-migrated .footer__detai {
  padding-bottom: 30px;
  font-size: 1.2rem;
}
.l-migrated .footer_privacy {
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.1rem;
  margin: 30px 0 0;
}
.l-migrated .footer__inner .footer_inner01 {
  width: 100%;
  border-right: none;
  border-bottom: 1px solid #fff;
  text-align: left;
}
.l-migrated .footer_inner02 {
  width: 100%;
}
.l-migrated .footer__lead {
  font-size: 2rem;
  font-weight: bold;
  margin-top: 10px;
  color: #fff;
  letter-spacing: .1em;
  text-align: left;
  margin-bottom: 30px;
}
.l-migrated .footer__logo {
  max-width: 344px;
  margin: 0;
}
.l-migrated .footer_ul01 li .sp{
  width: 30%;
}
.l-migrated .txt_bold {
  font-weight:bold;
  margin-bottom: 40px;
}
.l-migrated .txt_small {
  margin-bottom: 50px;
}
.l-migrated .txt_bold01 {
  margin-bottom: 10px;
}
.l-migrated .txt_bold02 {
  margin-bottom: 110px;
}
.l-migrated .footer_ul01 {
  font-size: 1.8rem;
}
.l-migrated .footer_small {
  font-size: 1.3rem;
  
}
.l-migrated .footer_small01:first-of-type {
  margin-right: 5%;
  margin-bottom: 0;
}
.l-migrated .footer_small01{
  font-size: 1.1rem;
}
.l-migrated .footer__copy {
  font-size: 1rem;
  margin-top: 10px;
  color: #fff;
  display: block;
  text-align: left;
}
.l-migrated .footer  .footer_ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.l-migrated .footer_ul01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 45px;
}
.l-migrated .footer_ul01 .footer_sp_inner {
  width: 50%;
}
.l-migrated .footer_ul01 li:last-of-type {
  width: 100%;
}
}

.l-migrated .firstview {
  width: 100%;
  overflow: hidden;
}

.l-migrated .sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .l-migrated .pc {
    display:none
  }

  .l-migrated .sp {
    display: block
  }
}
/* ===== style.css ===== */

/* Noto Sans Japanese */

/* Open Sans */
@font-face {
  font-family: "OpenSans";
  font-style: normal;
  font-weight: 600;
  src: local("OpenSans Semibold"), url("../font/OpenSans/OpenSans-SemiBold.woff") format("woff");
}

/* ボックス幅/高さに罫線/padding値を含まない */
.l-migrated * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.l-migrated *:before,
.l-migrated *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* 足場指定 */
.l-migrated {
  font-size: 16px;
  word-break: normal;
}

.l-migrated.portal {
  font-family: -apple-system, BlinkMacSystemFont, Avenir, "Noto Sans Japanese", Arial, Verdana, Meiryo, "Hiragino Kaku Gothic Pro", MS PGothic, sans-serif, 'Noto Sans JP', sans-serif;
  font-size: 1rem;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  /* スマホタップ時のハイライトなし（iOS） */
  -webkit-tap-highlight-color: transparent;
  /* 読み込みフェードイン */
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  background: #fff;
  color: #333;
  line-height: 1.4;
  vertical-align: middle;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.l-migrated a {
  /* リンクスタイルのリセット */
  text-decoration: none;
  max-width: 100%;
  border: none;
  outline: none;
}

.l-migrated a:hover img {
  border: none;
  outline: none;
}

/* リストの余白をリセット */
.l-migrated dl, .l-migrated dt, .l-migrated dd, .l-migrated ul, .l-migrated a {
  margin: 0;
  padding: 0;
}

/* 順序無リストのスタイルをリセット */
.l-migrated ul, .l-migrated li {
  list-style-type: none;
}

/* イメージのスタイルをリセット */
.l-migrated img {
  border: none;
  vertical-align: middle;
}

/* iframeのスタイルをリセット */
.l-migrated iframe {
  margin: 0;
}

/* hrのスタイルをリセット */
.l-migrated hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

/* 見出しのサイズ太さ統一 */
.l-migrated h1, .l-migrated h2, .l-migrated h3, .l-migrated h4, .l-migrated h5, .l-migrated h6 {
  font-size: 100%;
  margin: 0;
  padding: 0;
}

/* 画像サイズ指定（常に100％） */
.l-migrated img {
  max-width: 100%;
}

/* 斜体リセット */
.l-migrated address {
  font-style: normal;
}

/* セレクタごとの幅高さ指定 */
.l-migrated select {
  color: inherit;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 5px;
  border: 1px solid #b3b3b3;
  border-radius: 3px;
  font-family: -apple-system, BlinkMacSystemFont, Avenir, "Noto Sans Japanese", Arial, Verdana, Meiryo, "Hiragino Kaku Gothic Pro", MS PGothic, sans-serif, 'Noto Sans JP', sans-serif;
}

.l-migrated input[type="submit"],
.l-migrated input[type="button"],
.l-migrated button {
  border: none;
}

.l-migrated input[type="text"], .l-migrated input[type="tel"], .l-migrated input[type="email"], .l-migrated input[type="password"], .l-migrated input[type="number"], .l-migrated textarea, .l-migrated select {
  padding: 10px;
  border-radius: 3px;
  border: 1px solid #b3b3b3;
  font-family: -apple-system, BlinkMacSystemFont, Avenir, "Noto Sans Japanese", Arial, Verdana, Meiryo, "Hiragino Kaku Gothic Pro", MS PGothic, sans-serif, 'Noto Sans JP', sans-serif;
}

.l-migrated input[type="radio"] {
  margin: 0 10px;
  border-radius: 3px;
  border: 1px solid #545454;
}

/* チェックボックス・ラジオボタンデザイン

＜使用方法＞
・<label>で<input>を囲む。
・<input>をクラスで消す。
・<span>でデザインを表示

＜例＞
<label>
  <input class="checkbox" type="checkbox" value="全て">
  <span class="checkbox-icon">全て</span>
</label>

 */
.l-migrated label {
  vertical-align: middle;
}

.l-migrated .checkbox,
.l-migrated .radiobutton {
  display: none;
}

.l-migrated .checkbox + .checkbox-icon,
.l-migrated .radiobutton + .radiobutton-icon {
  display: table-cell;
  position: relative;
  vertical-align: middle;
}

.l-migrated .checkbox + .checkbox-icon span,
.l-migrated .radiobutton + .radiobutton-icon span {
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px;
  line-height: 1.3;
}

.l-migrated .checkbox + .checkbox-icon:before, .l-migrated .radiobutton + .radiobutton-icon:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  background-color: #fff;
  box-shadow: 0 1px 1px rgba(4, 0, 0, 0.14) inset;
}

.l-migrated .checkbox + .checkbox-icon:before {
  border-radius: 4px;
}

.l-migrated .radiobutton + .radiobutton-icon:before {
  border-radius: 50%;
}

.l-migrated .checkbox:checked + .checkbox-icon:before {
  content: '\2713';
  font-size: 1.025rem;
  text-align: center;
  color: #fff;
  border: 1px solid #666;
  background: #666;
}

.l-migrated .radiobutton:checked + .radiobutton-icon:before {
  border: 1px solid #666;
  background: #666;
  background: radial-gradient(white 0, white 30%, #666 30%, #666 100%);
}

/* ボタン押下時効果 */
/* hrのスタイルをリセット */
.l-migrated hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.l-migrated .container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.l-migrated .container:before, .l-migrated .container:after {
  content: " ";
  display: table;
}

.l-migrated .container:after {
  clear: both;
}

@media (min-width: 320px) {
  .l-migrated .container {
    width: 100%;
    padding-left: 7.5px;
    padding-right: 7.5px;
  }
}

@media (min-width: 360px) {
  .l-migrated .container {
    width: 100%;
    padding-left: 7.5px;
    padding-right: 7.5px;
  }
}

@media (min-width: 640px) {
  .l-migrated .container {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .l-migrated .container {
    width: 960px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (min-width: 1280px) {
  .l-migrated .container {
    width: 1160px;
  }
}

@media (min-width: 1681px) {
  .l-migrated .container {
    width: 1160px;
  }
}

/* ----------------------------------- //
//      CSS Hacks Mixins for Sass
// ----------------------------------- //

	How to use:

	@include [Mixin_Name]( 'selector', (property: value) )

	Example:

	@include only_ie9( '.my_element', (color: red) )
	@include only_ff28_above( '.my_element', (
		background-color: green,
		display: flex,
		margin: 2em,
	))

	Tips:
	  - Use firefox mixins before IE mixins. Sometimes Firefox wants to precess the IE css but it can't and skips it's own CSS!

// ----------------------------------- //

	List of Mixins:

	only_ff
	only_ff2
	only_ff2_above
	only_ff3_above
	only_ff6_above
	only_ff16_above
	only_ff21_above
	only_ff24_above
	only_ff25_above
	only_ff26_above
	only_ff27_above
	only_ff28_above
	only_ff30_above
	only_webkit
	only_chrome
	only_safari
	only_safari9
	only_ios
	only_safari_no_ios
	only_opera9_safari2
	only_opera
	only_opera11
	only_edge
	only_ie6
	only_ie7
	only_ie7_below
	only_ie8
	only_ie8_below
	only_ie9
	only_ie9_below
	only_ie10_above
	only_ie11
	only_ie11_above
	no_ie6
	only_ie9_saf4_above
	no_ie_safari6

// ----------------------------------- */
/* ----------------------------------- //
//          Firefox CSS Hacks
// ----------------------------------- */
/*--- Only Firefox ---*/
/*--- Only Firefox 1.5 and Firefox 2 ---*/
/*--- Only Firefox ≥ 2 ---*/
/*--- Only Firefox ≥ 3 ---*/
/*--- Only Firefox ≥ 6 ---*/
/*--- Only Firefox ≥ 16 ---*/
/*--- Only Firefox ≥ 21 ---*/
/*--- Only Firefox ≥ 24 ---*/
/*--- Only Firefox ≥ 25 ---*/
/*--- Only Firefox ≥ 26 ---*/
/*--- Only Firefox ≥ 27 ---*/
/*--- Only Firefox ≥ 28 ---*/
/*--- Only Firefox ≥ 30 ---*/
/* ----------------------------------- //
//          Webkit CSS Hacks
// ----------------------------------- */
/*--- Only Webkit (Chrome, Safari, Opera ≥ 14) ---*/
/*--- Only Chrome 28+, Opera ≥ 14 ---*/
/*--- Only Safari ≥ 6.1 ---*/
/*--- Only Safari ≥ 9 ---*/
/*--- Only iOS Safari ≥ 9 ---*/
/*--- Only Safari ≥ 9 (Non iOS) ---*/
/*--- Only Opera ≤ 9.27, Safari ≤ 2 ---*/
/* ----------------------------------- //
//           Opera CSS Hacks
// ----------------------------------- */
/*--- Only Opera ≥ 9.5 ---*/
/*--- Only Opera ≤ 11 ---*/
/* ----------------------------------- //
//     Edge CSS Hacks
// ----------------------------------- */
/* ----------------------------------- //
//     Internet Explorer CSS Hacks
// ----------------------------------- */
/*--- Only IE ≤ 6 ---*/
/*--- Only IE7 ---*/
/*--- Only IE ≤ 7 ---*/
/*--- Only IE8 ---*/
/*--- Only IE ≤ 8 ---*/
/*--- Only IE9 ---*/
/*--- Only IE ≤ 9 ---*/
/*--- Only IE10 ---*/
/*--- Only IE ≤ 11 ---*/
/*--- Only IE ≥ 11 ---*/
/*--- Anything but IE6 ---*/
/*--- Only IE ≥ 9, safari4, android ≥ 2.3 ---*/
/* ----------------------------------- //
//           Other CSS Hacks
// ----------------------------------- */
/*--- Everything but IE and Safari ≤ 6 ---*/
.l-migrated .mt0 {
  margin-top: 0px;
}

.l-migrated .mr0 {
  margin-right: 0px;
}

.l-migrated .mb0 {
  margin-bottom: 0px;
}

.l-migrated .ml0 {
  margin-left: 0px;
}

.l-migrated .mt8 {
  margin-top: 8px;
}

.l-migrated .mr8 {
  margin-right: 8px;
}

.l-migrated .mb8 {
  margin-bottom: 8px;
}

.l-migrated .ml8 {
  margin-left: 8px;
}

.l-migrated .mt16 {
  margin-top: 16px;
}

.l-migrated .mr16 {
  margin-right: 16px;
}

.l-migrated .mb16 {
  margin-bottom: 16px;
}

.l-migrated .ml16 {
  margin-left: 16px;
}

.l-migrated .mt24 {
  margin-top: 24px;
}

.l-migrated .mr24 {
  margin-right: 24px;
}

.l-migrated .mb24 {
  margin-bottom: 24px;
}

.l-migrated .ml24 {
  margin-left: 24px;
}

.l-migrated .mt32 {
  margin-top: 32px;
}

.l-migrated .mr32 {
  margin-right: 32px;
}

.l-migrated .mb32 {
  margin-bottom: 32px;
}

.l-migrated .ml32 {
  margin-left: 32px;
}

.l-migrated .mt40 {
  margin-top: 40px;
}

.l-migrated .mr40 {
  margin-right: 40px;
}

.l-migrated .mb40 {
  margin-bottom: 40px;
}

.l-migrated .ml40 {
  margin-left: 40px;
}

.l-migrated .mt48 {
  margin-top: 48px;
}

.l-migrated .mr48 {
  margin-right: 48px;
}

.l-migrated .mb48 {
  margin-bottom: 48px;
}

.l-migrated .ml48 {
  margin-left: 48px;
}

.l-migrated .mt56 {
  margin-top: 56px;
}

.l-migrated .mr56 {
  margin-right: 56px;
}

.l-migrated .mb56 {
  margin-bottom: 56px;
}

.l-migrated .ml56 {
  margin-left: 56px;
}

.l-migrated .mt64 {
  margin-top: 64px;
}

.l-migrated .mr64 {
  margin-right: 64px;
}

.l-migrated .mb64 {
  margin-bottom: 64px;
}

.l-migrated .ml64 {
  margin-left: 64px;
}

.l-migrated .mt72 {
  margin-top: 72px;
}

.l-migrated .mr72 {
  margin-right: 72px;
}

.l-migrated .mb72 {
  margin-bottom: 72px;
}

.l-migrated .ml72 {
  margin-left: 72px;
}

.l-migrated .mt80 {
  margin-top: 80px;
}

.l-migrated .mr80 {
  margin-right: 80px;
}

.l-migrated .mb80 {
  margin-bottom: 80px;
}

.l-migrated .ml80 {
  margin-left: 80px;
}

@media all and (-ms-high-contrast: none) {
  .l-migrated .ie_mt0 {
    margin-top: 0px;
  }
  .l-migrated .ie_mr0 {
    margin-right: 0px;
  }
  .l-migrated .ie_mb0 {
    margin-bottom: 0px;
  }
  .l-migrated .ie_ml0 {
    margin-left: 0px;
  }
  .l-migrated .ie_mt8 {
    margin-top: 8px;
  }
  .l-migrated .ie_mr8 {
    margin-right: 8px;
  }
  .l-migrated .ie_mb8 {
    margin-bottom: 8px;
  }
  .l-migrated .ie_ml8 {
    margin-left: 8px;
  }
  .l-migrated .ie_mt16 {
    margin-top: 16px;
  }
  .l-migrated .ie_mr16 {
    margin-right: 16px;
  }
  .l-migrated .ie_mb16 {
    margin-bottom: 16px;
  }
  .l-migrated .ie_ml16 {
    margin-left: 16px;
  }
  .l-migrated .ie_mt24 {
    margin-top: 24px;
  }
  .l-migrated .ie_mr24 {
    margin-right: 24px;
  }
  .l-migrated .ie_mb24 {
    margin-bottom: 24px;
  }
  .l-migrated .ie_ml24 {
    margin-left: 24px;
  }
  .l-migrated .ie_mt32 {
    margin-top: 32px;
  }
  .l-migrated .ie_mr32 {
    margin-right: 32px;
  }
  .l-migrated .ie_mb32 {
    margin-bottom: 32px;
  }
  .l-migrated .ie_ml32 {
    margin-left: 32px;
  }
  .l-migrated .ie_mt40 {
    margin-top: 40px;
  }
  .l-migrated .ie_mr40 {
    margin-right: 40px;
  }
  .l-migrated .ie_mb40 {
    margin-bottom: 40px;
  }
  .l-migrated .ie_ml40 {
    margin-left: 40px;
  }
  .l-migrated .ie_mt48 {
    margin-top: 48px;
  }
  .l-migrated .ie_mr48 {
    margin-right: 48px;
  }
  .l-migrated .ie_mb48 {
    margin-bottom: 48px;
  }
  .l-migrated .ie_ml48 {
    margin-left: 48px;
  }
  .l-migrated .ie_mt56 {
    margin-top: 56px;
  }
  .l-migrated .ie_mr56 {
    margin-right: 56px;
  }
  .l-migrated .ie_mb56 {
    margin-bottom: 56px;
  }
  .l-migrated .ie_ml56 {
    margin-left: 56px;
  }
  .l-migrated .ie_mt64 {
    margin-top: 64px;
  }
  .l-migrated .ie_mr64 {
    margin-right: 64px;
  }
  .l-migrated .ie_mb64 {
    margin-bottom: 64px;
  }
  .l-migrated .ie_ml64 {
    margin-left: 64px;
  }
  .l-migrated .ie_mt72 {
    margin-top: 72px;
  }
  .l-migrated .ie_mr72 {
    margin-right: 72px;
  }
  .l-migrated .ie_mb72 {
    margin-bottom: 72px;
  }
  .l-migrated .ie_ml72 {
    margin-left: 72px;
  }
  .l-migrated .ie_mt80 {
    margin-top: 80px;
  }
  .l-migrated .ie_mr80 {
    margin-right: 80px;
  }
  .l-migrated .ie_mb80 {
    margin-bottom: 80px;
  }
  .l-migrated .ie_ml80 {
    margin-left: 80px;
  }
}

.l-migrated .mt0 {
  margin-top: 0px;
}

.l-migrated .mr0 {
  margin-right: 0px;
}

.l-migrated .mb0 {
  margin-bottom: 0px;
}

.l-migrated .ml0 {
  margin-left: 0px;
}

.l-migrated .mt5 {
  margin-top: 5px;
}

.l-migrated .mr5 {
  margin-right: 5px;
}

.l-migrated .mb5 {
  margin-bottom: 5px;
}

.l-migrated .ml5 {
  margin-left: 5px;
}

.l-migrated .mt10 {
  margin-top: 10px;
}

.l-migrated .mr10 {
  margin-right: 10px;
}

.l-migrated .mb10 {
  margin-bottom: 10px;
}

.l-migrated .ml10 {
  margin-left: 10px;
}

.l-migrated .mt15 {
  margin-top: 15px;
}

.l-migrated .mr15 {
  margin-right: 15px;
}

.l-migrated .mb15 {
  margin-bottom: 15px;
}

.l-migrated .ml15 {
  margin-left: 15px;
}

.l-migrated .mt20 {
  margin-top: 20px;
}

.l-migrated .mr20 {
  margin-right: 20px;
}

.l-migrated .mb20 {
  margin-bottom: 20px;
}

.l-migrated .ml20 {
  margin-left: 20px;
}

.l-migrated .mt25 {
  margin-top: 25px;
}

.l-migrated .mr25 {
  margin-right: 25px;
}

.l-migrated .mb25 {
  margin-bottom: 25px;
}

.l-migrated .ml25 {
  margin-left: 25px;
}

.l-migrated .mt30 {
  margin-top: 30px;
}

.l-migrated .mr30 {
  margin-right: 30px;
}

.l-migrated .mb30 {
  margin-bottom: 30px;
}

.l-migrated .ml30 {
  margin-left: 30px;
}

.l-migrated .mt35 {
  margin-top: 35px;
}

.l-migrated .mr35 {
  margin-right: 35px;
}

.l-migrated .mb35 {
  margin-bottom: 35px;
}

.l-migrated .ml35 {
  margin-left: 35px;
}

.l-migrated .mt40 {
  margin-top: 40px;
}

.l-migrated .mr40 {
  margin-right: 40px;
}

.l-migrated .mb40 {
  margin-bottom: 40px;
}

.l-migrated .ml40 {
  margin-left: 40px;
}

.l-migrated .mt45 {
  margin-top: 45px;
}

.l-migrated .mr45 {
  margin-right: 45px;
}

.l-migrated .mb45 {
  margin-bottom: 45px;
}

.l-migrated .ml45 {
  margin-left: 45px;
}

.l-migrated .mt50 {
  margin-top: 50px;
}

.l-migrated .mr50 {
  margin-right: 50px;
}

.l-migrated .mb50 {
  margin-bottom: 50px;
}

.l-migrated .ml50 {
  margin-left: 50px;
}

@media all and (-ms-high-contrast: none) {
  .l-migrated .ie_mt0 {
    margin-top: 0px;
  }
  .l-migrated .ie_mr0 {
    margin-right: 0px;
  }
  .l-migrated .ie_mb0 {
    margin-bottom: 0px;
  }
  .l-migrated .ie_ml0 {
    margin-left: 0px;
  }
  .l-migrated .ie_mt5 {
    margin-top: 5px;
  }
  .l-migrated .ie_mr5 {
    margin-right: 5px;
  }
  .l-migrated .ie_mb5 {
    margin-bottom: 5px;
  }
  .l-migrated .ie_ml5 {
    margin-left: 5px;
  }
  .l-migrated .ie_mt10 {
    margin-top: 10px;
  }
  .l-migrated .ie_mr10 {
    margin-right: 10px;
  }
  .l-migrated .ie_mb10 {
    margin-bottom: 10px;
  }
  .l-migrated .ie_ml10 {
    margin-left: 10px;
  }
  .l-migrated .ie_mt15 {
    margin-top: 15px;
  }
  .l-migrated .ie_mr15 {
    margin-right: 15px;
  }
  .l-migrated .ie_mb15 {
    margin-bottom: 15px;
  }
  .l-migrated .ie_ml15 {
    margin-left: 15px;
  }
  .l-migrated .ie_mt20 {
    margin-top: 20px;
  }
  .l-migrated .ie_mr20 {
    margin-right: 20px;
  }
  .l-migrated .ie_mb20 {
    margin-bottom: 20px;
  }
  .l-migrated .ie_ml20 {
    margin-left: 20px;
  }
  .l-migrated .ie_mt25 {
    margin-top: 25px;
  }
  .l-migrated .ie_mr25 {
    margin-right: 25px;
  }
  .l-migrated .ie_mb25 {
    margin-bottom: 25px;
  }
  .l-migrated .ie_ml25 {
    margin-left: 25px;
  }
  .l-migrated .ie_mt30 {
    margin-top: 30px;
  }
  .l-migrated .ie_mr30 {
    margin-right: 30px;
  }
  .l-migrated .ie_mb30 {
    margin-bottom: 30px;
  }
  .l-migrated .ie_ml30 {
    margin-left: 30px;
  }
  .l-migrated .ie_mt35 {
    margin-top: 35px;
  }
  .l-migrated .ie_mr35 {
    margin-right: 35px;
  }
  .l-migrated .ie_mb35 {
    margin-bottom: 35px;
  }
  .l-migrated .ie_ml35 {
    margin-left: 35px;
  }
  .l-migrated .ie_mt40 {
    margin-top: 40px;
  }
  .l-migrated .ie_mr40 {
    margin-right: 40px;
  }
  .l-migrated .ie_mb40 {
    margin-bottom: 40px;
  }
  .l-migrated .ie_ml40 {
    margin-left: 40px;
  }
  .l-migrated .ie_mt45 {
    margin-top: 45px;
  }
  .l-migrated .ie_mr45 {
    margin-right: 45px;
  }
  .l-migrated .ie_mb45 {
    margin-bottom: 45px;
  }
  .l-migrated .ie_ml45 {
    margin-left: 45px;
  }
  .l-migrated .ie_mt50 {
    margin-top: 50px;
  }
  .l-migrated .ie_mr50 {
    margin-right: 50px;
  }
  .l-migrated .ie_mb50 {
    margin-bottom: 50px;
  }
  .l-migrated .ie_ml50 {
    margin-left: 50px;
  }
}

.l-migrated .mcenter {
  margin-left: auto;
  margin-right: auto;
}

.l-migrated .w10 {
  width: 10%;
}

.l-migrated .w20 {
  width: 20%;
}

.l-migrated .w30 {
  width: 30%;
}

.l-migrated .w40 {
  width: 40%;
}

.l-migrated .w50 {
  width: 50%;
}

.l-migrated .w60 {
  width: 60%;
}

.l-migrated .w70 {
  width: 70%;
}

.l-migrated .w80 {
  width: 80%;
}

.l-migrated .w90 {
  width: 90%;
}

.l-migrated .w100 {
  width: 100%;
}

.l-migrated .wauto {
  width: auto;
  max-width: 300px;
}

/*
//////////////////////////////////////////////////////////////////

// Common Class
// 汎用クラス

01:レイアウト

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

.l-migrated {
  font-size: 62.5%;
}

.l-migrated input[type="text"],
.l-migrated input[type="tel"],
.l-migrated input[type="email"],
.l-migrated input[type="radio"],
.l-migrated input[type="password"],
.l-migrated input[type="submit"],
.l-migrated input[type="number"],
.l-migrated button,
.l-migrated textarea,
.l-migrated select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

.l-migrated {
  -webkit-text-size-adjust: 100%;
}

.l-migrated img {
  width: 100%;
  -ms-interpolation-mode: bicubic;
}

.l-migrated ul {
  font-size: 0;
}

.l-migrated a {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.l-migrated p {
  color: #333;
}

.l-migrated .sm-show2 {
  display: inline-block;
}

@media (min-width: 960px) {
  .l-migrated .sm-show2 {
    display: none;
  }
}

.l-migrated .sm-hide {
  display: none;
}

@media (min-width: 960px) {
  .l-migrated .sm-hide {
    display: block;
  }
}

.l-migrated .sm-hide2 {
  display: none;
}

@media (min-width: 960px) {
  .l-migrated .sm-hide2 {
    display: inline-block;
  }
}

/*スクロールバー全体*/
.l-migrated ::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

/*スクロールバーの軌道*/
.l-migrated ::-webkit-scrollbar-track {
  background-color: #fff;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}

/*スクロールバーの動く部分*/
.l-migrated ::-webkit-scrollbar-thumb {
  background-color: #999;
  border-radius: 10px;
}

.l-migrated .object-fit-img {
  font-family: "object-fit: cover;";
}

/* width: 100%;で残りスペースを埋める */
.l-migrated .spacer {
  width: 100%;
}

.l-migrated input[type="submit"] {
  width: 100%;
  display: block;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  margin: 1% auto;
  padding: 10px 0;
  background-color: #ef9a01;
  border: 0;
  border-radius: 48px;
  box-shadow: 0 5px 0 0 #c07b00;
  transition: all 0.2s;
  cursor: pointer;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}

@media (min-width: 640px) {
  .l-migrated input[type="submit"] {
    width: 48%;
    padding: 10px 24px;
    font-size: 1rem;
  }
  .l-migrated input[type="submit"]:hover {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
    box-shadow: 0 0 0 0;
  }
}

.l-migrated input[type="radio"] {
  width: 15px;
  height: 15px;
  margin-top: -2px;
  border-radius: 15px;
  outline: none;
  background-color: #fff;
}

.l-migrated input[type="radio"]:checked {
  background-color: #4a4a4a;
}

.l-migrated select {
  width: 100%;
  color: #4a4a4a;
  font-size: 1rem;
  margin: 10px auto 20px;
}

/*--btn--*/
.l-migrated .morebtn {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.7;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .morebtn {
    width: 220px;
  }
  .l-migrated .morebtn:hover {
    background: -webkit-gradient(linear, left top, right bottom, from(#64ddff), to(#1be7b4));
    background: -moz-linear-gradient(to left, #1be7b4, #64ddff);
    background: linear-gradient(to left, #1be7b4, #64ddff);
  }
}

.l-migrated .morebtn2 {
  position: relative;
  display: block;
  width: 100%;
  margin: 20px 0 0;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.7;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .morebtn2 {
    width: 220px;
  }
  .l-migrated .morebtn2:hover {
    background: -webkit-gradient(linear, left top, right bottom, from(#64ddff), to(#1be7b4));
    background: -moz-linear-gradient(to left, #1be7b4, #64ddff);
    background: linear-gradient(to left, #1be7b4, #64ddff);
  }
}

.l-migrated .morebtn3 {
  position: relative;
  display: block;
  width: 100%;
  margin: 20px 0 0;
  padding: 10px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.7;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .morebtn3 {
    width: 220px;
  }
  .l-migrated .morebtn3:hover {
    background: -webkit-gradient(linear, left top, right bottom, from(#64ddff), to(#1be7b4));
    background: -moz-linear-gradient(to left, #1be7b4, #64ddff);
    background: linear-gradient(to left, #1be7b4, #64ddff);
  }
}

.l-migrated .morebtn-line {
  display: inline-block;
  width: 100%;
  margin: 0 auto;
  padding: 20px 40px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  border: 1px solid #fff;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .morebtn-line:hover {
    color: #00b4e6;
    background-color: #fff;
  }
}

@media (min-width: 960px) {
  .l-migrated .morebtn-line {
    width: auto;
  }
}

.l-migrated .morebtn-line2 {
  display: inline-block;
  width: 100%;
  margin: 10px 20px 10px auto;
  padding: 20px;
  color: #333;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.7;
  letter-spacing: 0.05em;
  border: 1px solid #999;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .morebtn-line2 {
    margin: 20px 20px 20px auto;
    padding: 20px 40px;
  }
  .l-migrated .morebtn-line2:hover {
    color: #fff;
    background-color: #333;
    border: 1px solid #333;
  }
}

@media (min-width: 960px) {
  .l-migrated .morebtn-line2 {
    width: auto;
  }
}

.l-migrated .enkakubtn {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.7;
  border-radius: 5px;
  background: #0cb80c;
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .enkakubtn {
    width: 220px;
  }
  .l-migrated .enkakubtn:hover {
    background: #47e247;
  }
}

.l-migrated .morearrow {
  display: inline-block;
  position: absolute;
  top: 17%;
  right: 16px;
  font-size: 2.4rem;
}

.l-migrated .morearrow2 {
  display: inline-block;
  position: absolute;
  top: -8px;
  right: 16px;
  font-size: 2.4rem;
}

.l-migrated .morearrow3 {
  display: inline-block;
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 2.4rem;
}

@media (min-width: 640px) {
  .l-migrated .morearrow3 {
    top: 16px;
  }
}

.l-migrated .morearrow4 {
  display: inline-block;
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 2.4rem;
}

.l-migrated .inlinelink {
  display: inline;
  color: #00b4e6;
  font-size: 1.6rem;
  text-decoration: underline;
}

/***********************/
.l-migrated .enstrong {
  color: #00b4e6;
  font-size: 3.0rem;
  font-family: 'Open Sans';
  letter-spacing: -0.05em;
}

@media (min-width: 960px) {
  .l-migrated .enstrong {
    font-size: 4.0rem;
  }
}

.l-migrated .strongblue {
  color: #00b4e6;
  font-size: 3.0rem;
  margin-left: 4px;
}

@media (min-width: 960px) {
  .l-migrated .strongblue {
    font-size: 3.5rem;
    margin-left: 8px;
  }
}

.l-migrated .firstview-page {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 63px;
  height: 240px;
}

@media screen and (min-width: 1100px) {
  .l-migrated .firstview-page {
    height: 280px;
    margin-top: 80px;
  }
}

.l-migrated .firstview-page__title {
  color: #fff;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  text-align: center;
}

@media (min-width: 640px) {
  .l-migrated .firstview-page__title {
    font-size: 3.2rem;
    letter-spacing: 0.1em;
  }
}

.l-migrated .breadcrumb {
  width: 100%;
  /*padding: 26px 0;*/
  /* 旧サイトは固定ヘッダー前提で上100px。現行は main 側で padding-top:80px を確保済みのため上余白を16pxに補正 */
  padding: 16px 0 20px ;
  border-bottom: 1px solid #71737e;
}

.l-migrated .breadcrumb-on-headimage {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px solid #71737e;
}

.l-migrated .bread-webmt {
  /*margin-top: 63px;*/
}

@media screen and (min-width: 1100px) {
  .l-migrated .bread-webmt {
    /*margin-top: 80px;*/
  }
}

.l-migrated .breadcrumbList {
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}

.l-migrated .breadcrumbList__item {
  display: inline-block;
  margin: 5px 0;
}

.l-migrated .breadcrumbList__item:not(:last-child):after {
  content: "＞";
  display: inline-block;
  margin: 0 10px;
  font-size: 1.4rem;
}

.l-migrated .breadcrumbList__item__link {
  color: #333;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}

@media (min-width: 640px) {
  .l-migrated .breadcrumbList__item__link:hover {
    color: #999;
  }
}

.l-migrated .column1 {
  width: 90%;
  max-width: 960px;
  margin: 40px auto 80px;
}

@media (min-width: 640px) {
  .l-migrated .column1 {
    margin-top: 80px;
  }
}

.l-migrated .column2 {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 960px;
  /* 下側は 0 でフッターに接していたため、上と同じ値を入れて対称にする */
  margin: 40px auto;
}

@media (min-width: 640px) {
  .l-migrated .column2 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
}

.l-migrated .subnav {
  display: none;
  width: 365px;
  max-height: 600px;
  margin-right: 10px;
  margin-left: 0;
  margin-bottom: 80px;
  padding: 0 20px 0 0;
  overflow-y: auto;
}

@media (min-width: 640px) {
  .l-migrated .subnav {
    display: block;
  }
}

.l-migrated .sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
}

.l-migrated .subnavList__item__link {
  display: block;
  padding: 20px 0;
  color: #333;
  font-size: 1.4rem;
  border-bottom: 1px dotted #ccc;
}

@media (min-width: 640px) {
  .l-migrated .subnavList__item__link:hover {
    color: #999;
  }
}

.l-migrated .subnavList__item__title {
  display: block;
  padding: 20px 0;
  color: #333;
  font-size: 1.4rem;
}

.l-migrated .subnavListChild {
  padding-left: 40px;
}

.l-migrated .subnavListChild__item__link {
  display: block;
  padding: 16px 0 4px 0;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .subnavListChild__item__link:hover {
    color: #999;
  }
}

.l-migrated .subnavListChild__item__link:before {
  content: "─";
  display: inline-block;
  margin-left: -24px;
  margin-right: 10px;
}

.l-migrated .subnavListChild__item2__link {
  display: block;
  padding: 4px 0;
  color: #333;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .l-migrated .subnavListChild__item2__link:hover {
    color: #999;
  }
}

.l-migrated .subnavListChild__item2__link:before {
  content: "・";
  display: inline-block;
}

.l-migrated .pagecontent {
  width: 100%;
  padding: 0 15px;
}

@media (min-width: 640px) {
  .l-migrated .pagecontent {
    padding: 0;
  }
}

@media all and (-ms-high-contrast: none) {
  .l-migrated .pagecontent {
    margin-left: 0;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 640px) {
  .l-migrated .pagecontent {
    margin-left: 40px;
  }
}

.l-migrated .pagecontent__title {
  color: #333;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
  margin-bottom: 40px;
}

.l-migrated .pagecontent__title:before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 16px;
  margin-right: 16px;
  background: -webkit-gradient(linear, top, bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to top, #00af84, #00b4e6);
  background: linear-gradient(to top, #00af84, #00b4e6);
}

.l-migrated .pagecontent__text {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.7;
  margin-bottom: 40px;
}

.l-migrated .pagecontent__text_low_bottom {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.7;
}

.l-migrated .pagecontent__img {
  display: block;
  width: 100%;
  margin: 20px auto;
}

.l-migrated .pagecontentBlock {
  margin-bottom: 40px;
}

.l-migrated .pagecontentBlock__title {
  margin-bottom: 16px;
  padding-bottom: 16px;
  color: #333;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.7;
  border-bottom: 1px solid #999;
}

.l-migrated .pagecontentBlock__text {
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: 0.02em;
}

.l-migrated .pagecontentBlock__title_video {
  position: relative;
  width: 100%;
  padding: 0 0 2px 10px;
  margin: 20px 0;
  color: #323232;
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
  border-bottom: 1px solid #82dbea;
  border-left: 4px solid #82dbea;
}

.l-migrated .pagecontentBlock__subtitle {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
  padding-bottom: 2px;
  border-bottom: 1px solid #82dbea;
}

@media (min-width: 640px) {
  .l-migrated .pagecontentBlock__text {
    font-size: 1.5rem;
    letter-spacing: 0.02em;
  }
}

.l-migrated .pagecontentBlock__column2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 64px;
}

.l-migrated .pagecontentBlock__column2__item {
  width: 100%;
  margin: 10px auto;
}

.l-migrated .pagecontentBlock__column2__item:last-child {
  margin: 10px auto;
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column2__item {
    width: 48%;
    margin: auto;
  }
  .l-migrated .pagecontentBlock__column2__item:last-child {
    margin: 0 0 0 auto;
  }
}

.l-migrated .pagecontentBlock__column2__img {
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column2__img {
    margin: 0 40px 0 auto;
  }
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column2 {
    flex-wrap: nowrap;
  }
}

.l-migrated .pagecontentBlock__column3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 64px;
}

.l-migrated .pagecontentBlock__column3__item {
  width: 100%;
  margin: 10px auto;
}

.l-migrated .pagecontentBlock__column3__item:last-child {
  margin: 10px auto;
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column3__item {
    width: 31%;
    margin: auto;
  }
  .l-migrated .pagecontentBlock__column3__item:last-child {
    margin: 0 0 0 auto;
  }
}

.l-migrated .pagecontentBlock__column3__img {
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column3__img {
    margin: 0 40px 0 auto;
  }
}

@media (min-width: 960px) {
  .l-migrated .pagecontentBlock__column3 {
    flex-wrap: nowrap;
  }
}

.l-migrated .image_border {
	border: 1px solid #EEE;
}

.l-migrated .sendlabel {
  width: 100%;
}

@media (min-width: 640px) {
  .l-migrated .sendlabel {
    width: 39%;
  }
}

.l-migrated .notfoundpage {
  /*position: relative;*/
  width: 100%;
  margin-bottom: 0;
}

.l-migrated .notfoundpage__inner {
  width: 100%;
  max-width: 800px;
  margin: 240px auto 120px;
  padding: 0 16px;
}

.l-migrated .notfoundpage__inner__title {
  color: #0079c3;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.1em;
  margin: 56px auto 32px;
}

@media (min-width: 640px) {
  .l-migrated .notfoundpage__inner__title {
    font-size: 2.0rem;
  }
}

.l-migrated .notfoundpage__inner__text {
  font-size: 1.6rem;
  text-align: left;
  line-height: 1.7;
  letter-spacing: 0.02em;
}

@media (min-width: 640px) {
  .l-migrated .notfoundpage__inner__text {
    text-align: center;
  }
}

.l-migrated .notfoundpageBtn {
  display: block;
  width: 100%;
  max-width: 440px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  margin: 40px auto;
  padding: 18px;
  text-align: center;
  background-color: #ef9a01;
  border-radius: 5px;
  transition: all 0.2s;
  cursor: pointer;
}

@media (min-width: 640px) {
  .l-migrated .notfoundpageBtn {
    font-size: 1.6rem;
  }
  .l-migrated .notfoundpageBtn:hover {
    background-color: #ffc04a;
  }
}

.l-migrated .changemail {
  display: block;
  color: #333;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin: 20px 0 30px;
}

.l-migrated .formitem {
  display: block;
}

.l-migrated .formitem_margin {
  margin-top: 10px;
  margin-bottom: 20px;
}

.l-migrated .of-hidden {
  display: block;
  overflow: hidden;
}

/*--logo--*/
.l-migrated .pushlog-logo {
  width: 240px;
  margin-left: 0;
  margin-top: 16px;
}

@media screen and (min-width: 680px) {
  .l-migrated .pushlog-logo {
    margin-left: 24px;
    margin-top: 0;
  }
}

.l-migrated .uscoiot-logo {
  display: block;
  width: 160px;
  margin: 20px auto;
}

/*--color--*/
.l-migrated .must {
  color: #e60012;
}

.l-migrated ._gray {
  color: #4a4a4a;
}

.l-migrated ._black {
  color: #333;
}

.l-migrated ._blue {
  color: #00b4e6;
}

.l-migrated ._bg-blue {
  background-color: #DFEDF1;
}

/*--font--*/
.l-migrated .fs_big {
  display: block;
  margin-bottom: 8px;
  font-size: 3.0rem;
}

.l-migrated .opensans {
  font-family: 'Open Sans';
}

.l-migrated .popup {
  position: relative;
  bottom: auto;
  right: auto;
  display: block;
  width: 100%;
  background-color: #fff;
  z-index: 700;
}

@media (min-width: 640px) {
  .l-migrated .popup {
    position: fixed;
    bottom: 20px;
    right: 20px;
    max-width: 440px;
  }
}

.l-migrated .popup-close {
  position: absolute;
  top: -15px;
  right: -10px;
  display: none;
  width: 30px;
  height: 30px;
  line-height: 30px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  border-radius: 50%;
  background-color: #00b4e6;
  cursor: pointer;
  z-index: 888;
}

@media (min-width: 640px) {
  .l-migrated .popup-close {
    display: block;
  }
}

.l-migrated .popup2 {
  position: relative;
  bottom: auto;
  right: auto;
  display: block;
  width: 100%;
  background-color: #fff;
  z-index: 700;
}

@media (min-width: 640px) {
  .l-migrated .popup2 {
    position: fixed;
    bottom: 220px;
    right: 20px;
    max-width: 440px;
  }
}

.l-migrated .popup-close2 {
  position: absolute;
  top: -15px;
  right: -10px;
  display: none;
  width: 30px;
  height: 30px;
  line-height: 30px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  border-radius: 50%;
  background-color: #0cb80c;
  cursor: pointer;
  z-index: 888;
}

@media (min-width: 640px) {
  .l-migrated .popup-close2 {
    display: block;
  }
}

.l-migrated .flexdiv {
  display: flex;
  justify-content: space-between;
}

.l-migrated .flexdiv__item:first-of-type {
  margin-right: 16px;
}

.l-migrated .righttop-layout {
  position: relative;
  top: 0;
}

@media (min-width: 960px) {
  .l-migrated .righttop-layout {
    display: flex;
    justify-content: flex-end;
  }
}

@media (min-width: 960px) {
  .l-migrated .righttop-layout .morebtn {
    margin-left: 0;
    margin-right: 0;
  }
}

/* @media (min-width: 960px) {
  .l-migrated .righttop-layout--top56 {
    position: absolute;
    top: 56px;
    right: 0;
  }
} */

.l-migrated .categorylabel {
  display: inline-block;
  width: 90px;
  margin-left: 20px;
  padding: 0 8px;
  color: #fff;
  /* font-family: "M PLUS Rounded 1c"; */
  font-size: 1.1rem;
  font-weight: bold;
  text-align: center;
  transform: translateY(-1.5px);
}

@media screen and (min-width: 680px) {
  .l-migrated .categorylabel {
    display: block;
    margin-left: 0;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .categorylabel {
    display: inline-block;
    margin-left: 20px;
  }
}

.l-migrated .categorylabel--verup {
  background-color: #4fba80;
  font-size: 1.0rem;
  letter-spacing: 0.01em;
  padding: 0 4px;
}

.l-migrated .categorylabel--news {
  background-color: #7ecef4;
}

.l-migrated .categorylabel--new {
  background-color: #de5c5c;
}

.l-migrated .categorylabel--semi {
  background-color: #be86d9;
}

.l-migrated .categorylabel--exhi {
  background-color: #f49269;
}

.l-migrated .ctabtn {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  width: 180px;
  height: 40px;
  color: #fff;
  text-align: center;
  font-size: 1.6rem;
  line-height: 40px;
  background-color: #5c5d67;
  border-radius: 0 0 10px 10px;
}

@media screen and (min-width: 1100px) {
  .l-migrated .ctabtn {
    display: block;
    font-size: 1.6rem;
  }
}

.l-migrated .ctabtn:hover {
  background-color: #50525b;
}

.l-migrated .ctabtn-sp {
  position: relative;
  display: block;
  width: calc(100% - 20px);
  height: 80px;
  margin: 64px auto 0;
  padding-right: 32px;
  color: #fff;
  text-align: center;
  font-size: 2.2rem;
  letter-spacing: 0.04em;
  line-height: 80px;
  background-color: #5c5d67;
  border-radius: 10px 10px 10px 10px;
}

.l-migrated .detailbtn {
  display: block;
  width: 100%;
  max-width: 264px;
  padding: 12px 20px;
  color: #0070c0;
  font-size: 1.3rem;
  text-align: center;
  border: 1px solid #0070c0;
  background-color: #fff;
  transition: 0.3s;
}

@media screen and (min-width: 680px) {
  .l-migrated .detailbtn {
    font-size: 1.6rem;
  }
}

.l-migrated .detailbtn:hover {
  color: #fff;
  background-color: #0070c0;
}

.l-migrated .dlbtn {
  display: block;
  width: 100%;
  max-width: 264px;
  margin-top: 16px;
  padding: 12px 20px;
  color: #00b050;
  font-size: 1.3rem;
  text-align: center;
  border: 1px solid #00b050;
  background-color: #fff;
  transition: 0.3s;
}

@media screen and (min-width: 680px) {
  .l-migrated .dlbtn {
    font-size: 1.6rem;
  }
}

.l-migrated .dlbtn:hover {
  color: #fff;
  background-color: #00b050;
}

.l-migrated .top-fix {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 999;
}

.l-migrated .top-fix img {
  width: auto;
}

.l-migrated .top-fix img:hover {
  opacity: 1 !important;
}

.l-migrated .arrowicon-smallbtn {
  width: 14px;
  position: absolute;
  top: 50%;
  right: 5px;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

@media screen and (min-width: 640px) {
  .l-migrated .arrowicon-smallbtn {
    width: 14px;
    right: 10px;
  }
}

.l-migrated .ttlarrow {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 11px;
}

.l-migrated .fs-normal {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.7;
}

.l-migrated .fs20 {
  font-size: 2.0rem;
}

.l-migrated .en-font {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  transform: translateY(-1px);
}

.l-migrated .border-bottom {
  border-bottom: 1px solid #ccc;
}

.l-migrated .padding0 {
  padding: 0 !important;
}

.l-migrated .mb80 {
  margin-bottom: 80px;
}

.l-migrated .textlink {
  text-decoration: underline;
}

.l-migrated .textcenter {
  text-align: center !important;
}

.l-migrated .dp-block {
  display: block !important;
}

/*  アニメーションスタイル
-------------------------------------------*/
.l-migrated .slide-left {
  position: relative;
  left: 30px;
  transition: all 0.2s ease 0s, opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, left 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
}

.l-migrated .slide-left100 {
  position: relative;
  left: 180%;
  transition: all 0.2s ease 0s, opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, left 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
}

.l-migrated .slide-left100.is-show {
  left: 0;
}

.l-migrated .slide-right {
  position: relative;
  right: 30px;
  opacity: 0;
  transition: all 0.2s ease 0s, opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, right 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
}

.l-migrated .slide-right.is-show {
  right: 0;
  opacity: 1;
}

.l-migrated .slide-up {
  position: relative;
  top: 20px;
  opacity: 0;
  transition: top 860ms,opacity 0.5s;
}

.l-migrated .slide-up.is-show {
  top: 0;
  opacity: 1;
}

.l-migrated .fadein {
  opacity: 0;
  transition: top 860ms,opacity 0.5s;
}

.l-migrated .fadein.is-show {
  opacity: 1;
}

.l-migrated .rotate {
  transform: rotate(180deg);
}

.l-migrated .delay50 {
  transition-delay: 0.5s;
}

.l-migrated .delay80 {
  transition-delay: 0.8s;
}

.l-migrated .delay110 {
  transition-delay: 1.1s;
}

.l-migrated .delay140 {
  transition-delay: 1.4s;
}

.l-migrated .delay170 {
  transition-delay: 1.7s;
}

.l-migrated .delay200 {
  transition-delay: 2.0s;
}

.l-migrated .delay230 {
  transition-delay: 2.3s;
}

.l-migrated .delay260 {
  transition-delay: 2.6s;
}

.l-migrated .delay290 {
  transition-delay: 2.9s;
}

/* .header {
  width: 100%;
  height: 63px;
  position: fixed;
  top: 0;
  background: #71737e;
  z-index: 999;
}

.header__inner {
  position: relative;
  width: 100%;
  max-width: 1100px;
  height: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 auto;
  padding: 0 30px;
}

@media screen and (min-width: 1100px) {
  .header__inner {
    width: 100%;
    max-width: 960px;
    height: 80px;
    padding: 0;
    justify-content: space-between;
  }
}

@media screen and (min-width: 1100px) {
  .header {
    height: 80px;
  }
} */

.l-migrated .pcnav {
  position: absolute;
  bottom: 0;
  right: 0;
  display: none;
}

@media screen and (min-width: 1100px) {
  .l-migrated .pcnav {
    display: block;
    right: auto;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .pcnavlist__item {
    position: relative;
    width: 149px;
    display: inline-block;
    font-size: 1.1rem;
    text-align: center;
    border-right: 1px solid #50525b;
    margin: 0 auto 10px;
  }
  .l-migrated .pcnavlist__item:first-child {
    width: 61px;
  }
  .l-migrated .pcnavlist__item:first-child:hover {
    background-color: #50525b;
    border-radius: 6px 6px 0 0;
    margin: 0 auto;
    padding: 8px 0;
  }
  .l-migrated .pcnavlist__item:last-child {
    border-right: none;
  }
}

@media screen and (min-width: 1100px) and (min-width: 1100px) {
  .l-migrated .pcnavlist__item {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .pcnavlist__item__link {
    font-weight: 200;
    letter-spacing: 0.07em;
    color: #fff;
    transition: 0.3s;
  }
}

@media (min-width: 640px) {
  .l-migrated .hoverarrow {
    background-color: #50525b;
    border-radius: 6px 6px 0 0;
    margin: 0 auto;
    padding: 10px 0;
  }
  .l-migrated .hoverarrow:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -16px;
    left: 50%;
    border-top: 11px solid #50525b;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    z-index: 998;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
  }
}

.l-migrated .navtext {
  display: block;
}

.l-migrated .mailicon {
  width: 20px;
  position: absolute;
  top: 50%;
  left: 24px;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.l-migrated .mailicon-sp {
  width: 40px;
  margin-right: 10px;
  -ms-transform: translateX(-8px) translateY(-3px);
  -moz-transform: translateX(-8px) translateY(-3px);
  -webkit-transform: translateX(-8px) translateY(-3px);
  transform: translateX(-8px) translateY(-3px);
}

.l-migrated ._orangenavbg {
  background-color: #ef9a01;
  padding-top: 20px;
  transition: all 0.2s;
}

@media screen and (min-width: 900px) {
  .l-migrated ._orangenavbg:hover {
    color: #fff;
    background-color: #ffc04a;
  }
}

.l-migrated ._graynavbg {
  background-color: #333333;
  padding-top: 20px;
  transition: all 0.2s;
}

@media screen and (min-width: 900px) {
  .l-migrated ._graynavbg:hover {
    color: #fff;
    background-color: #666;
  }
}

.l-migrated ._gray2navbg {
  background-color: #808080;
  padding-top: 20px;
  transition: all 0.2s;
}

@media screen and (min-width: 900px) {
  .l-migrated ._gray2navbg:hover {
    color: #333;
    background-color: #fff;
  }
}

.l-migrated .headerIcon {
  display: block;
  font-size: 2.4rem;
  text-align: center;
  margin-bottom: 8px;
  padding-top: 14px;
}

.l-migrated #sm_nav-drawer {
  display: block;
  position: relative;
  text-align: right;
}

@media screen and (min-width: 1100px) {
  .l-migrated #sm_nav-drawer {
    display: none;
  }
}

.l-migrated .smnavlist__item {
  margin: 0 0 1px 0;
  padding: 0;
  font-size: 1.4rem;
  text-align: center;
  border-bottom: 1px solid #5e5f68;
  box-shadow: 0px 1px 0 0 #818390;
}

.l-migrated .smnavlist__item__link {
  position: relative;
  width: 100%;
  display: block;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 200;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-align: left;
  padding: 24px 20px;
  cursor: pointer;
  background-color: #71737e;
}

.l-migrated .smnavlist__item:first-child {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: right;
  margin: 0 0 1px 0;
  padding: 20px 30px;
  cursor: pointer;
}

.l-migrated .border-reset {
  border-bottom: none !important;
  box-shadow: none !important;
}

.l-migrated .smclosebtn {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 40px;
  height: 40px;
  font-size: 37px;
  color: #fff;
}

.l-migrated .smnavbg1 {
  background-image: url(/assets/migrated/images/li1-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .smnavbg2 {
  background-image: url(/assets/migrated/images/li2-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .smnavbg3 {
  background-image: url(/assets/migrated/images/li3-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .smnavbg4 {
  background-image: url(/assets/migrated/images/li4-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .smnavbg5 {
  background-image: url(/assets/migrated/images/li5-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .smsubnavlist {
  display: none;
}

.l-migrated .smsubnavlist__item {
  margin: 0 10px 0;
  font-size: 1.7rem;
  text-align: left;
  border-top: 1px solid #63646a;
}

.l-migrated .smsubnavlist__item:first-child {
  margin: 0 10px 0;
}

.l-migrated .smsubnavlist__item__link {
  position: relative;
  width: 100%;
  display: block;
  color: #fff;
  font-weight: 200;
  letter-spacing: 0.03em;
  padding: 20px;
}

.l-migrated .contactbtn {
  display: block;
  margin: 16px 20px 8px;
  padding: 20px;
  color: #2f5597;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
  border: 1px solid #2f5597;
}

.l-migrated .loginbtn {
  display: block;
  width: 90%;
  margin: 8px auto;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
  background-color: #333;
  border-radius: 5px;
}

.l-migrated .membertopbtn {
  display: block;
  width: 90%;
  margin: 8px auto;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
  background-color: #808080;
  border-radius: 5px;
}

/*チェックボックス等は非表示に*/
.l-migrated .nav-unshown {
  display: none;
}

/*アイコンのスペース*/
.l-migrated #nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
.l-migrated #nav-open span,
.l-migrated #nav-open span:before,
.l-migrated #nav-open span:after {
  position: absolute;
  height: 3px;
  /*線の太さ*/
  width: 25px;
  /*長さ*/
  border-radius: 3px;
  background: #fff;
  display: block;
  content: "";
  cursor: pointer;
}

.l-migrated #nav-open span:before {
  bottom: -8px;
}

.l-migrated #nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
.l-migrated #nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;
  /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: 0.3s ease-in-out;
}

/*中身*/
.l-migrated #nav-content {
  display: none;
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  /*最前面に*/
  width: 100%;
  /*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: auto;
  /*最大幅（調整してください）*/
  height: 100%;
  background: #71737e;
  /*背景色*/
  transition: 0.3s ease-in-out;
  /*滑らかに表示*/
}

/*チェックが入ったらもろもろ表示*/
.l-migrated #nav-input:checked ~ #nav-close {
  display: block;
  /*カバーを表示*/
  opacity: 0.5;
}

.l-migrated #nav-input:checked ~ #nav-content {
  display: block;
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*中身を表示（左へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
}

.l-migrated .logo {
  width: 140px;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 900px) {
  .l-migrated .logo {
    width: 140px;
    margin: auto;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .logo {
    width: 187px;
    margin: auto;
  }
}

.l-migrated .smnavlogo {
  margin: 24px auto;
}

.l-migrated .logolink {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 1100px) {
  .l-migrated .logolink {
    top: 13px;
    left: auto;
    transform: translate(0, 0);
  }
}

.l-migrated .user-support-font {
  font-size: 12px;
}

.l-migrated .dtmenu {
  display: none;
  position: fixed;
  top: -304px;
  left: 0;
  width: 100%;
  background-color: #f7f7f7;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.1);
  z-index: 997;
  transition: 0.7s cubic-bezier(0.77, 0, 0.175, 1);
}

@media screen and (min-width: 1100px) {
  .l-migrated .dtmenu {
    display: block;
  }
}

.l-migrated .dtmenu__item {
  display: flex;
  max-width: 960px;
  margin: 30px auto;
  padding: 0;
  opacity: 0;
  transition: 0.7s cubic-bezier(0.77, 0, 0.175, 1);
}

.l-migrated .dtmenu__links {
  width: calc(100% - 288px);
  margin-left: 48px;
  padding-top: 20px;
}

.l-migrated .dtmenu__links__top {
  width: 100%;
  letter-spacing: 0.03em;
  padding-bottom: 16px;
  border-bottom: 1px solid #c5c5c5;
}

.l-migrated .dtmenu__links__top span {
  color: #323232;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}

.l-migrated .dtmenu__links__top p {
  display: inline-block;
  margin-left: 16px;
  color: #323232;
  font-size: 1.4rem;
  font-weight: bold;
}

.l-migrated .dtmenu__links__bottom {
  margin-top: 20px;
}

.l-migrated .dtmenu__links__bottom a {
  color: #323232;
  font-size: 1.8rem;
  font-weight: 100;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-right: 20px;
  white-space: nowrap;
  transition: 0.3s;
}

@media (min-width: 640px) {
  .l-migrated .dtmenu__links__bottom a:hover {
    opacity: 0.6;
  }
}

.l-migrated .dtarrow {
  display: inline-block;
  margin-right: 5px;
  transform: translateY(-4px);
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #00afcc;
}

.l-migrated .icon-pos {
  display: inline-block;
  transform: translateY(2px);
}

.l-migrated .hd-arrow {
  position: absolute;
  top: 22px;
  right: 16px;
  width: 32px;
  height: 32px;
  color: #71737e;
  font-size: 32px;
  line-height: 32px;
  background-color: #fff;
  border-radius: 32px;
  transform: rotate(0);
  transition: 0.2s ease-in-out;
}

.l-migrated .hd-arrow-sm {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 20px;
  transform: rotate(0);
  transition: 0.2s ease-in-out;
}

.l-migrated .hideicon {
  display: none;
}

.l-migrated .mb1 {
  margin-bottom: 1px;
}

.l-migrated .footer {
  width: 100%;
  text-align: center;
}

.l-migrated .indexContact {
  width: 100%;
}

.l-migrated .indexContact__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 0;
}

@media screen and (min-width: 900px) {
  .l-migrated .indexContact__inner {
    padding: 27px 0;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .indexContact__inner {
    margin: 0 auto;
  }
}

.l-migrated .contact-outline {
  width: calc(100% - 20px);
  border: 1px solid #71737e;
  margin: 0 auto;
  padding: 35px 25px 25px 25px;
  text-align: center;
  position: relative;
  display: inline-block;
}

@media screen and (min-width: 641px) {
  .l-migrated .contact-outline {
    margin: 64px auto 0;
    padding: 35px 25px 35px 25px;
  }
}

@media screen and (min-width: 960px) {
  .l-migrated .contact-outline {
    width: auto;
    margin: 0;
  }
}

.l-migrated .contact-outline__title {
  color: #71737e;
  font-size: 3.0rem;
  font-weight: 200;
  text-align: center;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
}

@media screen and (min-width: 641px) {
  .l-migrated .contact-outline__title {
    font-size: 2.8rem;
  }
}

.l-migrated .contact-outline__eng-ttl {
  color: #71737e;
  font-size: 1.3rem;
  text-align: center;
  font-family: "OpenSans";
  font-style: normal;
  font-weight: 100;
  letter-spacing: 0.1em;
  margin-top: 10px;
}

.l-migrated .contact-outline:before {
  content: " ";
  border: 5px solid #e3e4e8;
  position: absolute;
  top: 3px;
  left: 3px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
}

.l-migrated .contactline {
  display: block;
  margin: 25px auto 20px;
  width: 100%;
  max-width: 740px;
  height: 1px;
  background-color: #dcdcdc;
}

.l-migrated .contact-flex {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 800px) {
  .l-migrated .contact-flex {
    flex-wrap: nowrap;
  }
}

.l-migrated .contact-flex__item:first-child {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
}

@media screen and (min-width: 800px) {
  .l-migrated .contact-flex__item:first-child {
    width: auto;
    margin-right: 29px;
    margin-bottom: 0;
  }
}

.l-migrated .contact-flex__item__phone {
  color: #71737e;
  font-size: 4.0rem;
  font-weight: bold;
}

@media screen and (min-width: 641px) {
  .l-migrated .contact-flex__item__phone {
    font-size: 5.0rem;
  }
}

.l-migrated .contact-flex__item__phone img {
  width: 32px;
}

.l-migrated .contact-flex__item__text {
  margin-top: 14px;
  color: #71737e;
  font-size: 1.5rem;
}

.l-migrated .contact-flex__item__mail {
  display: block;
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  transition: all 0.2s;
  cursor: pointer;
}

@media screen and (min-width: 641px) {
  .l-migrated .contact-flex__item__mail {
    width: 300px;
    height: 80px;
  }
}

.l-migrated .contact-flex__item__mail img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  display: block;
}

.l-migrated .contact-flex__item__mail img:hover:nth-of-type(2) {
  opacity: 0;
}

.l-migrated .position-reset {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  -webkit-transform: translate(0, 0) !important;
  transform: translate(0, 0) !important;
}

@media screen and (min-width: 960px) {
  .l-migrated .position-reset {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

.l-migrated .footcontact-link {
  display: flex;
  flex-wrap: wrap;
  max-width: 960px;
  margin: 10px;
}

@media screen and (min-width: 980px) {
  .l-migrated .footcontact-link {
    margin: 50px auto;
  }
}

.l-migrated .footcontact-link__topflex {
  display: flex;
  align-items: center;
}

.l-migrated .footcontact-link__toptext {
  transform: translateY(-10px);
}

.l-migrated .footcontact-link__item {
  position: relative;
  width: 100%;
  height: auto;
  margin: 0 0 10px;
  padding: 24px 48px 10px 10px;
  border-radius: 12px;
}

@media screen and (min-width: 960px) {
  .l-migrated .footcontact-link__item {
    width: calc(50% - 5px);
    height: 220px;
  }
}

.l-migrated .footcontact-link__item:nth-child(odd) {
  margin-right: 0;
}

@media screen and (min-width: 960px) {
  .l-migrated .footcontact-link__item:nth-child(odd) {
    margin-right: 10px;
  }
}

.l-migrated .footcontact-link__item--color1 {
  background-color: #2a4565;
}

.l-migrated .footcontact-link__item--color1:hover {
  background-color: #1e344f;
}

.l-migrated .footcontact-link__item--color2 {
  background-color: #0d7ab3;
}

.l-migrated .footcontact-link__item--color2:hover {
  background-color: #0b6696;
}

.l-migrated .footcontact-link__item--color3 {
  background-color: #1f9bcf;
}

.l-migrated .footcontact-link__item--color3:hover {
  background-color: #1a87b5;
}

.l-migrated .footcontact-link__item--color4 {
  background-color: #0eb6a0;
}

.l-migrated .footcontact-link__item--color4:hover {
  background-color: #0ba490;
}

.l-migrated .footcontact-link__item__icon {
  width: auto;
  height: 86px;
  margin-right: 10px;
}

.l-migrated .footcontact-link__item__icon--estimation {
  margin-left: 20px;
  margin-right: 20px;
}

.l-migrated .footcontact-link__item__icon--testmachine {
  transform: translateY(-10px);
}

.l-migrated .footcontact-link__item__icon--webconference {
  margin-left: 20px;
  margin-right: 20px;
}

.l-migrated .footcontact-link__item__title {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 200;
  text-align: center;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
}

@media screen and (min-width: 641px) {
  .l-migrated .footcontact-link__item__title {
    font-size: 3.0rem;
  }
}

.l-migrated .footcontact-link__item__engtitle {
  color: #fff;
  font-size: 1.5rem;
  text-align: left;
  font-family: "OpenSans";
  font-style: normal;
  font-weight: 100;
  letter-spacing: 0.1em;
  margin-top: 10px;
}

.l-migrated .footcontact-link__item__text {
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.7;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
  text-align: left;
}

@media screen and (min-width: 960px) {
  .l-migrated .footcontact-link__item__text {
    font-size: 1.3rem;
  }
}

.l-migrated .footcontact-link__item__arrow {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40px;
  height: 100%;
  padding: 13px;
  border-radius: 0 12px 12px 0;
}

.l-migrated .footcontact-link__item__arrow img {
  width: 18px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.l-migrated .footcontact-link__item__arrow--bg1 {
  background-color: #182d46;
}

.l-migrated .footcontact-link__item__arrow--bg2 {
  background-color: #075e8b;
}

.l-migrated .footcontact-link__item__arrow--bg3 {
  background-color: #0d7dac;
}

.l-migrated .footcontact-link__item__arrow--bg4 {
  background-color: #07917f;
}

.l-migrated .footcontact-line {
  width: 100%;
  border-bottom: 1px dashed #fff;
  margin: 0 0 10px;
}

.l-migrated .textbg--blue1 {
  background-color: #04b9c6;
}

.l-migrated .textbg--blue2 {
  background-color: #00b3e5;
}

.l-migrated .textbg--blue3 {
  background-color: #2f5597;
}

.l-migrated .textbg--green {
  background-color: #00b589;
}

.l-migrated .footernav {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5px;
  background-color: #71737e;
}

.l-migrated .footernav__logowrap {
  padding-bottom: 30px;
  border-bottom: 1px solid #5e5f68;
  box-shadow: 0px 1px 0 0 #818390;
}

@media screen and (min-width: 680px) {
  .l-migrated .footernav__logowrap {
    padding-bottom: 0;
    border-bottom: none;
    box-shadow: none;
  }
}

.l-migrated .footernav__logo {
  max-width: 280px;
  margin: 40px auto 0;
}

@media screen and (min-width: 680px) {
  .l-migrated .footernav__logo {
    max-width: 320px;
    margin: 60px auto 0;
  }
}

.l-migrated .footernav__top {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 0 30px;
  border-bottom: none;
}

@media screen and (min-width: 680px) {
  .l-migrated .footernav__top {
    padding: 30px 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .footernav__top {
    padding: 60px 0;
  }
}

.l-migrated .footernav__bottom {
  width: 100%;
  max-width: 960px;
  display: none;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: 16px 20px;
}

@media screen and (min-width: 680px) {
  .l-migrated .footernav__bottom {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .footernav__bottom {
    justify-content: flex-start;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .footernav__bottom {
    padding: 16px 0;
    justify-content: flex-start;
  }
}

.l-migrated .footernav__bottom__linklist {
  margin-bottom: 10px;
}

@media screen and (min-width: 680px) {
  .l-migrated .footernav__bottom__linklist {
    margin-bottom: 0;
  }
}

.l-migrated .footernav__bottom__linklist a {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
}

.l-migrated .footernav__bottom__linklist a:first-child {
  margin-right: 20px;
}

.l-migrated .footernav__bottom2 {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px 16px;
}

@media screen and (min-width: 641px) {
  .l-migrated .footernav__bottom2 {
    padding: 16px 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .footernav__bottom2 {
    padding: 16px 0;
  }
}

.l-migrated .footernav__bottom2__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.5;
}

@media screen and (min-width: 641px) {
  .l-migrated .footernav__bottom2__item {
    font-size: 1.3rem;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .footernav__bottom2__item {
    flex-direction: row;
    text-align: left;
  }
}

.l-migrated .companyname {
  font-size: 2.0rem !important;
  font-weight: bold;
  margin-bottom: 10px;
}

@media screen and (min-width: 641px) {
  .l-migrated .companyname {
    font-size: 1.6rem !important;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .companyname {
    margin-bottom: 0;
  }
}

.l-migrated .footerlist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (min-width: 680px) {
  .l-migrated .footerlist {
    justify-content: center;
  }
}

@media screen and (min-width: 900px) {
  .l-migrated .footerlist {
    flex-wrap: nowrap;
    justify-content: center;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .footerlist {
    justify-content: center;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .footerlist {
    justify-content: space-between;
  }
}

.l-migrated .footerlist__item {
  width: 100%;
  text-align: left;
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 1px solid #5e5f68;
  box-shadow: 0px 1px 0 0 #818390;
}

@media screen and (min-width: 680px) {
  .l-migrated .footerlist__item:first-child {
    padding-top: 0;
    border-top: none;
  }
}

.l-migrated .footerlist__item:last-child {
  margin-bottom: 0;
  margin-right: 0;
}

@media screen and (min-width: 680px) {
  .l-migrated .footerlist__item:last-child {
    margin-bottom: 16px;
  }
}

@media screen and (min-width: 680px) {
  .l-migrated .footerlist__item {
    width: auto;
    margin-right: 36px;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: none;
    box-shadow: none;
  }
}

@media screen and (min-width: 900px) {
  .l-migrated .footerlist__item {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .footerlist__item {
    margin-right: 23px;
  }
}

.l-migrated .footerlist__item:nth-child(8) {
  margin-right: 0;
}

.l-migrated .footerlist__link {
  position: relative;
  display: block;
  color: #fff;
  font-size: 2.0rem;
  padding: 24px 24px 24px 20px;
}

@media screen and (min-width: 680px) {
  .l-migrated .footerlist__link {
    font-size: 1.8rem;
    padding: 0;
  }
}

.l-migrated .footersublist {
  display: none;
  padding: 0;
}

@media screen and (min-width: 680px) {
  .l-migrated .footersublist {
    display: block;
    padding: 13px 0 0 0;
  }
}

.l-migrated .footersublist__item {
  display: block;
}

.l-migrated .footersublist__link {
  display: block;
  margin: 0 10px;
  padding: 20px;
  color: #fff;
  font-size: 1.7rem;
  line-height: 1.2;
  border-top: 1px solid #63646a;
  cursor: pointer;
}

@media screen and (min-width: 680px) {
  .l-migrated .footersublist__link {
    margin: auto;
    padding: 6px 0;
    font-size: 1.4rem;
    border-top: none;
  }
}

.l-migrated .small-arrow {
  display: inline-block;
  font-size: 1.0rem;
  transform: translateY(-1px);
}

.l-migrated .ft-arrow {
  position: absolute;
  top: 17px;
  right: 16px;
  width: 32px;
  height: 32px;
  color: #71737e;
  font-size: 32px;
  line-height: 32px;
  background-color: #fff;
  border-radius: 32px;
  transform: rotate(0);
  transition: 0.2s ease-in-out;
}

.l-migrated .fw-bold {
  font-weight: bold;
}

.l-migrated .mt12 {
  margin-top: 6px;
}

@media screen and (min-width: 680px) {
  .l-migrated .mt12 {
    margin-top: 12px;
  }
}

.l-migrated .mt18 {
  margin-top: 20px;
}

@media screen and (min-width: 680px) {
  .l-migrated .mt18 {
    margin-top: 18px;
  }
}

.l-migrated .ml10 {
  margin-left: 0;
}

@media screen and (min-width: 680px) {
  .l-migrated .ml10 {
    margin-left: 13px;
  }
}

.l-migrated .copy {
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  letter-spacing: 0.05em;
  margin-left: 10px;
}

.l-migrated .sm-show {
  display: block;
}

@media screen and (min-width: 680px) {
  .l-migrated .sm-show {
    display: none;
  }
}

.l-migrated .sm-hide {
  display: none;
}

@media screen and (min-width: 680px) {
  .l-migrated .sm-hide {
    display: block;
  }
}

/*
//////////////////////////////////////////////////////////////////

// Browser Hack
// ブラウザハック

//////////////////////////////////////////////////////////////////
*/
.l-migrated .firstview {
  margin-top: 63px;
}

@media screen and (min-width: 1100px) {
  .l-migrated .firstview {
    margin-top: 80px;
  }
}

.l-migrated .firstviewbg {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 2;
}

.l-migrated .section__title {
  color: #444;
  font-size: 4.0rem;
  font-weight: 200;
  text-align: center;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
}

@media screen and (min-width: 641px) {
  .l-migrated .section__title {
    font-size: 4.8rem;
  }
}

.l-migrated .section__title span {
  width: 216px;
  display: block;
  margin: 6px auto 0;
  padding-top: 6px;
  color: #999;
  font-size: 1.8rem;
  font-weight: 300;
  letter-spacing: 0.03em;
  text-align: center;
  border-top: 1px solid #999;
}

.l-migrated .section__text {
  display: block;
  color: #333;
  font-size: 1.5rem;
  text-align: left;
  line-height: 1.7;
  letter-spacing: 0.03em;
  margin: 40px auto 20px;
}

@media (min-width: 640px) {
  .l-migrated .section__text {
    font-size: 1.6rem;
    text-align: center;
    margin: 40px auto;
  }
}

.l-migrated .section__subtitle {
  color: #333;
  font-size: 2rem;
  line-height: 1.7;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
}

@media (min-width: 640px) {
  .l-migrated .section__subtitle {
    font-size: 2.4rem;
  }
}

.l-migrated .eng-ttl {
  color: #00afcc;
  font-size: 1.8rem;
  text-align: center;
  font-family: "OpenSans";
  font-style: normal;
  font-weight: 100;
  letter-spacing: 0.1em;
  margin: 8px 0 14px;
}

@media screen and (min-width: 641px) {
  .l-migrated .eng-ttl {
    margin: 14px 0;
  }
}

.l-migrated .newslist-btn {
  position: relative;
  display: block;
  width: 180px;
  height: 40px;
  line-height: 40px;
  margin: 0 0 0 auto;
  padding-right: 15px;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  background-color: #00afcc;
  border-radius: 8px;
}

.l-migrated .newslist-btn:hover {
  background-color: #0299b2;
}

.l-migrated .newslist-btn--sp {
  width: 100%;
  height: 70px;
  line-height: 70px;
  font-size: 2.0rem;
  border-radius: 14px;
}

.l-migrated .slick-slide {
  width: auto;
  margin: 0 auto;
}

@media screen and (min-width: 1100px) {
  .l-migrated .slick-slide {
    width: 960px;
  }
}

.l-migrated .slick-slide img {
  width: 100%;
}

.l-migrated .prev-arrow-div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 500;
}

@media screen and (min-width: 1100px) {
  .l-migrated .prev-arrow-div {
    width: 960px;
    height: 442px;
  }
}

.l-migrated .prev-arrow {
  position: absolute;
  top: 50%;
  left: 0;
  width: 50px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 501;
}

@media screen and (min-width: 1100px) {
  .l-migrated .prev-arrow {
    left: -50px;
  }
}

.l-migrated .next-arrow-div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 500;
}

@media screen and (min-width: 1100px) {
  .l-migrated .next-arrow-div {
    width: 960px;
    height: 442px;
  }
}

.l-migrated .next-arrow {
  position: absolute;
  top: 50%;
  right: 0;
  width: 50px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 501;
}

@media screen and (min-width: 1100px) {
  .l-migrated .next-arrow {
    right: -50px;
  }
}

.l-migrated .slick-dots li {
  width: 40px !important;
  height: 10px !important;
}

.l-migrated .slick-dots li button:before {
  content: "" !important;
  width: 40px !important;
  height: 10px !important;
  background-color: #f0f0f0;
}

.l-migrated .indexUnderlink {
  position: relative;
  width: 100%;
  padding: 64px 20px 20px 20px;
  background-size: 100%;
}

@media screen and (min-width: 641px) {
  .l-migrated .indexUnderlink {
    padding: 20px;
  }
}

@media screen and (min-width: 800px) {
  .l-migrated .indexUnderlink {
    padding: 40px 20px 0;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .indexUnderlink {
    padding: 40px 20px 0;
  }
}

@media screen and (min-width: 1800px) {
  .l-migrated .indexUnderlink {
    padding: 40px 20px 56px;
  }
}

.l-migrated .indexUnderlink__inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

@media screen and (min-width: 900px) {
  .l-migrated .indexUnderlink__inner {
    flex-wrap: nowrap;
  }
}

.l-migrated .indexUnderlink__inner a {
  width: 100%;
  transition: all 0.2s;
}

.l-migrated .indexUnderlink__inner a:first-child {
  margin-bottom: 20px;
  margin-right: 0;
}

@media screen and (min-width: 900px) {
  .l-migrated .indexUnderlink__inner a:first-child {
    margin-bottom: 0;
    margin-right: 20px;
  }
}

.l-migrated .underlink-submenu {
  position: relative;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 20px 0 40px;
}

@media screen and (min-width: 641px) {
  .l-migrated .underlink-submenu {
    margin: 75px 0 0;
  }
}

@media screen and (min-width: 720px) {
  .l-migrated .underlink-submenu {
    flex-wrap: nowrap;
  }
}

.l-migrated .underlink-submenu li {
  width: 49%;
}

@media screen and (min-width: 720px) {
  .l-migrated .underlink-submenu li {
    width: 225px;
  }
}

.l-migrated .underlink-submenu li:not(:nth-child(2n)) {
  margin-right: 2%;
}

.l-migrated .underlink-submenu li:not(:last-child) {
  margin-bottom: 10px;
}

@media screen and (min-width: 641px) {
  .l-migrated .underlink-submenu li:not(:last-child) {
    margin-bottom: 120px;
  }
}

@media screen and (min-width: 650px) {
  .l-migrated .underlink-submenu li:not(:last-child) {
    margin-bottom: 144px;
  }
}

@media screen and (min-width: 720px) {
  .l-migrated .underlink-submenu li:not(:last-child) {
    margin-bottom: 144px;
    margin-right: 20px;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .underlink-submenu li:not(:last-child) {
    margin-bottom: 10px;
  }
}

.l-migrated .underlink-submenu__link {
  display: flex;
  width: 100%;
  border-radius: 5px;
  position: relative;
  top: 0;
  left: 0;
  transition: all 0.2s;
  cursor: pointer;
}

@media screen and (min-width: 880px) {
  .l-migrated .underlink-submenu__link:hover img:nth-of-type(2) {
    opacity: 0;
  }
}

@media screen and (min-width: 1800px) {
  .l-migrated .underlink-submenu__link {
    width: auto;
  }
}

.l-migrated .underlink-submenu__link img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  display: block;
}

.l-migrated .indexNews {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 40px;
  padding: 0 20px;
  text-align: right;
}

@media screen and (min-width: 641px) {
  .l-migrated .indexNews {
    margin: 40px auto;
  }
}

@media screen and (min-width: 900px) {
  .l-migrated .indexNews {
    margin: 40px auto 40px;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .indexNews {
    margin: 40px auto 40px;
    padding: 0;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .indexNews {
    margin: 40px auto 40px;
    padding: 0;
  }
}

@media screen and (min-width: 1800px) {
  .l-migrated .indexNews {
    margin: 40px auto;
    padding: 0;
  }
}

.l-migrated .newslist-index {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.l-migrated .newslist-index__item {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.l-migrated .newslist-index__item__link {
  width: 100%;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  padding: 12px 10px 10px;
  color: #444;
  font-size: 1.6rem;
  text-align: left;
  line-height: 1.7;
  letter-spacing: 0.02em;
  border-bottom: 1px dotted #999;
}

@media screen and (min-width: 680px) {
  .l-migrated .newslist-index__item__link {
    flex-wrap: nowrap;
  }
}

.l-migrated .borderbottom-none {
  border-bottom: none;
}

.l-migrated .newsdate-index {
  width: 100%;
  display: inline-block;
  margin-right: 0;
  margin-bottom: 6px;
  color: #000000;
  font-size: 1.5rem;
  font-weight: bold;
}

@media screen and (min-width: 680px) {
  .l-migrated .newsdate-index {
    width: 21%;
    margin-right: 16px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .newsdate-index {
    width: 21%;
  }
}

.l-migrated .newsdate-support {
  width: 100%;
  display: inline-block;
  margin-right: 0;
  margin-bottom: 6px;
  /* font-family: "M PLUS Rounded 1c"; */
  font-size: 1.5rem;
  font-weight: bold;
}

@media screen and (min-width: 680px) {
  .l-migrated .newsdate-support {
    width: 20%;
    margin-right: 16px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .newsdate-support {
    width: 20%;
  }
}

.l-migrated .newstitle-index {
  display: inline-block;
  width: 100%;
  color: #323232;
  font-size: 1.5rem;
  font-weight: normal;
}

@media screen and (min-width: 680px) {
  .l-migrated .newstitle-index {
    width: calc(79% - 16px);
  }
  .l-migrated .newstitle-index:hover {
    text-decoration: underline;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .newstitle-index {
    width: calc(79% - 16px);
  }
}

.l-migrated .newstitle-support {
  display: inline-block;
  width: 100%;
  color: #02a5d2;
  /* font-family: "M PLUS Rounded 1c"; */
  font-size: 1.5rem;
  font-weight: bold;
}

@media screen and (min-width: 680px) {
  .l-migrated .newstitle-support {
    width: calc(79% - 16px);
  }
  .l-migrated .newstitle-support:hover {
    text-decoration: underline;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .newstitle-support {
    width: calc(85% - 16px);
  }
}

.l-migrated .new:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 16px;
  background-color: #e60012;
  border-radius: 50%;
}

.l-migrated .newsmorebtn {
  display: inline-block;
  margin: 16px 0 0 auto;
  color: #444;
  text-align: right;
  font-size: 1.5rem;
}

.l-migrated .newsmorebtn:hover {
  opacity: 0.6;
}

.l-migrated .double-arrow {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  transform: translateY(-1px);
}

.l-migrated .newsline {
  width: 100%;
  margin-top: 10px;
  border-bottom: 1px solid #323232;
}

.l-migrated .newsline2 {
  width: 100%;
  margin-top: 2px;
  border-bottom: 1px solid #323232;
}

.l-migrated .indexContent {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.l-migrated .indexContent--greenbg {
  background-color: #eaf9f5;
}

.l-migrated .indexContent--bluebg {
  background-color: #e8fafe;
}

.l-migrated .indexContent__inner {
  width: 100%;
  margin: 0px auto 32px;
}

@media screen and (min-width: 800px) {
  .l-migrated .indexContent__inner {
    margin: 80px auto 0;
    padding-bottom: 48px;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .indexContent__inner {
    margin: 120px auto 0;
    padding-bottom: 56px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .indexContent__inner {
    padding-bottom: 130px;
  }
}

.l-migrated .mt0 {
  margin-top: 0;
}

.l-migrated .pushlog-ttl {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 56px 0 0 0;
}

@media screen and (min-width: 641px) {
  .l-migrated .pushlog-ttl {
    margin: 64px auto 20px;
    padding: 56px 20px 0 20px;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .pushlog-ttl {
    padding: 0 20px 0 20px;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .pushlog-ttl {
    margin: 0 auto 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .pushlog-ttl {
    padding: 0;
  }
}

.l-migrated .pushlog-ttl img {
  width: 100%;
}

@media screen and (min-width: 641px) {
  .l-migrated .pushlog-ttl img {
    width: 657px;
  }
}

.l-migrated .falconnect-ttl {
  width: 100%;
  max-width: 960px;
  margin: 40px auto 20px;
  padding: 20px 20px 0 20px;
}

@media screen and (min-width: 641px) {
  .l-migrated .falconnect-ttl {
    margin: 40px auto 20px;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .falconnect-ttl {
    padding: 20px 20px 0 20px;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .falconnect-ttl {
    margin: 0 auto 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .falconnect-ttl {
    padding: 20px 0 0 0;
  }
}

.l-migrated .falconnect-ttl img {
  width: 643px;
}

.l-migrated .pushlogviewer-ttl {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 20px;
  padding: 56px 20px 0 20px;
}

@media screen and (min-width: 700px) {
  .l-migrated .pushlogviewer-ttl {
    padding: 120px 20px 0 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .pushlogviewer-ttl {
    padding: 120px 0 0 0;
  }
}

.l-migrated .pushlogviewer-ttl img {
  width: 657px;
}

.l-migrated .pushlog-ttl-text {
  width: 100%;
  max-width: 960px;
  margin: 0  auto;
  padding: 0 20px;
  font-size: 1.6rem;
  line-height: 1.7;
}

@media screen and (min-width: 1200px) {
  .l-migrated .pushlog-ttl-text {
    padding: 0;
  }
}

.l-migrated .falconnect-ttl-text {
  width: 100%;
  max-width: 960px;
  margin: 0  auto;
  padding: 0 20px;
  font-size: 1.6rem;
  line-height: 1.7;
}

@media screen and (min-width: 1200px) {
  .l-migrated .falconnect-ttl-text {
    padding: 0;
  }
}

.l-migrated .viewer-ttl-text {
  width: 100%;
  max-width: 960px;
  margin: 0  auto 20px;
  padding: 0 20px;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.7;
}

@media screen and (min-width: 641px) {
  .l-migrated .viewer-ttl-text {
    margin: 0  auto;
    text-align: left;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .viewer-ttl-text {
    padding: 0;
  }
}

.l-migrated .ct-flex {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 40px;
  padding: 0 20px 0 20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex {
    width: calc(100% - 40px);
    margin: 20px auto 40px;
    padding: 35px 20px 0 20px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex {
    margin: 20px auto 0;
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 1024px) {
  .l-migrated .ct-flex {
    width: 100%;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .ct-flex {
    padding: 0;
  }
}

.l-migrated .ct-flex__item {
  width: 100%;
  margin-bottom: 0;
  z-index: 50;
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex__item {
    width: calc(50% - 10px);
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item {
    width: auto;
    margin-bottom: 0;
  }
}

.l-migrated .ct-flex__item:not(:last-child) {
  margin-bottom: 20px;
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item:not(:last-child) {
    margin-right: 15px;
    margin-bottom: 0;
  }
}

.l-migrated .ct-flex__item__ttl {
  margin-bottom: 20px;
  padding-left: 20px;
  letter-spacing: 0.2em;
  font-weight: bold;
  border-left: 5px solid #00b2e6;
  border-image: linear-gradient(to bottom, #00b2e6 0%, #00ae83 100%);
  border-image-slice: 1;
}

.l-migrated .ct-flex__item__ttl span:first-child {
  display: block;
  font-size: 1.6rem;
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item__ttl span:first-child {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .ct-flex__item__ttl span:first-child {
    font-size: 1.6rem;
  }
}

.l-migrated .ct-flex__item__ttl span:last-child {
  display: block;
  font-size: 2.4rem;
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item__ttl span:last-child {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .ct-flex__item__ttl span:last-child {
    font-size: 2.4rem;
  }
}

.l-migrated .ct-flex__item--pushlog {
  margin-right: 0;
  background-color: #fff;
  border-radius: 18px;
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex__item--pushlog {
    width: calc(33% - 10px);
    margin-right: 5px;
    background-color: #eaf9f5;
    border-radius: 0;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item--pushlog {
    width: auto;
    margin-bottom: 0;
    margin-right: 0;
  }
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex__item--pushlog:last-child {
    margin-right: 0;
  }
}

.l-migrated .ct-flex__item--falconnect {
  margin-right: 0;
  background-color: #e7f0fa;
  border-radius: 18px;
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex__item--falconnect {
    width: calc(33% - 10px);
    margin-right: 5px;
    background-color: #fff;
    border-radius: 0;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .ct-flex__item--falconnect {
    width: auto;
    margin-bottom: 0;
    margin-right: 0;
  }
}

@media screen and (min-width: 641px) {
  .l-migrated .ct-flex__item--falconnect:last-child {
    margin-right: 0;
  }
}

.l-migrated .ctflex-spttl {
  display: block;
}

.l-migrated .ctflex-spttl--pushlog {
  width: 64%;
  margin: 20px auto 30px;
}

.l-migrated .ctflex-spttl--falconnect {
  width: 70%;
  margin: 20px auto;
}

.l-migrated .ctflex-spimgtoggle {
  display: none;
}

.l-migrated .ctflex-spimg {
  display: block;
  width: 80%;
  margin: 20px auto;
}

.l-migrated .ctflex-sparrowblock {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 30px;
  border-radius: 0 0 18px 18px;
}

.l-migrated .ctflex-sparrowblock--pushlog {
  background-color: #01af84;
}

.l-migrated .ctflex-sparrowblock--falconnect {
  background-color: #2a4565;
}

.l-migrated .ctflex-sparrow {
  display: block;
  width: 14px;
  margin: 0 auto;
  transform: rotate(90deg);
}

.l-migrated .arrow-rotate {
  transform: rotate(-93deg);
}

.l-migrated .viewer-flex__item:not(:nth-child(2n)) {
  margin-right: 0;
}

@media screen and (min-width: 641px) {
  .l-migrated .viewer-flex__item:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}

.l-migrated .btn-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 660px;
  margin: 30px 20px 0;
  padding-bottom: 56px;
}

@media screen and (min-width: 641px) {
  .l-migrated .btn-flex {
    margin: 30px auto 0;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .btn-flex {
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .btn-flex {
    padding-bottom: 0;
  }
}

.l-migrated .arrowicon-content {
  width: 20px;
  position: absolute;
  top: 50%;
  right: 0;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.l-migrated .greenbg-btn {
  position: relative;
  display: block;
  max-width: auto;
  width: 100%;
  height: 70px;
  line-height: 70px;
  margin-right: 0;
  margin-bottom: 10px;
  padding-right: 10px;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #03af83;
  border-radius: 14px;
  transition: all .3s;
}

@media screen and (min-width: 641px) {
  .l-migrated .greenbg-btn {
    width: 320px;
    height: 60px;
    line-height: 60px;
    margin-bottom: 20px;
    border-radius: 5px;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .greenbg-btn {
    margin-right: 20px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .greenbg-btn:hover {
    background-color: #019670;
  }
}

.l-migrated .bluebg-btn {
  position: relative;
  display: block;
  max-width: auto;
  width: 100%;
  height: 70px;
  line-height: 70px;
  margin-right: 0;
  margin-bottom: 10px;
  padding-right: 10px;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #2a4565;
  border-radius: 14px;
  transition: all .3s;
}

@media screen and (min-width: 641px) {
  .l-migrated .bluebg-btn {
    width: 320px;
    height: 60px;
    line-height: 60px;
    margin-bottom: 20px;
    border-radius: 5px;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .bluebg-btn {
    margin-right: 20px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .bluebg-btn:hover {
    background-color: #1e344f;
  }
}

.l-migrated .bluebg2-btn {
  position: relative;
  display: block;
  max-width: auto;
  width: 100%;
  height: 70px;
  line-height: 70px;
  margin-right: 0;
  margin-bottom: 10px;
  padding-right: 10px;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #00afcc;
  border-radius: 14px;
  transition: all .3s;
}

@media screen and (min-width: 641px) {
  .l-migrated .bluebg2-btn {
    width: 320px;
    height: 60px;
    line-height: 60px;
    margin-bottom: 20px;
    border-radius: 5px;
  }
}

@media screen and (min-width: 700px) {
  .l-migrated .bluebg2-btn {
    margin-right: 20px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .bluebg2-btn:hover {
    background-color: #0299b2;
  }
}

.l-migrated .graybg-btn {
  position: relative;
  display: block;
  max-width: auto;
  width: 100%;
  height: 70px;
  line-height: 70px;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  padding-right: 10px;
  letter-spacing: 0.1em;
  background-color: #a4a8bc;
  border-radius: 14px;
  transition: all .3s;
}

@media screen and (min-width: 641px) {
  .l-migrated .graybg-btn {
    width: 320px;
    height: 60px;
    line-height: 60px;
    border-radius: 5px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .graybg-btn:hover {
    background-color: #979aab;
  }
}

.l-migrated .bluegreen-btn {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  max-width: auto;
  margin: 10px 20px;
  padding: 6px;
  color: #00b2e6;
  font-size: 2.0rem;
  text-align: center;
  background: linear-gradient(-45deg, #00ae83 0%, #00b2e6 100%);
  border-radius: 10px;
  transition: all .3s;
}

@media screen and (min-width: 880px) {
  .l-migrated .bluegreen-btn {
    max-width: 400px;
    margin: 10px auto;
  }
  .l-migrated .bluegreen-btn:hover {
    top: -5px;
    left: -5px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
  }
}

.l-migrated .bluegreen-btn__inner {
  padding: 10px 16px;
  background: #fff;
  border-radius: 5px;
}

.l-migrated .bluegreen-btn__inner p {
  color: #00b2e6;
  font-weight: bold;
  letter-spacing: 0.1em;
  background: -webkit-linear-gradient(0deg, #00b2e6, #00ae83);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.l-migrated .pushlogbg-pos img {
  display: none;
  position: absolute;
  top: 94px;
  /*max-width: 680px;*/
  max-width: 800px;
}

@media screen and (min-width: 1023px) {
  .l-migrated .pushlogbg-pos img {
    display: inline-block;
    left: 70%;
  }
}

@media screen and (min-width: 1279px) {
  .l-migrated .pushlogbg-pos img {
    left: 65%;
  }
}

@media screen and (min-width: 1520px) {
  .l-migrated .pushlogbg-pos img {
    left: 63%;
  }
}

@media screen and (min-width: 1800px) {
  .l-migrated .pushlogbg-pos img {
	left: 60%;
  }
}

@media screen and (min-width: 2400px) {
  .l-migrated .pushlogbg-pos img {
    right: 0;
    left: auto;
  }
}

.l-migrated .falconnectbg-pos {
  display: none;
  position: absolute;
  top: 52px;
  min-width: 428px;
}

@media screen and (min-width: 1023px) {
  .l-migrated .falconnectbg-pos {
    display: inline-block;
    left: 72%;
  }
}

@media screen and (min-width: 1279px) {
  .l-migrated .falconnectbg-pos {
    left: 67%;
  }
}

@media screen and (min-width: 1520px) {
  .l-migrated .falconnectbg-pos {
    left: 63%;
  }
}

.l-migrated .pushlogviewerbg-pos {
  display: none;
  position: absolute;
  top: 35px;
}

@media screen and (min-width: 1023px) {
  .l-migrated .pushlogviewerbg-pos {
    display: inline-block;
    left: 71%;
  }
}

@media screen and (min-width: 1279px) {
  .l-migrated .pushlogviewerbg-pos {
    left: 65%;
  }
}

@media screen and (min-width: 1520px) {
  .l-migrated .pushlogviewerbg-pos {
    left: 63%;
  }
}

.l-migrated .pushlogviewerbg-pos img {
  min-width: 377px;
}

.l-migrated .case-flex {
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
}

@media screen and (min-width: 641px) {
  .l-migrated .case-flex {
    margin-top: 8px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .case-flex {
    margin-bottom: 40px;
  }
}

.l-migrated .case-flex__item {
  width: calc(50% - 10px);
  margin: 0 5px;
}

@media screen and (min-width: 641px) {
  .l-migrated .case-flex__item {
    width: calc(20% - 10px);
    margin: 0 6px 10px 6px;
  }
}

@media screen and (min-width: 641px) {
  .l-migrated .case-flex__item:nth-child(1) {
    margin-left: 0;
  }
  .l-migrated .case-flex__item:nth-child(6) {
    margin-left: 0;
  }
  .l-migrated .case-flex__item:nth-child(5n) {
    margin-right: 0;
  }
}

.l-migrated .case-flex__item__text {
  margin: 8px 0 16px;
  color: #323232;
  font-size: 1.6rem;
  text-align: center;
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
}

@media screen and (min-width: 641px) {
  .l-migrated .case-flex__item__text {
    font-size: 1.2rem;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .case-flex__item__text {
    font-size: 1.6rem;
  }
}

.l-migrated .blueline-btn {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  max-width: auto;
  margin: 20px;
  padding: 10px;
  color: #00b2e6;
  font-size: 2.0rem;
  text-align: center;
  letter-spacing: 0.1em;
  border: 3px solid #00b2e6;
  background-color: #fff;
  border-radius: 5px;
  transition: all .3s;
}

@media screen and (min-width: 880px) {
  .l-migrated .blueline-btn {
    max-width: 400px;
    margin: 20px auto;
  }
  .l-migrated .blueline-btn:hover {
    top: -5px;
    left: -5px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
  }
}

.l-migrated .mt28 {
  margin-top: 28px;
}

.l-migrated .case-topmargin {
  margin-top: 64px;
}

@media screen and (min-width: 641px) {
  .l-migrated .case-topmargin {
    margin-top: 100px;
  }
}

.l-migrated .tb-show {
  display: block !important;
}

@media screen and (min-width: 900px) {
  .l-migrated .tb-show {
    display: none !important;
  }
}

.l-migrated .tb-hide {
  display: none !important;
}

@media screen and (min-width: 900px) {
  .l-migrated .tb-hide {
    display: block !important;
  }
}

.l-migrated .show-w640 {
  display: none !important;
}

@media screen and (min-width: 641px) {
  .l-migrated .show-w640 {
    display: block !important;
  }
}

.l-migrated .hide-w640 {
  display: block !important;
}

@media screen and (min-width: 641px) {
  .l-migrated .hide-w640 {
    display: none !important;
  }
}

.l-migrated .newsHeadbg {
  background-image: url(/assets/migrated/images/news/news-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .news {
  width: 100%;
}

.l-migrated .news__img {
  max-width: 500px;
}

.l-migrated .news__img200 {
  max-width: 200px;
}

.l-migrated .yearBlock {
  display: block;
  margin-bottom: 64px;
}

.l-migrated .yearBlock__title {
  display: block;
  color: #333;
  font-size: 1.8rem;
  font-weight: 500;
}

.l-migrated .newslist {
  display: block;
  width: 100%;
  margin: 40px auto;
}

.l-migrated .newslist__item {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.l-migrated .newslist__item__link {
  width: 100%;
  display: inline-block;
  padding: 16px 0 16px 16px;
  color: #333;
  font-size: 1.6rem;
  text-align: left;
  line-height: 1.7;
  letter-spacing: 0.02em;
  border-bottom: 1px solid #ccc;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .newslist__item__link:hover {
    background-color: #efefef;
  }
}

@media (min-width: 960px) {
  .l-migrated .newslist {
    margin: 10px auto 20px;
  }
}

.l-migrated .newsdate {
  display: inline-block;
  font-size: 1.4rem;
}

.l-migrated .newstitle {
  position: relative;
  display: block;
  width: 100%;
  color: #333;
  font-size: 1.5rem;
  margin-top: 10px;
  padding-right: 56px;
}

.l-migrated .newsdetailDate {
  display: block;
  color: #333;
  font-size: 1.4rem;
}

.l-migrated .newsdetailTitle {
  display: block;
  color: #333;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin: 10px 0 20px;
}

.l-migrated .newsdetai-list__block {
  margin: 25px 0 50px 20px;
}

.l-migrated .newsdetai-list__title {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 20px;
  list-style-type: square;
}

.l-migrated .newsdetai-list__item_first {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-top: 20px;
  margin-bottom: 10px;
}

.l-migrated .newsdetai-list__item {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 10px;
}

.l-migrated .newsflex {
  display: flex;
  justify-content: space-between;
}

.l-migrated .newsflex__item:first-of-type {
  margin-right: 16px;
}

.l-migrated .topline-news {
  border-top: 1px solid #999;
  padding-top: 20px;
  margin-top: 40px;
}

.l-migrated .ls-newssmall {
  letter-spacing: -0.02em;
}

.l-migrated .ls-newssmall2 {
  letter-spacing: -0.04em;
}

.l-migrated .product {
  width: 90%;
  max-width: 960px;
  margin: 40px auto;
}

.l-migrated .productHeadbg {
  background-image: url(/assets/migrated/images/product/product-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .product-logo {
  display: inline-block;
  width: 240px;
  height: 34px;
  margin-right: 16px;
  vertical-align: bottom;
}

@media (min-width: 640px) {
  .l-migrated .product-logo {
    width: 306px;
  }
}

.l-migrated .productcontentHead {
  display: flex;
  justify-content: start;
}

.l-migrated .productcontentHead__category {
  display: inline-block;
  margin-right: 10px;
  padding: 14px 10px;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
}

@media (min-width: 640px) {
  .l-migrated .productcontentHead__category {
    margin-right: 20px;
    padding: 20px;
    font-size: 1.4rem;
  }
}

.l-migrated .productcontentHead__icon {
  display: inline-block;
  width: auto;
  height: 40px;
}

@media (min-width: 640px) {
  .l-migrated .productcontentHead__icon {
    height: 56px;
  }
}

.l-migrated .productcontentSubhead {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

@media (min-width: 640px) {
  .l-migrated .productcontentSubhead {
    flex-wrap: nowrap;
  }
}

.l-migrated .productcontentSubhead--2column {
  align-items: flex-start;
}

.l-migrated .productcontentSubhead__item {
  width: 100%;
}

@media (min-width: 640px) {
  .l-migrated .productcontentSubhead__item {
    width: 50%;
  }
}

.l-migrated .productcontentSubhead__item__title {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 2.0rem;
  letter-spacing: 0;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .productcontentSubhead__item__title {
    font-size: 1.9rem;
    line-height: 1.8;
    margin-bottom: 16px;
  }
}

@media (min-width: 960px) {
  .l-migrated .productcontentSubhead__item__title {
    margin-top: 0;
    font-size: 2.7rem;
    letter-spacing: 0.1em;
  }
}

.l-migrated .productcontentSubhead__item__title--2column {
  font-size: 2.0rem;
}

.l-migrated .productcontentSubtext {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

@media (min-width: 960px) {
  .l-migrated .productcontentSubtext {
    flex-wrap: nowrap;
  }
}

.l-migrated .productcontentSubtext__title {
  width: 100%;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}

@media (min-width: 960px) {
  .l-migrated .productcontentSubtext__title {
    width: auto;
  }
}

.l-migrated .productcontentSubtext__detail {
  margin-top: 8px;
  margin-left: 0;
  padding-top: 8px;
  padding-left: 0;
  border-top: 1px solid #ccc;
  border-left: none;
}

@media (min-width: 960px) {
  .l-migrated .productcontentSubtext__detail {
    margin-top: 0;
    margin-left: 16px;
    padding-top: 0;
    padding-left: 16px;
    border-top: none;
    border-left: 1px solid #ccc;
  }
}

.l-migrated .productcontentSubtext__detail__item {
  margin: 8px 0;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}

.l-migrated .productcontentdetail__title {
  position: relative;
  display: block;
  width: 100%;
  margin: 40px auto 0;
  padding: 20px 45px 20px 20px;
  color: #fff;
  font-size: 1.7rem;
  font-weight: bold;
  text-align: left;
  letter-spacing: 0;
  line-height: 1.7;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
}

@media (min-width: 640px) {
  .l-migrated .productcontentdetail__title {
    font-size: 2.0rem;
    letter-spacing: 0.05em;
  }
}

.l-migrated .hoverttl {
  cursor: pointer;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .hoverttl:hover {
    background: -webkit-gradient(linear, left top, right bottom, from(#64ddff), to(#1be7b4));
    background: -moz-linear-gradient(to left, #1be7b4, #64ddff);
    background: linear-gradient(to left, #1be7b4, #64ddff);
  }
}

.l-migrated .detail-2column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  transition: all 0.2s;
}

.l-migrated .detail-2column__item {
  width: 100%;
  margin: 20px 0;
}

@media (min-width: 640px) {
  .l-migrated .detail-2column__item {
    width: 47%;
    margin: 40px 0 0;
  }
}

.l-migrated .detail-2column__item__title {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .detail-2column__item__title {
    letter-spacing: 0.03em;
  }
}

.l-migrated .detail-2column__item__title--2column {
  font-size: 2.0rem;
}

.l-migrated .detail-2column__item__text {
  margin-bottom: 20px;
  font-size: 1.5rem;
  letter-spacing: 0.03em;
  line-height: 1.7;
}

.l-migrated .detail-2column__item__text--2column {
  font-size: 1.5rem;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .detail-2column__item__text--2column {
    font-size: 1.6rem;
    line-height: 1.7;
  }
}

@media (min-width: 960px) {
  .l-migrated .detail-2column__item__text--2column {
    font-size: 1.8rem;
    line-height: 1.8;
  }
}

.l-migrated .producttable {
  width: 100%;
  margin: 40px auto 20px;
  font-size: 1.5rem;
  line-height: 1.7;
  border-bottom: 1px solid #ccc;
}

.l-migrated .producttable__thead {
  background-color: #eaeaea;
}

.l-migrated .producttable__thead__text {
  text-align: center;
}

.l-migrated .producttable2 {
  font-size: 1.5rem;
  line-height: 1.7;
  border-bottom: 1px solid #ccc;
}

.l-migrated .producttable2__thead {
  background-color: #eaeaea;
}

.l-migrated .producttable2__thead__text {
  text-align: center;
}

.l-migrated .w50 {
  width: 100%;
}

@media (min-width: 960px) {
  .l-migrated .w50 {
    width: 47%;
  }
}

.l-migrated .w30 {
  width: 100%;
}

@media (min-width: 960px) {
  .l-migrated .w30 {
    width: 30%;
  }
}

.l-migrated .w65 {
  width: 100%;
}

@media (min-width: 960px) {
  .l-migrated .w65 {
    width: 65%;
  }
}

.l-migrated .productTR {
  border-top: 1px solid #ccc;
}

.l-migrated .productTD {
  padding: 10px;
  text-align: center;
  vertical-align: middle;
}

.l-migrated .productTD:first-child {
  width: 29%;
  text-align: center;
  vertical-align: middle;
  border-right: 1px solid #ccc;
}

.l-migrated .txt-left {
  text-align: left;
}

.l-migrated .product-attention {
  margin-top: 20px;
  font-size: 1.3rem;
  line-height: 1.7;
}

.l-migrated .pa-ml16 {
  margin-left: 0;
}

@media (min-width: 960px) {
  .l-migrated .pa-ml16 {
    margin-left: 16px;
  }
}

.l-migrated .komeWrap {
  position: relative;
}

.l-migrated .kome {
  position: absolute;
  top: 0;
  right: -32px;
  margin-right: 16px;
  font-size: 1.2rem;
}

.l-migrated .mark {
  width: 200px;
  margin-left: 16px;
}

.l-migrated .outline {
  border: 1px solid #ccc;
  padding: 40px;
}

.l-migrated .banner {
  width: 100%;
  margin: 20px auto 0;
  padding: 20px;
  color: #00b4e6;
  font-size: 2.0rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.7;
  text-align: center;
  background-color: #E9EDF0;
}

@media (min-width: 640px) {
  .l-migrated .banner {
    margin: 80px auto 0;
    padding: 40px;
  }
}

.l-migrated .banner__link {
  display: block;
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
}

.l-migrated .banner__link--f3 {
  max-width: 880px;
}

@media screen and (min-width: 900px) {
  .l-migrated .banner__link--f3 {
    transition: all 0.2s;
  }
  .l-migrated .banner__link--f3:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  }
}

.l-migrated .nolink {
  cursor: inherit;
}

.l-migrated .nolink img:hover {
  opacity: 1 !important;
}

.l-migrated .detailshow {
  display: block;
}

.l-migrated .detailhide {
  display: none;
}

.l-migrated .rotate {
  transition: all 0.2s;
  transform: rotate(180deg);
}

.l-migrated .caseHeadbg {
  background-image: url(/assets/migrated/images/case/case-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .casenum {
  display: inline-block;
  margin-bottom: 20px;
  padding: 10px;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  background-color: #333;
}

.l-migrated .catchdata {
  margin-top: 20px;
  padding: 20px;
  background-color: #DBDBDB;
}

.l-migrated .catchdata__name {
  margin-bottom: 8px;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
}

.l-migrated .catchdata__detail {
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.l-migrated .wrap-reverse {
  flex-wrap: wrap-reverse;
}

/*--detail------------------------------------*/
.l-migrated .casedetail {
  width: 90%;
  max-width: 960px;
  margin: 40px auto;
}

.l-migrated .casedetail__title {
  margin: 40px auto;
  color: #333;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__title {
    font-size: 2.8rem;
    letter-spacing: 0.05em;
  }
}

.l-migrated .casedetail__text {
  margin: 40px auto;
  color: #333;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__text {
    font-size: 1.6rem;
  }
}

.l-migrated .casedetail__one {
  width: 100%;
  text-align: center;
}

.l-migrated .casedetail__double {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__double {
    flex-wrap: nowrap;
    margin-bottom: 80px;
  }
}

.l-migrated .casedetail__double__item {
  width: 100%;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__double__item {
    width: 50%;
  }
}

.l-migrated .casedetail__double__item:first-child {
  margin-right: 0;
  margin-bottom: 20px;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__double__item:first-child {
    margin-right: 40px;
    margin-bottom: 0;
  }
}

.l-migrated .casedetail__double__imgWrap {
  margin: 20px;
}

.l-migrated .casedetail__double__text {
  margin: 20px;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .casedetail__double__text {
    font-size: 1.6rem;
  }
}

.l-migrated .beforeblock {
  border: 1px solid #999;
}

.l-migrated .beforeblock__title {
  width: 100%;
  padding: 20px;
  font-size: 1.8rem;
  text-align: center;
  letter-spacing: 0.03em;
  background-color: #999;
}

.l-migrated .afterblock {
  border: 1px solid #00AF84;
}

.l-migrated .afterblock__title {
  width: 100%;
  padding: 20px;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  letter-spacing: 0.03em;
  background-color: #00AF84;
}

.l-migrated .casedetailLogo {
  display: block;
  margin: 80px auto 40px;
  text-align: center;
}

.l-migrated .casedetailLogo__img {
  width: 200px;
}

.l-migrated .casedetailExample {
  width: 100vw;
  margin: 80px calc(50% - 50vw) 40px;
  padding: 20px 20px 100px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media (min-width: 640px) {
  .l-migrated .casedetailExample {
    margin: 80px calc(50% - 50vw) 80px;
  }
}

.l-migrated .casedetailExample__inner {
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}

.l-migrated .casedetailExample__inner__item {
  max-width: 480px;
}

.l-migrated .casedetailExample__inner__item_right {
  margin: 20px auto;
}

@media (min-width: 640px) {
  .l-migrated .casedetailExample__inner__item_right {
    margin: 40px 0 40px auto;
  }
}

@media (min-width: 960px) {
  .l-migrated .casedetailExample__inner__item_right {
    margin: 80px 0 80px auto;
  }
}

.l-migrated .casedetailExample__inner__item_left {
  margin: 20px auto;
}

@media (min-width: 640px) {
  .l-migrated .casedetailExample__inner__item_left {
    margin: 40px auto 40px 0;
  }
}

@media (min-width: 960px) {
  .l-migrated .casedetailExample__inner__item_left {
    margin: 80px auto 80px 0;
  }
}

.l-migrated .casedetailExample__title {
  margin-bottom: 20px;
  color: #fff;
  font-size: 2.0rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .l-migrated .casedetailExample__title {
    font-size: 2.7rem;
    letter-spacing: 0.1em;
  }
}

.l-migrated .casedetailExample__text {
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .casedetailExample__text {
    font-size: 1.6rem;
  }
}

.l-migrated .casedetailExample1 {
  background-image: url(/assets/migrated/images/case/dmc/casedmc-ex1bg.jpg);
}

.l-migrated .casedetailExample2 {
  background-image: url(/assets/migrated/images/case/dmc/casedmc-ex2bg.jpg);
}

.l-migrated .casedetailLabellist {
  display: flex;
  margin-bottom: 20px;
}

.l-migrated .casedetailLabellist__item {
  display: inline-block;
  padding: 10px;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  background: -webkit-gradient(linear, left top, right bottom, from(#00b4e6), to(#00af84));
  background: -moz-linear-gradient(to left, #00af84, #00b4e6);
  background: linear-gradient(to left, #00af84, #00b4e6);
}

.l-migrated .casedetailLabellist__item:not(:last-child) {
  margin-right: 10px;
}

@media (min-width: 640px) {
  .l-migrated .casedetailLabellist__item {
    padding: 16px;
    font-size: 1.4rem;
  }
}

.l-migrated .casedetailHowto {
  margin-top: -120px;
  margin-bottom: 40px;
  padding: 40px 20px;
  background-color: #fff;
  box-shadow: 0 3px 20px rgba(0, 0, 0, 0.1);
}

@media (min-width: 640px) {
  .l-migrated .casedetailHowto {
    margin-top: -160px;
    margin-bottom: 80px;
    padding: 80px;
  }
}

.l-migrated .casedetailHowto__title {
  margin-bottom: 40px;
  color: #333;
  font-size: 2.0rem;
  text-align: center;
  letter-spacing: 0.03em;
}

@media (min-width: 640px) {
  .l-migrated .casedetailHowto__title {
    margin-bottom: 64px;
    font-size: 2.4rem;
  }
}

.l-migrated .casedetailHowto__text {
  margin-bottom: 40px;
  font-size: 1.4rem;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .casedetailHowto__text {
    font-size: 1.6rem;
  }
}

.l-migrated .casedetailHowto__double {
  display: flex;
  justify-content: space-between;
}

.l-migrated .casedetailHowto__double__item:first-child {
  margin-right: 20px;
}

@media (min-width: 640px) {
  .l-migrated .casedetailHowto__double__item:first-child {
    margin-right: 40px;
  }
}

.l-migrated .imgcaption {
  margin-top: 10px;
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .imgcaption {
    font-size: 1.4rem;
  }
}

.l-migrated .casedetailcompany {
  display: flex;
  flex-wrap: wrap-reverse;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto 40px;
  padding: 20px;
  background-color: #efefef;
}

@media (min-width: 960px) {
  .l-migrated .casedetailcompany {
    flex-wrap: nowrap;
    margin: 0 auto 80px;
    padding: 50px;
  }
}

.l-migrated .casedetailcompany__item:last-child {
  max-width: auto;
  margin: 0 0 40px;
}

@media (min-width: 640px) {
  .l-migrated .casedetailcompany__item:last-child {
    margin: 0 0 32px;
  }
}

@media (min-width: 960px) {
  .l-migrated .casedetailcompany__item:last-child {
    max-width: 800px;
    margin: 0 0 0 40px;
  }
}

.l-migrated .casedetailcompany__title {
  margin-bottom: 20px;
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
}

.l-migrated .casedetailcompany__subtitle {
  margin-bottom: 40px;
  color: #333;
  font-size: 1.6rem;
  font-weight: bold;
}

.l-migrated .casedetailcompany__text {
  font-size: 1.3rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.l-migrated .casedetailcompany__list {
  margin-bottom: 20px;
}

.l-migrated .casedetailcompany__list__title {
  display: block;
  color: #333;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.l-migrated .casedetailcompany__list__text {
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.l-migrated .aboutHeadbg {
  background-image: url(/assets/migrated/images/about/about-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .aboutpage-inner {
  width: 100%;
  max-width: 960px;
  margin: 40px auto 80px;
}

.l-migrated .aboutBlock {
  margin-bottom: 40px;
}

.l-migrated .aboutFlex {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 0;
  border-top: 1px solid #ccc;
}

@media (min-width: 640px) {
  .l-migrated .aboutFlex {
    flex-wrap: nowrap;
    padding: 40px 0 0 0;
  }
}

.l-migrated .aboutFlex__left {
  width: 100%;
  margin-bottom: 20px;
  margin-right: 0;
}

@media (min-width: 640px) {
  .l-migrated .aboutFlex__left {
    width: 30%;
    min-width: 246px;
    margin-bottom: 0;
    margin-right: 5%;
  }
}

.l-migrated .aboutlist {
  width: 100%;
  color: #333;
}

.l-migrated .aboutlist__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 0;
  font-size: 1.6rem;
  line-height: 1.7;
  border-bottom: 1px solid #ccc;
}

.l-migrated .aboutlist__item:first-child {
  border-top: 1px solid #ccc;
}

@media (min-width: 640px) {
  .l-migrated .aboutlist__item {
    flex-wrap: nowrap;
  }
}

.l-migrated .aboutlist__item__name {
  width: 100%;
  margin-bottom: 10px;
  margin-right: 20px;
  font-size: 1.4rem;
}

@media (min-width: 640px) {
  .l-migrated .aboutlist__item__name {
    width: 20%;
    margin-bottom: 0;
    font-size: 1.6rem;
  }
}

.l-migrated .company-ttl {
  max-width: 1260px;
  margin: 0 auto;
  padding: 20px 30px;
  color: #fff;
  font-size: 2.0rem;
  font-weight: bold;
}

.l-migrated .company-ttl-bg {
  margin-top: 63px;
  width: 100%;
  background-color: #727277;
}

@media screen and (min-width: 1100px) {
  .l-migrated .company-ttl-bg {
    margin-top: 80px;
  }
}

.l-migrated .company-top-info {
  padding: 32px 20px 40px;
  font-size: 1.6rem;
  text-align: left;
  line-height: 1.7;
  background-color: #efefef;
  border-bottom: 1px solid #727277;
}

@media (min-width: 1280px) {
  .l-migrated .company-top-info {
    text-align: center;
  }
}

.l-migrated .company-subttl {
  margin-bottom: 40px;
  color: #888;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.2em;
}

.l-migrated .company-subttl-caption {
  margin-bottom: 10px;
  color: #888;
  font-size: 2.0rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: 0.08em;
}

.l-migrated .company-text {
  color: #888;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
}

.l-migrated .company-list-ttl {
  color: #333;
  margin-top: 20px;
  font-size: 1.8rem;
  font-weight: normal;
}

.l-migrated .gugen-logo {
  margin: 20px;
}

@media (min-width: 640px) {
  .l-migrated .gugen-logo {
    margin: 80px 0;
  }
}

@media (min-width: 1280px) {
  .l-migrated .gugen-logo {
    margin: 80px 40px;
  }
}

.l-migrated .address {
  width: 100%;
}

.l-migrated .address__title {
  margin-bottom: 10px;
  font-size: 2.0rem;
  font-weight: normal;
  letter-spacing: 0.05em;
}

.l-migrated .address__text {
  margin-top: 5px;
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.l-migrated .address__tel__name {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

.l-migrated .address__tel__num {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

.l-migrated .pagescroll-margin {
  margin-top: -74px;
  padding-top: 74px;
}

.l-migrated .text-right-last {
  margin-left: auto;
  margin-right: 0;
  width: 208px;
}

/*f3*/
.l-migrated .f3-page-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 960px;
  max-width: 100%;
  margin: 63px 0 0;
}

@media screen and (min-width: 800px) {
  .l-migrated .f3-page-ttl {
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 1100px) {
  .l-migrated .f3-page-ttl {
    margin: 80px auto 0;
  }
}

.l-migrated .f3-page-Headbg {
  background-image: url(/assets/migrated/images/f3/falconnect-top-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.l-migrated .f3page {
  max-width: 960px;
  margin: 40px 20px;
  padding: 0;
}

@media screen and (min-width: 961px) {
  .l-migrated .f3page {
    margin: 40px auto;
    padding: 0 20px;
  }
}

@media screen and (min-width: 1200px) {
  .l-migrated .f3page {
    margin: 100px auto 80px;
    padding: 0;
  }
}

.l-migrated .f3page-inner {
  width: 100%;
  max-width: 1200px;
  margin: 20px auto;
  padding: 0;
}

@media screen and (min-width: 641px) {
  .l-migrated .f3page-inner {
    padding: 0 24px;
  }
}

.l-migrated .f3page-inner__text {
  margin-top: 20px;
  margin-bottom: 20px;
  color: #323232;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

@media screen and (min-width: 641px) {
  .l-migrated .f3page-inner__text {
    margin-top: 40px;
    font-size: 1.8rem;
    line-height: 1.9;
  }
}

.l-migrated .f3pageinner-ttl {
  position: relative;
  width: 100%;
  padding: 0 0 2px 10px;
  margin-bottom: 10px;
  color: #323232;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #82dbea;
  border-left: 4px solid #82dbea;
}

@media screen and (min-width: 641px) {
  .l-migrated .f3pageinner-ttl {
    font-size: 2.6rem;
    padding: 0 0 2px 20px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .f3pageinner-ttl {
    font-size: 3.6rem;
  }
}

.l-migrated .f3pageinner-ttl:before {
  position: absolute;
  left: 2px;
  top: 0;
  content: "";
  height: 38px;
  display: inline-block;
  border-left: 1px solid #82dbea;
  margin-bottom: 1px;
}

@media screen and (min-width: 641px) {
  .l-migrated .f3pageinner-ttl:before {
    height: 40px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .f3pageinner-ttl:before {
    height: 57px;
  }
}

.l-migrated .f3pageinner-ttl--sp2:before {
  height: 77px;
}

@media screen and (min-width: 641px) {
  .l-migrated .f3pageinner-ttl--sp2:before {
    height: 40px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .f3pageinner-ttl--sp2:before {
    height: 57px;
  }
}

.l-migrated .f3-inner-flex {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.l-migrated .f3-inner-flex p:first-child {
  margin-right: 20px;
}

.l-migrated .title-sublabel {
  position: absolute;
  top: 140%;
  right: 0;
  padding: 1px 10px;
  color: #71737e;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  font-weight: bold;
  border: 1px solid #71737e;
  -ms-transform: translateX(0) translateY(-50%);
  -moz-transform: translateX(0) translateY(-50%);
  -webkit-transform: translateX(0) translateY(-50%);
  transform: translateX(0) translateY(-50%);
}

@media screen and (min-width: 641px) {
  .l-migrated .title-sublabel {
    top: 50%;
    padding: 4px 10px;
    font-size: 1.6rem;
  }
}

.l-migrated .f3youto-flex {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  margin-top: 40px;
}

@media screen and (min-width: 961px) {
  .l-migrated .f3youto-flex {
    flex-direction: row;
  }
}

.l-migrated .f3youto-flex__item {
  margin-bottom: 30px;
}

@media screen and (min-width: 961px) {
  .l-migrated .f3youto-flex__item {
    margin-bottom: 0;
  }
}

.l-migrated .f3youto-ttl {
  color: #323232;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 2.2rem;
  margin-bottom: 16px;
}

.l-migrated .f3youto-list {
  margin-left: 20px;
}

.l-migrated .f3youto-list__item {
  color: #323232;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 10px;
}

.l-migrated .ls-big {
  letter-spacing: 0;
}

@media screen and (min-width: 641px) {
  .l-migrated .ls-big {
    letter-spacing: 0.3em;
  }
}

.l-migrated .contactHeadbg {
  background-image: url(/assets/migrated/images/contact-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .contact {
  width: 90%;
  margin: 40px auto 80px;
}

@media (min-width: 641px) {
  .l-migrated .contact {
	  max-width: 960px;
    margin: 80px auto 80px;
  }
}

.l-migrated .contactform {
  width: 100%;
  max-width: 680px;
  margin: 40px auto 80px;
}

@media (min-width: 641px) {
  .l-migrated .contactform {
	  width: 90%;
    margin: 80px auto 80px;
  }
}

/* validationEngineの赤バブル（絶対配置・入力欄の直下に表示）が次のラベルと重ならないよう固定で余白を確保。
   先頭ラベルのみ元の余白に戻す。 */
.l-migrated .contactform__label {
  display: inline-block;
  color: #4a4a4a;
  font-size: 1.4rem;
  margin: 44px 0 0;
}
.l-migrated .contactform__label:first-of-type {
  margin-top: 10px;
}

.l-migrated .contactform__input {
  width: 100%;
  font-size: 1.4rem;
  margin: 5px auto 0;
}

.l-migrated .contactform__input2 {
  width: 100%;
  font-size: 1.4rem;
  margin: 5px auto 5px;
}

.l-migrated .contactform__number {
  width: 80px;
  font-size: 1.4rem;
  margin: 5px 5px 0 0;
}

/* 台数欄はスピナー（上下矢印）を表示する（.l-migrated input[type=number] の appearance:none を打ち消す） */
.l-migrated input[type="number"].contactform__number {
  -webkit-appearance: auto;
  -moz-appearance: number-input;
  appearance: auto;
}

.l-migrated input[type="number"].contactform__number::-webkit-outer-spin-button,
.l-migrated input[type="number"].contactform__number::-webkit-inner-spin-button {
  -webkit-appearance: inner-spin-button;
  opacity: 1;
  margin: 0;
}

.l-migrated .contactform__number2 {
  display: inline-block;
  color: #4a4a4a;
  font-size: 1.4rem;
  margin: 0 0 0;
}

.l-migrated .contactform__select {
  font-size: 1.4rem;
  margin: 5px auto 0;
}

.l-migrated .contactform__textarea {
  width: 100%;
  font-size: 1.4rem;
  margin: 10px 0 10px;
  height: 100px;
}

.l-migrated .contactform__privacy {
  width: 100%;
  height: 120px;
  margin: 10px 0 16px;
  padding: 8px;
  overflow-y: auto;
  border: 1px solid #b3b3b3;
  background-color: #eeeeee;
}

.l-migrated .contactform__privacy__text {
  font-size: 1.4rem;
  text-align: left;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin: 0;
}

/* 同意チェックボックスのバブル（絶対配置）がボタンと重ならないよう固定で上余白を確保（ラベル側と同じ理由） */
.l-migrated .contactform__button {
  width: 100%;
  margin: 44px auto 24px;
}

.l-migrated .contactform__button__btn {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  /* <button>→<a>化で失われた中央寄せを復元 */
  text-align: center;
  margin: 0 auto 40px;
  padding: 16px;
  background-color: #ef9a01;
  border-radius: 5px;
  transition: all 0.2s;
  cursor: pointer;
}

/* 送信中（二重送信防止でdisabled化）の見た目：グレーアウトして押せないことを明示 */
.l-migrated .contactform__button__btn:disabled {
  background-color: #ccc;
  cursor: not-allowed;
  opacity: 0.7;
}

@media (min-width: 640px) {
  .l-migrated .contactform__button__btn {
    max-width: 440px;
    font-size: 1.6rem;
  }
  .l-migrated .contactform__button__btn:hover {
    background-color: #ffc04a;
  }
}

/* ===== 会員登録フォーム（regist）追加スタイル ===== */

/* サーバ側バリデーションエラー：フィールド紐付き分は showPrompt の赤バブルに寄せる（JS有効時は data-prompt-target で hide）。
   フィールドレス分（auth_key_mail/regist_notice）とno-JSフォールバックはこのテキスト表示のまま。 */
.l-migrated .contactform__error {
  color: #ee0101;
  font-size: 1.4rem;
  margin: 4px 0 12px;
}
.l-migrated .contactform__error[role="alert"] {
  text-align: center;
}

/* 「戻る」等の副ボタン：base の contactform__button__btn を継承し、白地・枠線グレーで上書き（次へと同幅・中央寄せ） */
.l-migrated .contactform__button__btn--back {
  color: #333;
  background-color: #fff;
  border: 1px solid #999;
}

/* 戻る/次へ の2ボタン：SP は縦積みでボタン間を詰める（base 40px → 12px） */
.l-migrated .contactform__button--nav .contactform__button__btn {
  margin: 0 auto 12px;
}

/* 入力内容確認リスト：罫線区切りのテーブル風（項目名｜値） */
.l-migrated .confirmList {
  margin: 0 0 24px;
}
.l-migrated .confirmList__row {
  display: flex;
  padding: 14px 4px;
  border-bottom: 1px solid #ddd;
}
.l-migrated .confirmList__row:first-child {
  border-top: 1px solid #ddd;
}
.l-migrated .confirmList__label {
  flex: 0 0 8em;
  font-weight: 600;
  font-size: 1.6rem;
}
.l-migrated .confirmList__value {
  flex: 1;
  font-size: 1.6rem;
  word-break: break-all;
}

@media (min-width: 640px) {
  /* 副ボタン hover（base の橙 hover を打ち消す） */
  .l-migrated .contactform__button__btn--back:hover {
    background-color: #f5f5f5;
  }
  /* 戻る/次へ：PC は横並び（戻る左・次へ右）。上の入力項目との間を広げる */
  .l-migrated .contactform__button--nav {
    display: flex;
    flex-direction: row-reverse;
    gap: 16px;
    max-width: 456px;
    margin: 72px auto 24px;
  }
  .l-migrated .contactform__button--nav .contactform__button__btn {
    flex: 1;
    margin: 0;
  }
  /* 単一ボタン（次へ/登録する）：PC で上の入力項目との間を広げる（form・confirm 用） */
  .l-migrated .contactform__button--gap {
    margin-top: 72px;
  }
}

.l-migrated .contactform__margin {
  margin: 40px 0 0;
}

.l-migrated .unitsOfMachine {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.l-migrated .privacycheckBox {
  width: auto;
  position: relative;
}

.l-migrated .privacycheckBox__check {
  position: absolute;
  display: inline-block;
  margin-top: 5px;
}

.l-migrated .privacycheckBox__text {
  width: auto;
  display: inline-block;
  font-size: 1.4rem;
  padding-left: 27px;
  position: relative;
  margin-top: 3px;
  margin-bottom: 16px;
  cursor: pointer;
}

@media (min-width: 640px) {
  .l-migrated .privacycheckBox__text {
    font-size: 1.6rem;
    margin-bottom: 32px;
  }
}

/* 機種チェック(minCheckbox)の赤バブルが次項目のラベル・チェックボックスと重ならないよう固定で余白を確保 */
.l-migrated .checkbox-div {
  display: flex;
  flex-direction: column;
  margin-top: 5px;
  margin-bottom: 15px;
}

.l-migrated .checkbox-div__text {
  width: auto;
  display: inline-block;
  font-size: 1.4rem;
  padding-left: 20px;
  position: relative;
  margin-bottom: 0;
  line-height: 1.8;
  cursor: pointer;
}

.l-migrated .checkbox-div__caution {
  width: auto;
  display: block;
  font-size: 1.4rem;
  color: #e60012;
  padding-left: 20px;
  margin-bottom: 0;
  line-height: 1.6;
}

.l-migrated .moviecamp__label {
  font-size: 1.4rem;
  cursor: pointer;
}

.l-migrated .stepBar {
  display: flex;
  max-width: 400px;
  position: relative;
  margin: 20px auto;
  text-align: center;
}

.l-migrated .stepBar li {
  font-size: 12px;
  list-style: none;
  position: relative;
  width: 20%;
}

.l-migrated .stepBar li:after {
  background: #d0e5eb;
  content: "";
  width: calc(100% - 24px);
  height: 4px;
  position: absolute;
  left: calc(-50% + 12px);
  top: 10px;
}

.l-migrated .stepBar li:first-child:after {
  display: none;
}

.l-migrated .stepBar li span {
  background: #d0e5eb;
  color: #ffffff;
  display: inline-block;
  height: 24px;
  margin-bottom: 5px;
  line-height: 24px;
  width: 24px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

.l-migrated .stepBar .visited:after {
  background: #00b4e6;
}

.l-migrated .stepBar .visited span {
  background: #00b4e6;
}

.l-migrated .membertopHead {
  width: 100%;
  max-width: 960px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin: 40px auto;
}

.l-migrated .membertopHead__name {
  width: 100%;
  color: #333;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

@media (min-width: 960px) {
  .l-migrated .membertopHead__name {
    width: auto;
  }
}

/* ヘッダーのボタン群（ログアウト｜会員情報編集｜パスワード変更）。
   member/index 専用にコンテナ限定で上書きし、SP でも3ボタンを1列に収める。
   グローバルの .memberbtn は他ページでも使用のため改変しない。 */
.l-migrated .membertopHead__btn {
  display: flex;
  width: 100%;
}

.l-migrated .membertopHead__btn__logout {
  margin: 0;
  flex: 1;
  min-width: 0;
}

.l-migrated .membertopHead__btn > p {
  margin: 0 0 0 10px;
  flex: 1;
  min-width: 0;
}

.l-migrated .membertopHead__btn .memberbtn {
  width: 100%;
  margin: 20px 0 0;
  padding: 12px 2px;
  font-size: 1.2rem;
}

/* ログアウトは <button>。既定を打ち消して .memberbtn（緑）と見た目を統一 */
.l-migrated .membertopHead__btn .memberbtn--logout {
  border: none;
  cursor: pointer;
  font-family: inherit;
  -webkit-appearance: none;
  appearance: none;
}

@media (min-width: 640px) {
  .l-migrated .membertopHead__btn .memberbtn {
    padding: 16px;
    font-size: 1.4rem;
  }
}

@media (min-width: 960px) {
  .l-migrated .membertopHead {
    flex-wrap: nowrap;
  }
  .l-migrated .membertopHead__btn {
    width: auto;
  }
  .l-migrated .membertopHead__btn__logout,
  .l-migrated .membertopHead__btn > p {
    flex: 0 0 auto;
  }
  .l-migrated .membertopHead__btn .memberbtn {
    width: 220px;
    margin: 0;
    padding: 20px;
  }
}

/* 会員情報編集ページ：退会導線をフォーム直下に置くため、フォームの下余白（既定80px）を詰める */
.l-migrated .contactform--member {
  margin-bottom: 24px;
}

/* フォーム下の退会導線（補助的リンクなので小さめ・中央、下にフッターとの余白を確保） */
.l-migrated .member-withdraw {
  margin: 0 0 80px;
  text-align: center;
  font-size: 1.3rem;
}

/* 「こちら」も地の文字とサイズを揃える（.inlinelink 既定 1.6rem を上書き） */
.l-migrated .member-withdraw .inlinelink {
  font-size: inherit;
}

.l-migrated .memberbtn {
  position: relative;
  display: block;
  width: 140px;
  margin: 20px auto 0;
  padding: 16px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  background-color: #00af84;
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .memberbtn {
    width: 160px;
  }
  .l-migrated .memberbtn:hover {
    background-color: #1be7b4;
  }
}

@media (min-width: 960px) {
  .l-migrated .memberbtn {
    width: 220px;
    margin: 0 auto;
    padding: 20px;
  }
}

.l-migrated .membertopBlock {
  width: 100%;
  max-width: 960;
  margin: 0 auto;
}

.l-migrated .membertopBlock__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.l-migrated .membertopBlock__inner__item {
  width: 100%;
}

@media (min-width: 640px) {
  .l-migrated .membertopBlock__inner__item {
    width: 49%;
    margin-bottom: 16px;
  }
}

.l-migrated .memberpagebtn {
  position: relative;
  width: 100%;
  display: block;
  margin-bottom: 20px;
  padding: 20px;
  color: #333;
  font-size: 1.4rem;
  text-align: left;
  letter-spacing: 0.05em;
  border: 1px solid #999;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .memberpagebtn {
    margin-bottom: 0;
    padding: 20px;
  }
  .l-migrated .memberpagebtn:hover {
    color: #fff;
    background-color: #333;
    border: 1px solid #333;
  }
}

/* === マイページTOP: お問い合わせ導線追加に伴う調整（移行カスタム） === */
/* 見出し（資料ダウンロード / お問い合わせ）：テキスト幅の短い下線 */
.l-migrated .membertopBlock__title {
  display: inline-block;
  margin: 0 0 16px;
  padding-bottom: 6px;
  color: #333;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  border-bottom: 2px solid #333;
}
/* 列内のボックスはSPでは memberpagebtn の margin-bottom:20px で間隔が出るが、
   PC(≥640px)では memberpagebtn が margin-bottom:0 になるため、縦積み用に余白を補う。
   セレクタは membertopBlock__inner__item 配下に限定（member/index 専用・他ページ無影響）。 */
@media (min-width: 640px) {
  .l-migrated .membertopBlock__inner__item .memberpagebtn {
    margin-bottom: 16px;
  }
  .l-migrated .membertopBlock__inner__item .memberpagebtn:last-child {
    margin-bottom: 0;
  }
}

.l-migrated .memberfoot {
  display: flex;
  justify-content: flex-end;
  margin: 40px auto;
  text-align: right;
}

.l-migrated .memberfoot p:first-child {
  margin-right: 16px;
}

.l-migrated .importancebtn {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  background-color: #BE1212;
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .importancebtn {
    width: 220px;
  }
  .l-migrated .importancebtn:hover {
    background-color: #ff7777;
  }
}

.l-migrated .returnbtn {
  position: relative;
  display: block;
  width: 100%;
  margin: 20px auto;
  padding: 20px;
  color: #333;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  border: 1px solid #999;
  z-index: 10;
  transition: all 0.2s;
}

@media (min-width: 640px) {
  .l-migrated .returnbtn {
    width: 220px;
  }
  .l-migrated .returnbtn:hover {
    color: #fff;
    background-color: #333;
    border: 1px solid #333;
  }
}

.l-migrated .errormessage {
  width: 100%;
  display: block;
  margin: 80px auto 0;
  color: #BE1212;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}

.l-migrated .mb120 {
  margin-bottom: 120px;
}

.l-migrated .partner-page {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 63px;
  padding-left: 20px;
  height: 240px;
}

@media screen and (min-width: 1100px) {
  .l-migrated .partner-page {
    height: 280px;
    margin-top: 80px;
    padding-left: 0;
    align-items: flex-end;
  }
}

.l-migrated .partner-page__title {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  color: #fff;
  font-size: 4.8rem;
  text-align: left;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 900;
  transform: translateY(4px);
}

@media screen and (min-width: 641px) {
  .l-migrated .partner-page__title {
    font-size: 6.0rem;
    letter-spacing: 0.1em;
  }
}

.l-migrated .partnerHeadbg {
  background-image: url(/assets/migrated/images/partner/partner-header-sm.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 641px) {
  .l-migrated .partnerHeadbg {
    background-image: url(/assets/migrated/images/partner/partner-header.jpg);
  }
}

.l-migrated .partnerpageinner-ttl {
  position: relative;
  width: calc(100% - 40px);
  padding: 0 0 2px 10px;
  margin: 0 20px 48px 20px;
  color: #323232;
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
  border-bottom: 1px solid #82dbea;
  border-left: 4px solid #82dbea;
}

@media screen and (min-width: 641px) {
  .l-migrated .partnerpageinner-ttl {
    font-size: 2.6rem;
    padding: 0 0 2px 20px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .partnerpageinner-ttl {
    font-size: 2.8rem;
  }
}

@media screen and (min-width: 961px) {
  .l-migrated .partnerpageinner-ttl {
    width: 100%;
    margin: 0 0 48px 0;
  }
}

.l-migrated .partnerpageinner-ttl:before {
  position: absolute;
  left: 2px;
  top: 0;
  content: "";
  height: 62px;
  display: inline-block;
  border-left: 1px solid #82dbea;
  margin-bottom: 1px;
}

@media screen and (min-width: 641px) {
  .l-migrated .partnerpageinner-ttl:before {
    height: 34px;
  }
}

@media screen and (min-width: 880px) {
  .l-migrated .partnerpageinner-ttl:before {
    height: 36px;
  }
}

.l-migrated .partner-top {
  width: 100%;
  max-width: 960px;
  margin: 40px auto 0;
  padding: 0 20px;
}

@media screen and (min-width: 641px) {
  .l-migrated .partner-top {
    margin: 120px auto 40px;
  }
}

.l-migrated .partnerbtn {
  display: block;
  width: 100%;
  height: 60px;
  margin: 48px auto 0;
  color: #fff;
  font-size: 1.8rem;
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
  text-align: center;
  line-height: 57px;
  border-radius: 8px;
  border: 1px solid #50525b;
  background-color: #50525b;
  z-index: 10;
  transition: all 0.2s;
  transform: translate(0, -50%);
}

.l-migrated .partnerbtn img:last-child {
  display: none;
}

@media screen and (min-width: 641px) {
  .l-migrated .partnerbtn {
    width: 400px;
    color: #50525b;
    border: 1px solid #50525b;
    background-color: #fff;
  }
  .l-migrated .partnerbtn img:last-child {
    display: block;
  }
  .l-migrated .partnerbtn:hover {
    color: #fff;
    background-color: #50525b;
  }
  .l-migrated .partnerbtn:hover img:last-child {
    display: none;
  }
}

.l-migrated .partner-arrowicon-smallbtn {
  width: 20px;
  position: absolute;
  top: 50%;
  right: 5px;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

@media screen and (min-width: 640px) {
  .l-migrated .partner-arrowicon-smallbtn {
    width: 18px;
    right: 0;
  }
}

.l-migrated .partner-tab {
  display: none;
  width: 100%;
  max-width: 960px;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: nowrap;
  margin: 100px auto 0;
  border-bottom: 3px solid #00afcc;
}

.l-migrated .partner-tab--bottom {
  align-items: flex-start;
  border-top: 3px solid #00afcc;
  border-bottom: none;
}

@media screen and (min-width: 961px) {
  .l-migrated .partner-tab {
    display: flex;
  }
}

.l-migrated .partner-tab__item {
  width: 25%;
}

.l-migrated .partner-tab__item:not(:last-child) {
  margin-right: 10px;
}

.l-migrated .partner-tab__link {
  display: inline-block;
  width: 100%;
  padding: 9px 0;
  color: #fff;
  font-size: 2.0rem;
  line-height: 1.3;
  font-feature-settings: "palt";
  font-family: "NotoSansJP", 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 100;
  text-align: center;
  transition: all 0.2s;
  background-color: #dcdcdc;
  border-radius: 12px 12px 0 0;
}

.l-migrated .partner-tab__link--active {
  padding: 14px 0;
  background-color: #00afcc;
}

.l-migrated .partner-tab__link--bottom {
  border-radius: 0 0 12px 12px;
}

.l-migrated .partner-tab__link:hover {
  cursor: pointer;
}

.l-migrated .partnercategory-smbtn {
  position: relative;
  display: block;
  width: calc(100% - 40px);
  height: 95px;
  line-height: 95px;
  margin: 0 auto 40px;
  padding-right: 30px;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  background-color: #00afcc;
  border-radius: 14px;
}

@media screen and (min-width: 961px) {
  .l-migrated .partnercategory-smbtn {
    display: none;
  }
}

.l-migrated .arrowicontop-smallbtn {
  width: 20px;
  position: absolute;
  top: 50%;
  right: 5px;
  -ms-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
  transform: translateX(-50%) translateY(-50%) rotate(-90deg);
}

@media screen and (min-width: 640px) {
  .l-migrated .arrowicontop-smallbtn {
    width: 14px;
    right: 10px;
  }
}

.l-migrated .rotatearrow-categorybtn {
  -ms-transform: translateX(-50%) translateY(-50%) rotate(90deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(90deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
  transform: translateX(-50%) translateY(-50%) rotate(90deg);
}

.l-migrated .mwidth960 {
  width: 100%;
  max-width: 960px;
  margin: 60px auto;
}

.l-migrated .partner-subtitle {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 0 20px;
}

@media screen and (min-width: 961px) {
  .l-migrated .partner-subtitle {
    padding: 0;
  }
}

.l-migrated .partner-block {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 20px;
}

@media screen and (min-width: 961px) {
  .l-migrated .partner-block {
    padding: 0;
  }
}

.l-migrated .partner-block__item {
  display: block;
  margin-bottom: 10px;
  padding: 16px;
  border: 1px solid #f0f0f0;
  border-radius: 8px;
  pointer-events: none;
  width: calc(50.8% - 10px);
}

.l-migrated .partner-block__item:not(:nth-child(3n)) {
  margin-right: 0;
}

.l-migrated .partner-block__item:not(:nth-child(2n)) {
  margin-right: 10px;
}

@media screen and (min-width: 641px) {
  .l-migrated .partner-block__item {
    width: calc(33.6% - 10px);
  }
  .l-migrated .partner-block__item:not(:nth-child(2n)) {
    margin-right: 0;
  }
  .l-migrated .partner-block__item:not(:nth-child(3n)) {
    margin-right: 10px;
  }
}

.l-migrated .partner-block__item__img {
  position: relative;
}

.l-migrated .partner-block__company {
  color: #323232;
  font-size: 1.4rem;
  line-height: 1.5;
}

.l-migrated .partner-block__text1 {
  margin-top: 0;
  color: #323232;
  font-size: 1.4rem;
  line-height: 1.5;
}

@media screen and (min-width: 641px) {
  .l-migrated .partner-block__text1 {
    margin-top: 8px;
    font-size: 1.6rem;
  }
}

.l-migrated .partner-block__text2 {
  color: #323232;
  font-size: 1.4rem;
  line-height: 1.5;
}

@media screen and (min-width: 641px) {
  .l-migrated .partner-block__text2 {
    font-size: 1.6rem;
  }
}

.l-migrated .attention-smalltext {
  position: relative;
  display: inline-block;
  font-size: 1.1rem;
  line-height: 1.2;
  margin-top: 5px;
  margin-left: 11px;
}

.l-migrated .attention-smalltext::before {
  position: absolute;
  content: "※";
  display: inline-block;
  transform: translateX(-11px);
}

.l-migrated .label--modbus {
  display: block;
  margin-top: 16px;
  padding: 8px 12px;
  color: #00AF84;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  border: 1px solid #00AF84;
}

.l-migrated .label--modbus2 {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  padding: 8px 12px;
  color: #00AF84;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  border: 1px solid #00AF84;
  border-radius: 16px;
}

@media screen and (max-width: 640px) {
  .l-migrated .label--modbus2 {
    padding: 4px 8px;
    font-size: 1.1rem;
  }
}

.l-migrated .label--free {
  position: absolute;
  right: 0;
  bottom: -32px;
  display: block;
  padding: 8px 12px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  background-color: #00AF84;
  border-radius: 50px;
}

@media screen and (max-width: 650px) {
  .l-migrated .label--free {
    bottom: -24px;
    padding: 4px 8px;
    font-size: 1.1rem;
  }
}

.l-migrated .p-detail {
  pointer-events: initial;
}

.l-migrated .p-detail:hover {
  background-color: #e5ebf0;
}

.l-migrated .partnerdetail-btn {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 10px;
  padding: 12px 8px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  background-color: #00afcc;
  border-radius: 8px;
}

@media screen and (min-width: 641px) {
  .l-migrated .partnerdetail-btn {
    font-size: 1.6rem;
  }
}

/*--detail------------------------------------*/
.l-migrated .partner-category {
  width: 90%;
  max-width: 960px;
  margin: 20px auto 60px;
  color: #333;
  font-size: 1.2rem;
  text-align: left;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .partner-category {
    font-size: 1.4rem;
  }
}

.l-migrated .partnerdetail {
  width: 90%;
  max-width: 880px;
  margin: 40px auto;
}

.l-migrated .partnerdetail__title {
  margin: 40px auto;
  color: #333;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__title {
    font-size: 2.8rem;
    letter-spacing: 0.05em;
  }
}

.l-migrated .partnerdetail__subtitle {
  margin: 40px auto 20px;
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__subtitle {
    font-size: 2.2rem;
    letter-spacing: 0.05em;
  }
}

.l-migrated .partnerdetail__text {
  margin: 40px auto;
  color: #333;
  font-size: 1.4rem;
  text-align: left;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__text {
    font-size: 1.6rem;
  }
}

.l-migrated .partnerdetail__one {
  width: 100%;
  text-align: center;
}

.l-migrated .partnerdetail__double {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__double {
    flex-wrap: nowrap;
    margin-bottom: 80px;
  }
}

.l-migrated .partnerdetail__double__item {
  width: 100%;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__double__item {
    width: 50%;
  }
}

.l-migrated .partnerdetail__double__item:first-child {
  margin-right: 0;
  margin-bottom: 20px;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__double__item:first-child {
    margin-right: 40px;
    margin-bottom: 0;
  }
}

.l-migrated .partnerdetail__double__imgWrap {
  margin: 20px;
}

.l-migrated .partnerdetail__double__text {
  margin: 20px;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail__double__text {
    font-size: 1.6rem;
  }
}

.l-migrated .partnerdetail-table {
  width: 100%;
  max-width: 880px;
  margin: 80px auto 64px;
  color: #333;
  font-size: 1.4rem;
  text-align: left;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .partnerdetail-table {
    width: 90%;
    font-size: 1.6rem;
  }
}

.l-migrated .partnerdetail-table__title {
  margin: 20px auto;
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
}

.l-migrated .partnerdetail-table__table {
  width: 100%;
  border: 1px solid #333;
}

.l-migrated .partnerdetail-table__table thead {
  color: #fff;
}

.l-migrated .partnerdetail-table__table th {
  padding: 8px;
  vertical-align: middle;
  border: 1px solid #333;
}

.l-migrated .partnerdetail-table__table td {
  padding: 8px;
  vertical-align: middle;
  border: 1px solid #333;
}

.l-migrated .thead-bg {
  background-color: #999;
}

.l-migrated .th-bg {
  background-color: #dfdfdf;
}

.l-migrated #category1-show {
  display: block;
}

.l-migrated .category-show {
  display: block;
}

@media screen and (min-width: 961px) {
  .l-migrated .category-show {
    display: none;
  }
}

/*--login------------------------*/
.l-migrated .memberHeadbg {
  background-image: url(/assets/migrated/images/member/member-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .loginform {
  width: 100%;
  max-width: 440px;
  margin: 40px auto 20px;
}

@media (min-width: 640px) {
  .l-migrated .loginform {
    margin: 80px auto 20px;
  }
}

.l-migrated .loginform__label {
  display: inline-block;
  color: #4a4a4a;
  font-size: 1.6rem;
}

.l-migrated .loginform__input {
  width: 100%;
  font-size: 1.6rem;
  margin: 10px auto 20px;
}

/* フィールド紐付き分（data-prompt-target 付き）は showPrompt の赤バブルに寄せる（JS有効時は hide）。
   フィールドレス分（role="alert"）とno-JSフォールバックはこのテキスト表示のまま。
   contactform__error と同様、text-align は role="alert" の場合のみに限定する。 */
.l-migrated .loginform__error {
  color: #ee0101;
  font-size: 1.4rem;
  margin: 4px 0 12px;
}
.l-migrated .loginform__error[role="alert"] {
  text-align: center;
  margin: 16px 0 12px;
}

.l-migrated .loginform__success {
  color: #333;
  font-size: 1.4rem;
  text-align: center;
  margin: 4px 0 12px;
}

.l-migrated .loginform__button {
  width: 100%;
  margin: 24px auto;
}

.l-migrated .loginform__button__btn {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  /* <button>→<a>化で失われた中央寄せを復元 */
  text-align: center;
  margin: 0 auto 40px;
  padding: 16px;
  background-color: #ef9a01;
  border-radius: 5px;
  transition: all 0.2s;
  cursor: pointer;
}

@media (min-width: 640px) {
  .l-migrated .loginform__button__btn {
    max-width: 440px;
    font-size: 1.6rem;
  }
  .l-migrated .loginform__button__btn:hover {
    background-color: #ffc04a;
  }
}

.l-migrated .loginBlock {
  width: 100%;
  max-width: 440px;
  margin: 0 auto 40px;
}

@media (min-width: 640px) {
  .l-migrated .loginBlock {
    margin: 0 auto 80px;
  }
}

.l-migrated .loginBlock__text {
  color: #333;
  font-size: 1.6rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin: 24px auto 20px;
}

@media (min-width: 640px) {
  .l-migrated .loginBlock__text {
    margin: 48px auto 20px;
  }
}

.l-migrated .loginform__remember {
  display: inline-block;
  width: auto;
  position: relative;
}

.l-migrated .loginform__remember input {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  margin-top: 5px;
}

.l-migrated .loginform__remember span {
  width: auto;
  display: inline-block;
  font-size: 1.4rem;
  padding-left: 27px;
  position: relative;
  margin-top: 3px;
  cursor: pointer;
}

@media (min-width: 640px) {
  .l-migrated .loginform__remember span {
    font-size: 1.6rem;
  }
}

/*--regist------------------------*/
.l-migrated .registHeadbg {
  background-image: url(/assets/migrated/images/join-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

/*--privacy------------------*/
.l-migrated .privacyHeadbg {
  background-image: url(/assets/migrated/images/product/product-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

/*--sitemap------------------*/
.l-migrated .sitemapHeadbg {
  background-image: url(/assets/migrated/images/product/product-header.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.l-migrated .linkBlock {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media (min-width: 640px) {
  .l-migrated .linkBlock {
    display: block;
  }
}

.l-migrated .linkBlock__item {
  width: 100%;
  display: inline-block;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .linkBlock__item {
    width: auto;
  }
}

/*動画視聴キャンペーン*/
.l-migrated .moviecamp {
  padding: 28px 20px;
  color: #333;
  font-size: 1.5rem;
  background-color: #f3f8fa;
  border-radius: 5px;
}

.l-migrated .moviecamp__label {
  display: block;
  margin: 16px 0 20px;
}
/* ラジオボタンのエラーバブルは自身のinputに近い位置に出るため、通常時は詰めた間隔のまま、
   エラー表示中の選択肢だけ次の選択肢が隠れないよう余白を広げる */
.l-migrated .moviecamp__label:has(.formError) {
  margin-bottom: 48px;
}

.l-migrated .moviecamp__text {
  margin-top: 8px;
}

/*ismsロゴ*/
.l-migrated .isms-logo {
  width: 200px;
}

.l-migrated .isms-logo--news {
  transform: translateY(24px);
}

.l-migrated .isms-logo--about {
  margin-top: 20px;
}

@media (min-width: 960px) {
  .l-migrated .isms-logo--about {
    margin-top: 0;
  }
}

.l-migrated .isms-logo--pushlog {
  width: 240px;
  display: block;
  text-align: center;
  margin: 0 auto;
}

.l-migrated .isms-flex {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

@media (min-width: 960px) {
  .l-migrated .isms-flex {
    flex-wrap: nowrap;
    margin-bottom: 0;
  }
}

.l-migrated .isms-flex__item {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.7;
}

.l-migrated .isms-flex__item:first-of-type {
  width: 100%;
  margin-right: 0;
}

@media (min-width: 640px) {
  .l-migrated .isms-flex__item:first-of-type {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .l-migrated .isms-flex__item:first-of-type {
    width: 60%;
    margin-right: 40px;
  }
}

.l-migrated .isms-table {
  width: 100%;
  font-size: 1.4rem;
  border: 1px solid #333;
}

.l-migrated .isms-table th {
  width: 78px;
  padding: 4px;
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
  word-break: keep-all;
  border: 1px solid #333;
}

.l-migrated .isms-table td {
  padding: 4px;
  vertical-align: middle;
  border: 1px solid #333;
}

/* VIDEO ページ */
.l-migrated .videodata {
  width: 100%;
  min-height: 120px;
  padding: 5px 0;
}

.l-migrated .videodata__name {
  margin-bottom: 8px;
  font-size: 1.4rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-align: center;
}

.l-migrated .videodata__detail {
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  line-height: 1.7;
  text-align: center;
}

.l-migrated .ttlicon {
  display: inline-block;
  width: auto;
  height: 20px;
  margin: 0 0 2px 11px;
}

.l-migrated .dlicon {
  display: inline-block;
  width: auto;
  height: 30px;
  margin: 0 0 2px 11px;
}

.l-migrated .video-memo {
  width: 90%;
  max-width: 960px;
  margin: 0px 10px 30px 0px;
  color: #333;
  font-size: 1.2rem;
  text-align: left;
  letter-spacing: 0.02em;
  line-height: 1.7;
}

@media (min-width: 640px) {
  .l-migrated .video-memo {
    font-size: 1.4rem;
  }
}

.l-migrated .f3-box-bunner {
	padding-left: 48px;
	width: 754px;
}

.l-migrated .contact-campaign-outline {
  width: calc(100% - 20px);
  border: 5px solid #e3e4e8;
  outline: 1px solid #71737e;
  outline-offset: 2px;
  margin: 0 auto;
  padding: 35px 25px 25px 25px;
  text-align: center;
  position: relative;
  display: inline-block;
}

.l-migrated .external_links_icon {
	width: 16px;
	padding :0 0 5px 4px;
}
