@charset "UTF-8";
/* ==========================================================================
   Layout
   ========================================================================== */
/* GIG5上書き
   ----------------------------------------------------------------- */
#container {
  position: relative;
  overflow-x: hidden;
}

.main-contents .section-inner {
  max-width: 1100px;
}

.fmw-contents-full .section-inner {
  max-width: 1280px;
}

.main-contents .section + .section[class*=diff-bg-] .section-inner {
  padding-top: 56px !important;
}

@media (max-width: 768px) {
  .main-contents .section + .section[class*=diff-bg-] .section-inner {
    padding-top: 40px !important;
  }
}
.page-top {
  bottom: 15%;
}

.diff-color-a {
  color: #a30b1a !important;
}

em {
  font-style: normal;
}

/* FMWORLDナビゲーション
   ----------------------------------------------------------------- */
/*
 * 開くボタン
 */
.fmw-nav__open {
  margin: 10px 16px 0;
  padding-top: 3px;
  padding-bottom: 3px;
}

@media (min-width: 769px) {
  .fmw-nav__open {
    display: none;
  }
}
/*
 * 閉じるボタン
 */
.fmw-nav__close {
  position: absolute;
  z-index: 3000;
  top: 0;
  display: none;
  width: 16.7%;
  height: 16.7vw;
  text-indent: -9999px;
  pointer-events: none;
  background-image: url("/biz/fmv/img2019/common/btn_close.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 40%;
}

.fmw-nav.is-open + p .fmw-nav__close {
  display: block;
}

/*
 * ナビ本体
 */
.fmw-nav li {
  padding-left: 0;
}
.fmw-nav li::before {
  display: none;
}

@media (min-width: 769px) {
  .fmw-nav {
    position: relative;
    max-width: 1280px;
    margin: 30px auto 20px;
  }
  .fmw-nav::before {
    position: absolute;
    z-index: -1;
    left: calc(640px - 50vw);
    display: block;
    width: 100vw;
    height: 100%;
    content: '';
    background: #000;
  }
}
@media (max-width: 768px) {
  .fmw-nav {
    position: absolute;
    top: 0;
    right: -100%;
    width: 100%;
  }

  .fmw-nav__bg {
    position: fixed;
    z-index: 3000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    content: '';
    cursor: pointer;
    background: rgba(0, 0, 0, 0.4);
  }
}
/*
 * 親メニュー
 */
.fmw-nav > ul {
  background: #000;
}
.fmw-nav > ul > li > a {
  text-decoration: none;
  color: #fff;
}

.fmw-nav__hook--sp.toggle-hook {
  position: relative;
  cursor: pointer;
}

.fmw-nav__hook--sp.toggle-hook::before {
  position: absolute;
  top: 50%;
  right: 15px;
  display: block;
  width: 10px;
  height: 10px;
  margin-top: -6px;
  content: "";
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.is-open .fmw-nav__hook--sp.toggle-hook::before {
  transform: rotate(-45deg);
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}

@media (min-width: 769px) {
  .fmw-nav > ul {
    display: flex;
    width: 100%;
  }
  .fmw-nav > ul > li {
    width: 20%;
  }
  .fmw-nav > ul > li.is-open > a, .fmw-nav > ul > li:hover > a {
    color: #000;
    background: #eee;
    font-weight: bold;
  }
  .fmw-nav > ul > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 40px;
    padding: 0 30px 0 0.5em;
    cursor: pointer;
    text-align: center;
  }
}
@media (max-width: 768px) {
  .fmw-nav > ul {
    position: absolute;
    z-index: 3000;
    top: 0;
    right: 0;
    display: block;
    width: 83.3%;
    background: #000;
  }
  .fmw-nav > ul > li {
    width: 100%;
  }
  .fmw-nav > ul > li + li {
    border-top: 1px solid #fff;
  }
  .fmw-nav > ul > li > a {
    position: relative;
    display: block;
    padding: 10px 10px 10px 40px;
  }

  .fmw-nav__hook--sp.toggle-hook::before {
    top: 0;
    right: 0;
    width: auto;
    height: auto;
    margin-top: 0;
    transition: none;
    -webkit-transform: none;
    transform: none;
    border: none;
  }

  .is-open .fmw-nav__hook--sp.toggle-hook::before {
    transform: none;
    border: none;
  }

  .fmw-nav__hook--sp.toggle-hook::before, .fmw-nav__hook--sp::after, .fmw-nav__hook--sp::before {
    position: absolute;
    top: 20px;
    left: 10px;
    display: block;
    width: 20px;
    height: 2px;
    content: "";
    background: #fff;
  }
  .fmw-nav__hook--sp::after {
    left: 19px;
    width: 2px;
    height: 20px;
    margin-top: -9px;
  }
  .fmw-nav__hook--sp.is-open::after {
    display: none;
  }
}
/*
 * 子メニュー
 */
.fmw-nav__content {
  display: none;
  width: 100%;
  padding: 30px 45px;
  background: #eee;
}
.fmw-nav__content hr {
  display: block;
  height: 1px;
  margin: 2em 0;
  border: none;
  background: #969696;
}
.fmw-nav__content a {
  display: inline-block;
  padding-left: 21px;
  text-decoration: none;
}
.fmw-nav__content a::before {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: -5px 14px 0 -23px;
  content: "";
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
.fmw-nav__content a:hover {
  text-decoration: underline;
}

.fmw-nav__label {
  margin-bottom: 20px;
  font-size: 2rem;
  font-weight: bold;
}

.fmw-nav__label a {
  position: relative;
  padding-right: 30px;
}

.fmw-nav__label a::before {
  content: none;
}

.fmw-nav__label a::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  content: "";
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}

@media (min-width: 769px) {
  .fmw-nav__content {
    position: absolute;
    z-index: 1;
    left: 0;
  }

  .is-open .fmw-nav__content {
    z-index: 10;
  }
}
@media (max-width: 768px) {
  .fmw-nav__content {
    padding: 25px 30px;
  }
  .fmw-nav__content ul {
    padding-left: 20px;
  }
  .fmw-nav__content hr {
    margin: 25px 0;
  }
  .fmw-nav__content a {
    display: block;
  }

  .fmw-nav__label a {
    display: inline-block;
    padding-left: 0;
  }

  .fmw-nav__content__colspan > *:not(:first-child) {
    margin-top: 25px;
  }

  .fmw-nav__content__colspan--col2 > *:not(:first-child) {
    margin-top: 25px;
  }
    
}
/*
 * 小メニュー カラム連結
 */
@media (min-width: 769px) {
  .fmw-nav__content__inner--cols {
    display: flex;
    margin-right: -30px;
    margin-left: -30px;
  }
  .fmw-nav__content__inner--cols div:not(:first-child) {
    border-left: 1px solid #969696;
  }

  .fmw-nav__content__col1 {
    width: calc(100% / 3);
    padding: 0 30px;
  }
    
  .fmw-nav__content__col2 {
    width: calc(100% / 2);
    padding: 0 30px;
  }

  .fmw-nav__content__colspan {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% / 3 * 2);
  }
    
  .fmw-nav__content__colspan--col2 {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
    
  .fmw-nav__content__colspan .fmw-nav__content__col1 {
    width: 50%;
  }

  .fmw-nav__content__colspan .fmw-nav__content__col2 {
    width: 50%;
  }
    
  .fmw-nav__content__col1 + p {
    margin-top: 2em;
  }
    
  .fmw-nav__content__col2 + p {
    margin-top: 2em;
  }
}
@media (max-width: 768px) {
  .fmw-nav__content__inner--cols > div:not(:first-child) {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid #969696;
  }

  .fmw-nav__content__inner--cols--indent {
    padding-left: 10px;
  }
}
/*
 * 子メニュー カテゴリタイトル
 */
.fmw-nav__catttl {
  display: block;
  font-weight: bold;
}

@media (min-width: 769px) {
  .fmw-nav__catttl {
    margin-bottom: 1.5em;
    text-align: center;
  }
}
@media (max-width: 768px) {
  .fmw-nav__catttl {
    margin-bottom: 15px;
  }
}
/*
 * 余白区切り
 */
.fmv-nav__spacer {
  margin-top: calc(1.6em + 24px) !important;
}

/* 上部関連リンク
   ----------------------------------------------------------------- */
.fmw-relatedlinks {
  max-width: 1312px;
  margin: 20px auto 30px;
  padding: 0 16px;
}
.fmw-relatedlinks li {
  float: right;
  margin-left: 10px;
}
.fmw-relatedlinks::after {
  display: block;
  clear: both;
  content: '';
}
.fmw-relatedlinks + h1 {
  margin-top: 0 !important;
}

.fmw-relatedlinks__win10logo {
  margin-top: 8px;
}
.fmw-relatedlinks__win11logo {
  margin-top: 8px;
  clear: both;
}
.fmw-relatedlinks__fmvlogo {
    margin-top: 8px;
}
.fmw-relatedlinks-win li {
  float: left;
  margin-left: 10px;
}
h1 {
    clear: both;
}
@media (max-width: 768px) {
  .fmw-relatedlinks {
    margin-top: 10px;
    margin-bottom: 20px;
  }

  .fmw-relatedlinks__fmvlogo {
    clear: both;
    margin-bottom: 10px;
  }
  .fmw-relatedlinks__winlogo {
        clear: both;
  }
}
/* ==========================================================================
   Object - Component
   ========================================================================== */
/* セクション
   ----------------------------------------------------------------- */
.fmw-bg-r {
  color: #fff;
  background-color: #BD1B2B;
}
.fmw-bg-r .section-inner {
  padding-top: 56px !important;
}

@media (max-width: 768px) {
  .fmw-bg-r .section-inner {
    padding-top: 40px !important;
  }
}
/*
 * 画像背景
 */
.fmw-bg-img {
  position: relative;
  overflow: hidden;
}
.fmw-bg-img .section-inner {
  position: relative;
  z-index: 1;
}

.fmw-bg-img__img {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.fmw-bg-img__img img {
  display: block;
  margin: auto;
}

/* タイポグラフィー
   ----------------------------------------------------------------- */
/*
 * フォントサイズ
 */
.fmw-hdg--h2 {
  margin-bottom: 26px;
  font-size: 3.6rem;
}

@media (max-width: 480px) {
  .fmw-hdg--h2 {
    font-size: 2.8rem;
  }
}
.fmw-hdg-h3 {
  font-size: 2.4rem !important;
}

@media (max-width: 480px) {
  .fmw-hdg-h3 {
    font-size: 2rem !important;
  }
}
/*
 * リンク
 */
img[src*="/icon-window-01.png"],
img[src*="/icon-newwindow.gif"] {
  margin-left: 5px;
  vertical-align: middle;
}

/*
 * 見出し
 */
.hdg-b.fmw-hdg-center {
  max-width: 1100px;
  margin-right: auto;
  margin-bottom: 38px;
  margin-left: auto;
  text-align: center;
  font-size: 3.6rem;
}
.hdg-b.fmw-hdg-center::before {
  right: 0;
  margin: 0 auto;
}

.fmw-contents-full .hdg-b.fmw-hdg-center {
  max-width: 1280px;
}

@media (max-width: 1100px) {
  h1.hdg-b.fmw-hdg-center {
    margin-right: 16px;
    margin-left: 16px;
  }
}
@media (max-width: 480px) {
  .hdg-b.fmw-hdg-center {
    font-size: 2.8rem;
  }
}
.hdg-b.fmw-hdg-center + .section:not([class*="diff-bg-"]) .section-inner {
  padding-top: 0;
}

/*
 * リード文
 */
.fmw-lead {
  font-size: 1.9rem;
  line-height: 2;
}

/* ラベル
   ----------------------------------------------------------------- */
.fmw-label {
  display: inline-block;
  min-width: 8.5em;
  padding: 0 0.5em;
  text-align: center;
  border-radius: 4px;
  background-color: #eee;
  font-size: 1.3rem;
}

.fmw-label--a {
  background-color: #f7ccc9;
}

.fmw-label--b {
  background-color: #f4d5b0;
}

.fmw-label--c {
  background-color: #d4e3a7;
}

.fmw-label--d {
  background-color: #b4e1da;
}

.fmw-label--e {
  background-color: #c0d8ed;
}

.fmw-label--f {
  background-color: #d2d2e6;
}

.fmw-label--g {
  background-color: #ddd0dd;
}

.fmw-label--h {
  background-color: #f5d67a;
}

/* ボタン
   ----------------------------------------------------------------- */
/*
 * 小さいボタン
 */
.fmw-btn--small {
  padding: 6px 35px 6px 23px;
  font-size: 1.2rem;
}
.fmw-btn--small.btn-a::before, .fmw-btn--small.btn-b::before {
  border-top-width: 1px;
  border-right-width: 1px;
}

/*
 * さらに小さいボタン
 */
.fmw-btn--xsmall {
  padding: 3px 15px 3px 7px;
  font-size: 1.2rem;
}
.fmw-btn--xsmall.btn-a::before, .fmw-btn--xsmall.btn-b::before {
  right: 6px;
  border-top-width: 1px;
  border-right-width: 1px;
}

/* リスト
   ----------------------------------------------------------------- */
.list-accordion-a > li:first-child,
.list-news-a > li:first-child {
  border-top: 1px solid #c6c6c0;
}

/*
 * 強調太文字リスト
 */
.fmw-list--hdg {
  font-size: 2rem;
  font-weight: bold;
}
.fmw-list--hdg li {
  margin-top: 30px !important;
}
.fmw-list--hdg[class*=diff-col] li {
  margin-top: 18px !important;
}
.fmw-list--hdg span {
  display: block;
  margin-top: 10px;
  font-size: 1.4rem;
  font-weight: normal;
}

/*
 * 余白狭め
 */
.fmw-list--compressed li {
  margin-top: 0 !important;
}

/*
 * 余白広め
 */
.fmw-list--spacious li {
  margin-top: 30px !important;
}

/* テーブル
   ----------------------------------------------------------------- */
/*
 * 背景色
 */
.fmw-tbodyth,
.fmw-tbodyth td,
.fmw-tbodyth th {
  background-color: #dad9d6 !important;
}

.fmw-theadth,
.fmw-theadth td,
.fmw-theadth th {
  background-color: #c6c6c0 !important;
}

/*
 * 余白狭め
 */
.fmw-tbl--compressed {
  font-size: 1.4rem;
}
.fmw-tbl--compressed th {
  text-align: center !important;
  font-weight: bold !important;
}

.fmw-tbl--compressed td,
.fmw-tbl--compressed th {
  padding: 5px 8px;
  vertical-align: middle !important;
}

/* カラム分割
   ----------------------------------------------------------------- */
.lyt-col-a[class*=diff-col] {
  margin-bottom: -20px !important;
  margin-left: -20px;
}

.lyt-col-a[class*=diff-col] > * {
  padding-bottom: 20px;
  padding-left: 20px;
}

@media (max-width: 768px) {
  .list-link-a.diff-sp-col2 {
    display: flex;
    margin-left: -43px;
  }
  .list-link-a.diff-sp-col2 li {
    width: 50%;
    padding-left: 43px;
  }
}
/*
 * 余白広め
 */
.fmw-col--spacious.lyt-col-a[class*=diff-col] {
  margin-bottom: -40px !important;
  margin-left: -40px;
}

.fmw-col--spacious.lyt-col-a[class*=diff-col] > * {
  padding-bottom: 40px;
  padding-left: 40px;
}

/* 画像位置固定
   ----------------------------------------------------------------- */
hr + .lyt-item-a {
  margin-top: 34px;
}

@media only screen and (max-width: 480px) {
  hr + .lyt-item-a {
    margin-top: 28px;
  }
}
/*
 * モバイル時に画像を下に表示
 */
@media (max-width: 768px) {
  .lyt-item-a.fmw-is-img-b {
    display: block;
  }
  .lyt-item-a.fmw-is-img-b > * {
    display: block;
  }
  .lyt-item-a.fmw-is-img-b > .item {
    padding-top: 0;
  }
  .lyt-item-a.fmw-is-img-b > .img {
    padding-top: 14px;
  }
}
/* パネル
   ----------------------------------------------------------------- */
.fmw-panel {
  height: 100%;
  margin: 28px 0;
  padding: 30px;
  border: 1px solid #969696;
  background: #fff;
}
.fmw-panel > *:first-child {
  margin-top: 0;
  padding-top: 0;
}
.fmw-panel > *:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.fmw-panel > *:last-child li:last-child {
  margin-bottom: 0;
}

.col .fmw-panel {
  margin: 0;
}

/*
 * 注意喚起
 */
.fmw-panel--notice {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 60px;
  padding-left: 60px;
  color: #841718;
  border-width: 3px;
  border-color: #a30b1a;
}

@media (max-width: 1312px) {
  .fmw-panel--notice {
    margin-right: 16px;
    margin-left: 16px;
  }
}
@media (max-width: 768px) {
  .fmw-panel--notice {
    padding-right: 30px;
    padding-left: 30px;
  }
}
/*
 * NEWマーク
 */
.fmw-panel--new {
  position: relative;
}
.fmw-panel--new::before {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: inline-block;
  width: 110px;
  height: 30px;
  content: 'NEW';
  text-align: center;
  color: #fff;
  background: #A30B1A;
  font-size: 20px;
  line-height: 30px;
}

/*
 * パネル全体リンク
 */
.fmw-panel--link {
  padding: 0;
}
.fmw-panel--link:hover {
  border-color: #A30B1A;
}
.fmw-panel--link a {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  height: 100%;
  padding-right: 38px;
  transition: all 0.2s;
  text-decoration: none;
}
.fmw-panel--link a::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  content: url("/biz/fmv/img2019/common/icon_triangle_g.png");
  line-height: 1;
}
.fmw-panel--link a:hover {
  color: inherit;
}
.fmw-panel--link a:hover::after {
  content: url("/biz/fmv/img2019/common/icon_triangle_r.png");
}
.fmw-panel--link a:hover .fmw-panel__ttl {
  color: #A30B1A;
  border-left-color: #A30B1A;
}
.fmw-panel--link .fmw-panel__thumb {
  width: 50%;
  text-align: center;
}
.fmw-panel--link .fmw-panel__thumb:empty {
  width: 0;
  padding-top: 50%;
}
.fmw-panel--link .fmw-panel__thumb:empty + .fmw-panel__ttl {
  width: 100%;
}
.fmw-panel--link .fmw-panel__ttl {
  width: 50%;
  padding: 40px 20px 20px;
  border-left: 10px solid #DAD9D6;
  font-size: 2.2rem;
  font-weight: bold;
}

/* 対表示パネル
   ----------------------------------------------------------------- */
.fmw-pair {
  display: flex;
  margin: 28px 0;
  border: 1px solid #969696;
  background: #fff;
}

.fmw-pair__col {
  width: 50%;
  padding: 30px;
}
.fmw-pair__col > *:first-child {
  margin-top: 0;
  padding-top: 0;
}
.fmw-pair__col > *:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.fmw-pair__col > *:last-child li:last-child {
  margin-bottom: 0;
}
.fmw-pair__col:last-child {
  background-color: #eee;
}

@media (max-width: 768px) {
  .fmw-pair {
    display: block;
  }

  .fmw-pair__col {
    width: 100%;
  }
}
/* トピック
 * アイコン＋見出し＋説明文
   ----------------------------------------------------------------- */
.fmw-topic {
  text-align: center;
}

[class^="fmw-topic__ttl"] {
  margin: 20px 0 10px;
}

.fmw-topic__ttl--lg {
  font-size: 3rem;
}

.list-notes-a .mark img {
  max-width: none;
}

.fmw-topic__summary li::before {
  position: relative;
  top: -3px;
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 11px;
  content: "";
  border-radius: 50%;
  background: #fff;
}

/* アコーディオン
   ----------------------------------------------------------------- */
/*
 * ニュースリストアコーディオン
 */
.fmw-accordion--list-news .toggle-hook {
  color: #000 !important;
  font-size: 2.2rem;
}
.fmw-accordion--list-news .toggle-hook::after, .fmw-accordion--list-news .toggle-hook::before {
  top: 0.7em !important;
}
.fmw-accordion--list-news .toggle-content {
  padding-left: 0 !important;
}
.fmw-accordion--list-news .list-news-a > li:last-child {
  border-bottom: none;
}

/* 動画
   ----------------------------------------------------------------- */
.lyt-movie-a {
  max-width: 780px;
}

/* お問い合わせ
   ----------------------------------------------------------------- */
.fmw-type-tel--g .contact-inner::before {
  background-position: 0 -50px !important;
}

.fmw-type-form a {
  color: #a30b1a;
  border: 1px solid #a30b1a;
}
.fmw-type-form .contact-inner {
  padding-left: 40px !important;
}
.fmw-type-form .contact-inner::before {
  width: 31px;
  height: 30px;
  margin-top: -18px;
  background-image: url("/biz/fmv/img2019/common/icon_form.png") !important;
}

/* タブ
   ----------------------------------------------------------------- */
.tab-a .lists {
  height: auto;
  padding-top: 0;
  background: none;
}

.tab-a .tabs-a > .tab-panel,
.tab-c .tabs-c > .tab-panel {
  padding-right: 0;
  padding-left: 0;
}

@media (max-width: 768px) {
  .tab-a .tabs-a > .tab-panel {
    padding-right: 0;
    padding-left: 0;
  }
}
.tab-panel .section-inner {
  padding-right: 0;
  padding-left: 0;
}

.tab-panel > .section:first-child .section-inner,
.tab-panel > .u-sr:first-child + .section .section-inner {
  padding-top: 0;
}

.tab-panel > .section:last-child .section-inner {
  padding-bottom: 0;
}

.main-contents .tab-a:last-child {
  padding-bottom: 104px;
}

@media (max-width: 480px) {
  .main-contents .tab-a:last-child {
    padding-bottom: 24px;
  }
}
/*
 * 背景色
 */
.tab-panel .section[class*=diff-bg-] {
  position: relative;
}
.tab-panel .section[class*=diff-bg-]::before {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: calc(50% - 50vw);
  display: block;
  width: 100vw;
  content: '';
}

.tab-panel .section.diff-bg-d::before {
  background: #595959;
}

.tab-panel .section.diff-bg-f::before {
  background: #eee;
}

/*
 * タブサイズ
 */
.fmw-tab--2col .tab-list-a > li {
  width: 50%;
}

.fmw-tab--3col .tab-list-a > li {
  width: calc(100% / 3);
}

@media (max-width: 768px) {
  .fmw-tab--2col .tab-list-a > li,
  .fmw-tab--3col .tab-list-a > li {
    width: 100%;
  }
}
/* ==========================================================================
   Object - Project
   ========================================================================== */
/* Windows 10 Pro means business.ロゴ
 * .hdg-b.fmw-hdg-centerの直後に配置
   ----------------------------------------------------------------- */
.fmw-hdg-win10msg {
  max-width: 1132px;
  margin: -28px auto 38px;
  padding: 0 16px;
  text-align: right;
}
.fmw-hdg-win10msg + .section .section-inner {
  padding-top: 0;
}

/* 製品情報パネル
   ----------------------------------------------------------------- */
.fmw-panel--product {
  display: flex;
  padding-top: 50px;
  padding-right: 15px;
  padding-left: 15px;
}
.fmw-panel--product > * {
  padding: 0 15px;
}
.fmw-panel--product .fmw-panel__ttl {
  width: 21.5%;
}
.fmw-panel--product .fmw-panel__ttl h2,
.fmw-panel--product .fmw-panel__ttl h3,
.fmw-panel--product .fmw-panel__ttl h4,
.fmw-panel--product .fmw-panel__ttl h5 {
  margin-bottom: 10px;
  font-size: 4rem;
  line-height: 1.2;
}
.fmw-panel--product .fmw-panel__ttl__note {
  display: block;
  font-size: 16px;
  font-weight: normal;
}
.fmw-panel--product .fmw-panel__summary {
  display: flex;
  align-content: space-between;
  flex-wrap: wrap;
  width: 30.84%;
}
.fmw-panel--product .fmw-panel__summary > * {
  width: 100%;
}
.fmw-panel--product .fmw-panel__summary__icon {
  margin-top: 28px;
}
.fmw-panel--product .fmw-panel__summary__icon .fmw-label,
.fmw-panel--product .fmw-panel__summary__icon img {
  margin-top: 8px;
  margin-right: 5px;
}
.fmw-panel--product .fmw-panel__action {
  width: 21.5%;
}
.fmw-panel--product .fmw-panel__action a {
  width: 100%;
}
.fmw-panel--product .fmw-panel__action a + a {
  margin-top: 20px;
}

@media (max-width: 768px) {
  .fmw-panel--product {
    flex-wrap: wrap;
  }
  .fmw-panel--product .fmw-panel__thumb,
  .fmw-panel--product .fmw-panel__ttl {
    width: 50%;
  }
  .fmw-panel--product .fmw-panel__thumb {
    text-align: center;
  }
  .fmw-panel--product .fmw-panel__summary {
    width: 55.56%;
    margin-top: 15px;
  }
  .fmw-panel--product .fmw-panel__action {
    width: 44.44%;
    margin-top: 15px;
  }
}
/*
 * 2列表示の場合
 */
.diff-col2 .fmw-panel--product {
  align-content: flex-start;
  flex-wrap: wrap;
  height: 100%;
}
.diff-col2 .fmw-panel--product .fmw-panel__summary,
.diff-col2 .fmw-panel--product .fmw-panel__ttl {
  width: 100%;
}
.diff-col2 .fmw-panel--product .fmw-panel__summary {
  margin-bottom: 15px;
}
.diff-col2 .fmw-panel--product .fmw-panel__ttl h2,
.diff-col2 .fmw-panel--product .fmw-panel__ttl h3,
.diff-col2 .fmw-panel--product .fmw-panel__ttl h4,
.diff-col2 .fmw-panel--product .fmw-panel__ttl h5 {
  display: inline-block;
  margin-right: 40px;
  margin-bottom: 0;
}
.diff-col2 .fmw-panel--product .fmw-panel__ttl__note {
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
}
.diff-col2 .fmw-panel--product .fmw-panel__action,
.diff-col2 .fmw-panel--product .fmw-panel__thumb {
  width: 50%;
}
.diff-col2 .fmw-panel--product .fmw-panel__thumb:empty {
  padding-top: calc(50% - 30px);
}
.diff-col2 .fmw-panel--product .fmw-panel__thumb:empty + .fmw-panel__action {
  position: relative;
  left: -50%;
}

@media (max-width: 768px) {
  .diff-col2 .fmw-panel--product .fmw-panel__action,
  .diff-col2 .fmw-panel--product .fmw-panel__summary {
    margin-top: 0;
  }
  .diff-col2 .fmw-panel--product .fmw-panel__summary {
    margin-bottom: 15px;
  }
}
/* ソリューション製品パネル
   ----------------------------------------------------------------- */
.fmw-panel--solution {
  padding-top: 40px;
  padding-bottom: 60px;
}
.fmw-panel--solution::after {
  display: block;
  clear: both;
  content: '';
}
.fmw-panel--solution .fmw-panel__ttl {
  float: left;
  width: 50%;
  padding-right: 15px;
}
.fmw-panel--solution .fmw-panel__ttl h2,
.fmw-panel--solution .fmw-panel__ttl h3,
.fmw-panel--solution .fmw-panel__ttl h4,
.fmw-panel--solution .fmw-panel__ttl h5 {
  font-size: 3.8rem;
}
.fmw-panel--solution .fmw-panel__summary {
  float: left;
  width: 50%;
  margin-top: 10px;
  padding-right: 15px;
}
.fmw-panel--solution .fmw-panel__summary ul {
  padding-left: 0;
}
.fmw-panel--solution .fmw-panel__thumb {
  float: right;
  width: 50%;
  padding-left: 15px;
  text-align: center;
}

@media (max-width: 768px) {
  .fmw-panel--solution {
    padding: 30px;
  }
  .fmw-panel--solution .fmw-panel__summary,
  .fmw-panel--solution .fmw-panel__thumb,
  .fmw-panel--solution .fmw-panel__ttl {
    float: none;
    width: 100%;
  }
}
/* 事例パネル
   ----------------------------------------------------------------- */
.fmw-panel--case {
  padding: 20px;
  border: none;
  background-color: #EFEFEF;
}
.fmw-panel--case a {
  text-decoration: none;
}
.fmw-panel--case .fmw-panel__thumb {
  margin: -20px -20px 0;
  text-align: center;
}
.fmw-panel--case .fmw-panel__thumb img {
  width: 100%;
  max-width: none;
}
.fmw-panel--case .fmw-panel__ttl {
  margin: calc(20px - 0.3em) 0;
  font-size: 1.4rem;
  font-weight: bold;
}
.fmw-panel--case .fmw-panel__action {
  margin-bottom: 20px;
}
.fmw-panel--case .fmw-panel__action a::before {
  display: block !important;
}
.fmw-panel--case .fmw-panel__action a + a {
  margin-left: 5px;
}

.fmw-panel--case__company {
  margin-bottom: calc(20px - 0.3em);
  font-size: 1.3rem;
}

.fmw-panel--case__keyword {
  color: #666;
  font-size: 1.2rem;
}
.fmw-panel--case__keyword::before {
  display: block;
  content: 'キーワード';
}
.fmw-panel--case__keyword span {
  display: inline-block;
}
.fmw-panel--case__keyword span:not(:first-child)::before {
  content: '、';
}

/* カタログ・システム構成図
   ----------------------------------------------------------------- */
.fmw-catalog {
  overflow: hidden;
  height: 100%;
  padding: 0 20px 40px;
  color: #000;
  background: #fff;
}
.fmw-catalog h3 {
  margin: 20px 0 14px !important;
  font-size: 1.6rem;
}
.fmw-catalog h3.hdg-c::before {
  top: 0;
  height: 100%;
}
.fmw-catalog hr {
  margin: 20px 0;
}
.fmw-catalog .list-link-a {
  padding-left: 0;
  font-size: 1.5rem;
}

.fmw-catalog__ttl {
  display: table;
  width: calc(100% + 41px);
  height: 100px;
  margin: 0 -20px 20px;
  color: #fff;
  background: #000;
}
.fmw-catalog__ttl h2 {
  display: table-cell;
  padding: 10px 1em;
  text-align: center;
  vertical-align: middle;
  font-size: 1.9rem;
}

.fmw-catalog__ttl__note {
  display: block;
  font-size: 1.4rem;
}

.fmw-catalog--new .fmw-catalog__ttl {
  position: relative;
  margin-bottom: 50px;
}
.fmw-catalog--new .fmw-catalog__ttl::after {
  position: absolute;
  bottom: -30px;
  left: 0;
  display: inline-block;
  width: 110px;
  height: 30px;
  content: 'NEW';
  text-align: center;
  color: #fff;
  background: #A30B1A;
  font-size: 20px;
  line-height: 30px;
}

.fmw-catalog__items {
  font-size: 1.5rem;
}
.fmw-catalog__items li {
  min-height: 16px;
  padding-left: 24px;
  background: url("/biz/fmv/img2019/common/icon_pdf.png") no-repeat left 3px;
}
.fmw-catalog__items li + li {
  margin-top: 12px;
}
.fmw-catalog__items a {
  text-decoration: none;
}

.fmw-catalog__products {
  font-size: 1.4rem;
}

/*
 セキュリティ機能一覧表
-----------------------------------------------------------------------------*/
.tbl-scroll-a {
  overflow-x: auto;
  overflow-y: hidden;
}

.fmw-tbl--security {
  text-align: center;
}

.fmw-tbl--security__target {
  width: 40px !important;
}

.fmw-tbl--security__soft,
.fmw-tbl--security__use {
  width: 140px;
}

/*
 * 対応アイコン
 */
.fmw-support--custom,
.fmw-support--default,
.fmw-support--none,
.fmw-support--option,
.fmw-support--option2{
  display: inline-block;
  overflow: hidden;
  width: 14px;
  height: 14px;
  vertical-align: middle;
  text-indent: -99px;
  background-repeat: no-repeat;
  background-position: center;
}

.fmw-support--default {
  background-image: url("/biz/fmv/img2019/common/icon_circle_b.png");
}

.fmw-support--custom {
  background-image: url("/biz/fmv/img2019/common/icon_circle_w.png");
}

.fmw-support--none {
  background-image: url("/biz/fmv/img2019/common/icon_hyphen.gif");
}

.fmw-support--option {
  background-image: url("/biz/fmv/img2019/common/icon_triangle_b.png");
}
.fmw-support--option2{
  background-image: url("/biz/fmv/img2019/common/icon_square_b.png");	
}

/* 製品 詳細/仕様/外観 共通
   ----------------------------------------------------------------- */
/*
 * タブ
 */
.fmw-tab--product {
  border-bottom: none;
}
.fmw-tab--product .tab-panel {
  padding-bottom: 0 !important;
}
.fmw-tab--product + .section {
  margin-top: 0 !important;
}

/*
 * 製品ヘッダー
 */
.fmw-product-header {
  display: flex;
  max-width: 1280px;
  margin: 0 auto;
}

@media (max-width: 1280px) {
  .fmw-product-header {
    padding: 0 8px;
  }
}
@media (max-width: 1000px) {
  .fmw-product-header {
    padding: 0 16px;
  }
}
@media (max-width: 768px) {
  .fmw-product-header {
    flex-wrap: wrap;
  }
  .fmw-product-header > div {
    width: 100%;
    padding: 0;
  }
}
.fmw-product-header__ttls {
  width: 67.19%;
  padding-right: 20px;
}
.fmw-product-header__ttls span {
  display: block;
}

.fmw-product-header__thumb {
  width: 32.81%;
  padding-left: 20px;
  text-align: center;
}

.fmw-product-header__type {
  position: relative;
  margin-bottom: 20px;
  color: #706f67;
  border-bottom: 1px solid #9d9c95;
  font-size: 19px;
  font-weight: bold;
}
.fmw-product-header__type::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  display: block;
  width: 18.75%;
  min-width: 72px;
  height: 1px;
  content: "";
  background: #a30b1a;
}

.fmw-product-header__subttl {
  font-size: 24px;
  font-weight: bold;
}

.fmw-product-header__ttl {
  font-size: 80px;
  line-height: 1;
}

.fmw-product-header__summary {
  margin: 30px 0 10px;
  font-size: 19px;
}

/* Win10ロゴ */
.fmw-product-header--win10logo,
.fmw-product-header--win10wslogo,
.fmw-product-header--win10logo2021,
.fmw-product-header--win10wslogo2021
 {
  padding-bottom: 25px;
  background-repeat: no-repeat;
  background-position: right bottom;
}

.fmw-product-header--win10logo {
  background-image: url("/biz/fmv/img2019/common/logo_win10msg_2020.gif");
}

.fmw-product-header--win10wslogo {
  background-image: url("/biz/fmv/img2019/common/logo_win10msg_ws2.gif");
}

.fmw-product-header--win10logo2021 {
  background-image: url("/biz/fmv/img2019/common/logo_win10msg_2021.png");
}

.fmw-product-header--win10wslogo2021 {
  background-image: url("/biz/fmv/img2019/common/logo_win10msg_ws2021.png");
}

@media (max-width: 1280px) {
  .fmw-product-header--win10logo,
  .fmw-product-header--win10wslogo {
    background-position: calc(100% - 8px) bottom;
  }
}
@media (max-width: 1000px) {
  .fmw-product-header--win10logo,
  .fmw-product-header--win10wslogo {
    background-position: calc(100% - 16px) bottom;
  }
}
/* （ロゴ画像サイズ + 余白）以下の場合はフル幅表示 */
@media (max-width: 402px) {
  .fmw-product-header--win10logo {
    background-size: calc(100% - 32px) auto;
  }
}
@media (max-width: 653px) {
  .fmw-product-header--win10wslogo {
    background-size: calc(100% - 32px) auto;
  }
}
/*
 * 価格表
 */
.fmw-product-price {
  display: table;
  width: 100%;
  height: 70px;
  margin: 10px 0;
  border-collapse: collapse;
  font-size: 18px;
}
.fmw-product-price > * {
  display: table-cell;
  vertical-align: middle;
}
.fmw-product-price dt {
  width: 18.18%;
  padding: 10px 30px;
  text-align: center;
  border-top: 1px solid #8A8A8A;
  border-bottom: 1px solid #8A8A8A;
  border-left: 1px solid #8A8A8A;
  background: #D0CFCC;
}
.fmw-product-price dt span {
  display: inline-block;
}
.fmw-product-price dt + dd {
  padding: 10px 30px;
  border-top: 1px solid #8A8A8A;
  border-right: 1px solid #8A8A8A;
  border-bottom: 1px solid #8A8A8A;
}
.fmw-product-price dt + dd + dd {
  width: 37.27%;
  height: 100%;
}
.fmw-product-price dt + dd + dd span {
  display: block;
  height: 100%;
  padding-left: 10px;
}
.fmw-product-price dt + dd + dd .btn-b {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: left;
  font-weight: bold;
}

@media (max-width: 768px) {
  .fmw-product-price {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    height: auto;
    line-height: 1.3;
  }
  .fmw-product-price + .fmw-product-price {
    margin-top: 40px;
  }
  .fmw-product-price dt,
  .fmw-product-price dt + dd {
    display: flex;
    align-items: center;
    min-height: 70px;
  }
  .fmw-product-price dt {
    justify-content: center;
    width: 27.78%;
    padding-right: 0;
    padding-left: 0;
  }
  .fmw-product-price dt + dd {
    width: 72.22%;
  }
  .fmw-product-price dt + dd + dd {
    width: 100%;
    padding-top: 10px;
    text-align: center;
  }
  .fmw-product-price dt + dd + dd span {
    padding-left: 0;
  }
  .fmw-product-price dt + dd + dd .btn-b {
    max-width: 400px;
    margin: 0 auto;
  }
}
/* 製品詳細
   ----------------------------------------------------------------- */
.fmw-tab--product__index .section.diff-bg-d::before {
  top: -40px;
}
.fmw-tab--product__index hr {
  margin: 40px 0 !important;
}
.fmw-tab--product__index hr + * {
  margin-top: 40px !important;
}
.fmw-tab--product__index hr:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  .fmw-tab--product__index .section.diff-bg-d {
    margin-top: 34px;
  }
  .fmw-tab--product__index .section.diff-bg-d::before {
    top: -26px !important;
  }
}
/* 製品仕様
   ----------------------------------------------------------------- */
.fmw-tab--product__spec .tbl-a {
  table-layout: auto;
}
.fmw-tab--product__spec .tbl-a tbody .th,
.fmw-tab--product__spec .tbl-a tbody th {
  width: auto;
}
.fmw-tab--product__spec .tbl-a tbody td {
  text-align: center;
}
.fmw-tab--product__spec .tbl-a img {
  max-width: none;
}

.fmw-specnote {
  font-size: 1.4rem;
}
.fmw-specnote td {
  vertical-align: top;
}
.fmw-specnote td:first-child {
  padding-right: 12px;
}
.fmw-specnote tr + tr td {
  padding-top: 12px;
}
/* intel ロゴ
   ----------------------------------------------------------------- */
.intel_block {
    display: flex;
}
.intel_block_i {
    display: flex;
    text-align: center;
    margin: 0 auto;
}
.intel_img_t {
    margin-left: 20px;
    font-size: 14px;
}
.intel_i_t {
    margin-top: 10px;
    text-align: left;
}
@media (max-width: 768px){
.intel_block {
    display: block;
}
.intel_block_i {
    margin: 20px auto 0 ;
    width: 70%;
}
}

/* 注釈ツールチップ 下記より移植
 * https://www.fmworld.net/biz/fmv/lifebook/1907/tooltip/style.css
   ----------------------------------------------------------------- */
.tooltip {
  position: absolute;
  top: 0;
  left: -2000px;
  padding: 1px;
  background-color: #a30b1a;
}

.tooltip p {
  width: 300px;
  margin: 0;
  padding: 5px 7px;
  color: #a30b1a;
  background-color: #fffecb;
  font-size: 85%;
}

/*
 キービジュアル
 移植元：https://www.fujitsu.com/jp/imagesgig5/gig5-enterprisepostgres_tcm102-3978989_tcm102-2750236-32.css
-----------------------------------------------------------------------------*/
.lyt-keyvisual {
  position: relative;
  display: flex;
  overflow: hidden;
  flex-flow: column;
  margin-top: 12px;
  background: #fff;
}

.lyt-keyvisual.background-service {
  background: #eee;
}

.lyt-keyvisual .visual {
  min-height: 0;
}

@media (max-width: 768px) {
  .lyt-keyvisual .visual-inner {
    position: relative;
    overflow: hidden;
    height: 100vw;
    max-height: 300px;
  }
}
.lyt-keyvisual .visual img {
  position: absolute;
  left: 50%;
  display: inline-block;
  min-width: 100%;
  max-width: none;
  min-height: 100%;
  transform: translateX(-50%);
}

@media (max-width: 768px) {
  .lyt-keyvisual .visual img {
    top: 50%;
    height: 100%;
    min-height: auto;
    transform: translate(-50%, -50%);
  }
}
.lyt-keyvisual .contents {
  position: relative;
  left: 50%;
  display: flex;
  max-width: 1000px;
  height: 100%;
  min-height: 260px;
  transform: translateX(-50%);
}

.lyt-keyvisual .contents.diff-fullwidth {
  max-width: 1280px;
}

.lyt-keyvisual.h-small .contents {
  min-height: 360px;
}

.lyt-keyvisual.h-420 .contents {
  min-height: 420px;
}

.lyt-keyvisual.h-medium .contents {
  min-height: 500px;
}

.lyt-keyvisual.h-large .contents {
  min-height: 600px;
}

@media (max-width: 768px) {
  .lyt-keyvisual .contents,
  .lyt-keyvisual.h-420 .contents,
  .lyt-keyvisual.h-large .contents,
  .lyt-keyvisual.h-medium .contents,
  .lyt-keyvisual.h-small .contents {
    min-height: auto;
    padding-top: 0;
  }
}
.lyt-keyvisual .contents .contents-inner {
  display: flex;
  align-self: center;
  justify-content: space-between;
  width: 100%;
  height: auto;
  padding: 10px 0;
}

.lyt-keyvisual .contents.diff-pattern-top .contents-inner {
  align-self: flex-start;
  padding: 0;
}

.lyt-keyvisual .contents.diff-pattern-title-left .contents-inner {
  align-self: normal;
  min-height: 100%;
  padding: 0;
}

.lyt-keyvisual .slick-slide .contents.diff-pattern-title-left .contents-inner:before {
  display: flex;
  width: calc((1280px / 12) * 3);
  content: "";
}

@media (max-width: 768px) {
  .lyt-keyvisual .contents .contents-inner {
    flex-flow: column;
    padding: 16px;
  }
}
.lyt-keyvisual .titlearea {
  align-self: auto;
  padding: 10px 0;
}

@media (max-width: 768px) {
  .lyt-keyvisual .titlearea {
    margin-bottom: 16px;
    padding: 0;
  }
}
.lyt-keyvisual .titlearea .title {
  font-size: 3.2rem;
  line-height: 1.2;
}

.lyt-keyvisual .titlearea .subtitle {
  display: block;
  margin-top: 15px;
}

.lyt-keyvisual .contents .linkarea {
  display: flex;
  align-items: center;
  align-self: center;
}

.lyt-keyvisual .contents .imagesarea {
  display: flex;
  min-height: 0;
}

.lyt-keyvisual .contents .imagesarea .img {
  display: block;
  width: 100%;
}

@media (max-width: 768px) {
  .lyt-keyvisual .contents .imagesarea .img {
    text-align: center;
  }
}
/* 左コンテンツパターン */
.lyt-keyvisual .titlearea-wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.lyt-keyvisual .titlearea-wrap:after {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: calc((1280px / 12) * 9);
  padding: 20px;
  content: "";
}

.lyt-keyvisual .titlearea {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  width: calc((1280px / 12) * 3);
  min-height: 500px;
  padding: 20px;
  background: rgba(255, 255, 255, 0.8);
}

@media (min-width: 769px) {
  .lyt-keyvisual.h-small .titlearea {
    min-height: 360px;
  }
}
.lyt-keyvisual .titlearea .subtitle {
  margin-top: 0;
  font-size: 1.8rem;
}

.lyt-keyvisual .titlearea .title {
  margin-top: 15px;
  font-size: 3.2rem;
  font-weight: normal;
}

.lyt-keyvisual .titlearea .title span {
  padding: 0 8px;
  color: #a30b1a;
}

.lyt-keyvisual .titlearea .title2 {
  display: block;
  margin-top: 20px;
  font-weight: 700;
}

.lyt-keyvisual .titlearea .lead {
  display: block;
  margin-top: 30px;
  font-size: 1.4rem;
}

.lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: calc((1280px / 12) * 9);
  padding: 20px;
}

.lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea p {
  text-align: right;
  font-size: 4.8rem;
}

.lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea p > span {
  display: block;
  font-size: 3rem;
}

.lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea ul.lyt-btn-b {
  justify-content: flex-end;
}

@media (max-width: 768px) {
  .lyt-keyvisual .titlearea-wrap:after {
    display: none;
  }

  .lyt-keyvisual .contents .imagesarea .img {
    text-align: center;
  }

  .lyt-keyvisual .titlearea {
    display: block;
    width: 100%;
    min-height: auto;
    text-align: center;
  }

  .lyt-keyvisual .titlearea .title {
    margin-top: 10px;
  }

  .lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea {
    justify-content: center;
    width: 100%;
  }

  .lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea p {
    text-align: center;
    font-size: 8vw;
  }

  .lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea p span {
    font-size: 6vw;
  }

  .lyt-keyvisual .contents.diff-pattern-title-left .catchcopyarea .catchcopyarea-inner {
    width: 90vw;
  }
}
/* トップパターン */
.lyt-keyvisual .contents.diff-pattern-top .titlearea {
  align-self: auto;
  max-width: 640px;
  margin-top: 70px;
  padding: 0 70px;
  justify-self: right;
}

.lyt-keyvisual .contents.diff-pattern-top .subtitle {
  margin-top: 0;
}

.lyt-keyvisual .contents.diff-pattern-top .title {
  margin-top: 10px;
  font-size: 4.8rem;
}

.lyt-keyvisual .contents.diff-pattern-top .title .accent {
  padding: 0 20px;
  color: #a30b1a;
}

.lyt-keyvisual .contents.diff-pattern-top .title2 {
  margin-top: 24px;
  font-size: 2.2rem;
}

.lyt-keyvisual .contents.diff-pattern-top .lead {
  margin-top: 6px;
}

@media (max-width: 768px) {
  .lyt-keyvisual .contents.diff-pattern-top .titlearea {
    padding: 16px;
  }

  .lyt-keyvisual .contents.diff-pattern-top .titlearea {
    margin-top: 12px;
    text-align: center;
  }
}
/* Slider */
.lyt-keyvisual .slides {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 768px) {
  .lyt-keyvisual .slides {
    position: relative;
    padding-bottom: 60px;
  }
}
.lyt-keyvisual .slides .btn-b {
  font-size: 2.4rem;
}

@media only screen and (max-width: 480px) {
  .lyt-keyvisual .slides .btn-b {
    font-size: 2rem;
  }
}
.lyt-keyvisual .slick-slider .slick-list,
.lyt-keyvisual .slick-slider .slick-track {
  height: 100%;
}

@media (max-width: 768px) {
  .lyt-keyvisual .slick-slider .slick-list,
  .lyt-keyvisual .slick-slider .slick-track {
    height: auto;
  }
}
.lyt-keyvisual .slide-inner {
  position: relative;
  z-index: 1;
  overflow: hidden;
  height: 100%;
  outline: none;
}

.lyt-keyvisual .slick-dots {
  position: absolute;
  bottom: 35px;
  left: 50%;
  transform: translateX(-50%);
}

@media (max-width: 768px) {
  .lyt-keyvisual .slick-dots {
    bottom: 25px;
  }
}
.lyt-keyvisual .slick-dots li + li {
  margin-left: 14px;
}

.lyt-keyvisual .slick-dots li button::before {
  border: 2px solid #a30b1a;
  background: #fff;
}

.lyt-keyvisual .slick-dots li.slick-active button:before {
  border: none;
  background: #a30b1a;
}

.lyt-keyvisual + .tab-a {
  margin-top: 56px;
}

@media (max-width: 768px) {
  .lyt-keyvisual + .section {
    position: relative;
    margin-top: -100px;
  }

  .lyt-keyvisual + .tab-a {
    position: relative;
    margin-top: -60px;
  }
}

.main-contents .announce-inner {
	display: flex;
	margin: 0 auto;
	overflow: hidden;
	max-width:1280px;
	border: 1px solid #c6c6c0;
	padding: 15px 20px;
}

@media (max-width: 768px) {
	.main-contents .announce-inner {
		padding: 10px 20px;
	}
}
